EVOLUTION-NINJA
Edit File: MMG_model.php
<?php class MMG_model extends CI_Model { /* @package CodeIgniter*/ function __construct() { parent::__construct(); $CI = &get_instance(); $this->db2 = $CI->load->database('db2', TRUE); } //insert function insert($data,$table) { $this->db->insert($table,$data); return $this->db->insert_id(); } function insert2($data,$table) { $this->db2->insert($table,$data); return $this->db2->insert_id(); } public function insert_batch($table,$data) { $this->db->insert_batch($table,$data); return $this->db->insert_id(); } public function insert_batch2($table,$data) { $this->db2->insert_batch($table,$data); return $this->db2->insert_id(); } //get single row public function get_where_row($table,$where) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $query=$this->db->get(); return $query->row(); } public function get_where_row2($table,$where) { $this->db2->select('*'); $this->db2->from($table); $this->db2->where($where); $query=$this->db2->get(); return $query->row(); } public function get_all_data($table) { $this->db->select("*"); $this->db->from($table); $query=$this->db->get(); return $query->row(); } public function get_alltable_data($table) { $this->db->select("*"); $this->db->from($table); $query=$this->db->get(); return $query->result(); } //get multiple data public function get_where_result($table,$where) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $query=$this->db->get(); return $query->result(); } //get data result in desc order public function get_where_result_orderby($table,$where,$order_by) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $this->db->order_by($order_by,"DESC"); $query=$this->db->get(); return $query->result(); } //get data result in ASC order public function get_where_result_orderby_asc($table,$where,$order_by) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $this->db->order_by($order_by,"ASC"); $query=$this->db->get(); return $query->result(); } //get data row in desc order public function get_where_row_orderby($table,$where,$order_by) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $this->db->order_by($order_by,"DESC"); $query=$this->db->get(); return $query->row(); } //get data row in ASC order public function get_where_row_orderby_asc($table,$where,$order_by) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $this->db->order_by($order_by,"ASC"); $query=$this->db->get(); return $query->row(); } //update data with new data public function update($where,$table,$data) { $this->db->where($where); $this->db->update($table,$data); return $this->db->affected_rows(); } public function update2($where,$table,$data) { $this->db2->where($where); $this->db2->update($table,$data); return $this->db2->affected_rows(); } public function delete_data($table,$where) { $this->db->like($where); $this->db->delete($table); return $this->db->affected_rows(); } public function get_customer_details() { $this->db->select('A.id,A.name,A.phone,A.email,A.ref_person,B.doe,C.progress_name as followup_progress,D.reference_type,E.progress_name as sitevisit_progress,F.approved_with_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_details B','B.customer_id = A.id'); $this->db->join('mmg_followup_progress C','C.id = A.enquiry_status'); $this->db->join('mmg_reference D','D.id = A.ref_type'); $this->db->join('mmg_site_visiting_progress E','E.id = A.site_visiting_status'); $this->db->join('mmg_approved_customers F','F.customer_id = A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['doe'] = $value->doe; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; if($ref_person != '') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else { $data['ref_from'] = ''; } $data['followup_progress'] = $value->followup_progress; $data['sitevisit_progress'] = $value->sitevisit_progress; $data['approved_with_id'] = $value->approved_with_id; array_push($array, $data); } return $array; } public function get_customer_more_details($id) { $this->db->select('A.*,B.*'); $this->db->from('mmg_customer_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id','left'); $this->db->where('A.id',$id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $result = $query->row(); } public function get_emp_id() { $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.branch','MMG'); $this->db->order_by('A.emp_id','DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function get_emp_list($where) { $this->db->select('*'); $this->db->from('mmg_employees'); $this->db->where($where); $this->db->order_by('first_name','ASC'); $query = $this->db->get(); return $query->result(); } public function get_emp_salary_list() { $this->db->select('*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_salary B','B.emp_id=A.emp_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_customer_today_list($id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.created_at',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.created_at',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.created_at',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] =$value->nri_no; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $data['created_time'] = $datetime->format('H:i'); if(!empty($value->reference_type)) { $data['reference_type'] = $value->reference_type; } else { $data['reference_type'] = ''; } $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; //print_r($data);die(); array_push($array, $data); } return $array; } } public function get_all_result($table) { $this->db->select("*"); $this->db->from($table); $query=$this->db->get(); return $query->result(); } /* public function get_todays_followups_count($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $query = $this->db->get(); return $result = $query->num_rows(); } else { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $result = $query->num_rows(); } } else { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $result = $query->num_rows(); } } }*/ public function get_expired_followups_count($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $condition = ['Call Back','Site Visit','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->where_in('D.progress',$condition); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } $customer_id = array_unique($follow_customer_ids); $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $current_date = date('Y-m-d'); $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $this->db->where('A.created_by',$id); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_idss) { $this->db->where_not_in('A.id', $customer_idss); } $this->db->group_end(); $query = $this->db->get(); return $query->num_rows(); } else { $condition = ['Call Back','Site Visit','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where_in('D.progress',$condition); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } $customer_id = array_unique($follow_customer_ids); $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $current_date = date('Y-m-d'); $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_idss) { $this->db->where_not_in('A.id', $customer_idss); } $this->db->group_end(); $query = $this->db->get(); return $query->num_rows(); } } else { $condition = ['Call Back','Site Visit','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where_in('D.progress',$condition); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } $customer_id = array_unique($follow_customer_ids); $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $current_date = date('Y-m-d'); $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_idss) { $this->db->where_not_in('A.id', $customer_idss); } $this->db->group_end(); $query = $this->db->get(); return $query->num_rows(); } } } /* public function get_customer_sitevisiting_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); if(!empty($res)) { $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { if($value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); if(!empty($res)) { $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { if($value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); if(!empty($res)) { $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { if($value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } } }*/ public function get_total_callback_count($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->where('D.created_by',$id); $query = $this->db->get(); return $query->num_rows(); } else { $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); return $query->num_rows(); } } else { $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); return $query->num_rows(); } } } public function get_expired_callback_count($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('DATE(D.follow_date) <=',$yesterday); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->where('D.created_by',$id); $query = $this->db->get(); return $query->num_rows(); } else { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('DATE(D.follow_date) <=',$yesterday); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); return $query->num_rows(); } } else { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('DATE(D.follow_date) <=',$yesterday); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); return $query->num_rows(); } } } public function get_customer_sitevisit_list() { $this->db->select('A.*,B.progress_name,C.reference_type'); $this->db->from('mmg_customer A'); $this->db->join('mmg_site_visiting_progress B','B.id = A.site_visiting_status'); $this->db->join('mmg_reference C','C.id = A.ref_type'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $result = $query->result(); } public function get_agent_name() { $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department B','B.id=A.department_id'); $this->db->where('B.dept_name','Channel Partner'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_last_row_data($table,$order_by) { $this->db->select('*'); $this->db->from($table); //$this->db->where($where); $this->db->order_by($order_by,'DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function get_employee_with_department($id) { $this->db->select('A.*,B.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department B','B.id=A.department_id'); $this->db->where('A.emp_id',$id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res = $query->row(); return $res; } public function get_pay_slip($emp_id) { $this->db->select('*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_salary B','B.emp_id=A.emp_id'); $this->db->join('mmg_department C','C.id=A.department_id'); $this->db->join('mmg_districts D','D.id=A.district'); $this->db->where('A.emp_id',$emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query=$this->db->get(); return $query->row(); } public function get_gross_in_payment($emp_id) { $this->db->select('A.*,B.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_salary B','B.emp_id=A.emp_id'); $this->db->where('A.emp_id',$emp_id);//id given in rest_controller $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res=$query->row(); return $res; } public function employee_list($department_id) { $this->db->select('A.*,B.dept_name,C.layout_name'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department B','B.id=A.department_id'); $this->db->join('mmg_layouts C','C.id=A.project','left'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($department_id)) { if($department_id != "All") { $this->db->where('B.id',$department_id); } } $this->db->where('A.branch','MMG'); $this->db->order_by('ABS(A.full_name)',"ASC"); $query=$this->db->get(); return $query->result(); } public function latest_payment_details($type) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_payment A'); $this->db->where('DATE(A.effect_from) <=',$current_date); $this->db->where('A.employee_type',$type); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function get_site_list() { $this->db->select('A.*,B.layout_name'); $this->db->from('mmg_sites A'); $this->db->join('mmg_land_owner B','B.id=A.layout'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.status',''); $query=$this->db->get(); return $query->result(); } public function get_approved_site_list() { $this->db->select('A.*,B.layout_name,F.name'); $this->db->from('mmg_sites A'); $this->db->join('mmg_land_owner B','B.id=A.layout'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $query=$this->db->get(); return $query->result(); } public function get_booking_list() { $this->db->select('A.*,B.site_no'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_sites B','B.id=A.site_number'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_customer_booking_details($layout_id,$site_num) { $this->db->select('A.booking_id,A.site_dimension_north,A.site_dimension_east,A.site_dimension_south,A.site_dimension_west,B.id,B.name'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id=A.customer_id'); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.site_number',$site_num); $this->db->where('A.booking_status','BOOKED'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function get_plot_paymentlist_details() { $this->db->select('A.id,C.layout_name,B.name,D.site_no,E.booking_status'); $this->db->from('mmg_plot_payment A'); $this->db->join('mmg_customer B','B.id=A.customer_id'); $this->db->join('mmg_layouts C','C.id=A.layout_id'); $this->db->join('mmg_sites D','D.id=A.site_id'); $this->db->join('mmg_bookings E','E.booking_id=A.booking_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_contract_order($id) { $this->db->select('A.*,B.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department B','B.id=A.department_id'); $this->db->where('A.emp_id',$id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res = $query->row(); return $res; //print_r($res);die(); } public function get_where_count($table,$where) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $query = $this->db->get(); return $query->num_rows(); } public function get_limit_data($table,$where,$order_by) { $this->db->select('*'); $this->db->from($table); $this->db->where($where); $this->db->order_by($order_by,'DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function get_layoutname_sitenumber($customer_id) { $this->db->select('A.*,B.*,C.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_layouts B','B.id=A.layout_id'); $this->db->join('mmg_sites C',' C.id=A.site_number'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('A.booking_id','DESC'); $query = $this->db->get(); return $query->row(); } public function get_employee_attendance($date) { $cur_date = date('Y-m-d'); $current_date = date('d/m/Y',strtotime($cur_date)); $cur_time = date('H:i A'); $current_time = date("g:iA", strtotime($cur_time)); $this->db->select('A.emp_id,A.employee_id,A.first_name,A.last_name,B.entry_date,B.entry_time,B.entry_latitude,B.entry_longitude,B.exit_date,B.exit_time,B.entry_image,B.exit_image,A.login_time,A.login_ampm,A.logout_time,A.logout_ampm'); $this->db->from('mmg_employees A'); $this->db->join('mmg_employee_attendance B','A.emp_id=B.emp_id','left'); $this->db->where('B.entry_date',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.emp_id'); $this->db->order_by('A.first_name','ASC'); $query=$this->db->get(); $result = $query->result(); $present = array(); foreach ($result as $value) { $data['emp_id'] = $value->emp_id; $data['employee_id'] = $value->employee_id; $data['first_name'] = $value->first_name; $data['last_name'] = $value->last_name; $data['entry_date'] = $value->entry_date; $data['entry_time'] = $value->entry_time; $data['entry_latitude'] = $value->entry_latitude; $data['entry_longitude'] = $value->entry_longitude; $data['exit_date'] = $value->exit_date; $data['exit_time'] = $value->exit_time; $data['exit_image'] = $value->exit_image; $data['login_time'] = $value->login_time.':'.$value->login_ampm; $data['logout_time'] = $value->logout_time.':'.$value->logout_ampm; if($data['exit_date'] != '') { $data['exit_date'] = $data['exit_date']; } else { $data['exit_date'] = $current_date; } $entry_session = substr($data['entry_time'],-2); if($data['exit_time'] != '') { $exit_session = substr($data['exit_time'],-2); } else { $exit_session = substr($current_time,-2); } $entry_time = explode(":",$data['entry_time']); $entry_hrs = $entry_time[0]; if($data['entry_date'] == $data['exit_date']) { if($entry_session == 'am' || $entry_session == 'AM') { $entry_hrs = $entry_hrs; } else { $entry_hrs = $entry_hrs+12; } } else { if($entry_session == 'pm' || $entry_session == 'PM') { $entry_hrs = $entry_hrs; } else { $entry_hrs = $entry_hrs+12; } } $entry_mint = $entry_time[1]; $entry_min = substr($entry_mint,0,2); if($data['exit_time'] != '') { $exit_time = explode(":",$data['exit_time']); } else { $exit_time = explode(":",$current_time); } $exit_hrs = $exit_time[0]; if($data['entry_date'] == $data['exit_date']) { if($exit_session == 'am' || $exit_session == 'AM') { $exit_hrs = $exit_hrs; } else { $exit_hrs = $exit_hrs+12; } } else { if($exit_session == 'pm' || $exit_session == 'PM') { $exit_hrs = $exit_hrs; } else { $exit_hrs = $exit_hrs+12; } } $ent = $value->entry_time; $start_date = new DateTime($date); $since_start = $start_date->diff(new DateTime($ent)); $hours = $since_start->h; $minutes = $since_start->i; $sec = $since_start->s; $data['working'] = $hours.':'.$minutes.':'.$sec; $data['entry_image'] = $value->entry_image; $this->db->select('A.*'); $this->db->from('mmg_employee_attendance A'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.entry_date',$current_date); $this->db->order_by('A.id','ASC'); $query=$this->db->get(); $row_count = $query->num_rows(); if($row_count > 1) { $this->db->select('A.*'); $this->db->from('mmg_employee_attendance A'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.entry_status!=',"Logged_IN"); $this->db->where('A.entry_date',$current_date); $this->db->order_by('A.id','ASC'); $this->db->limit(1); $query=$this->db->get(); $asc = $query->row(); if(!empty($asc->exit_time)) { $exit = $asc->exit_time; } else { $exit = "00:00"; } $this->db->select('A.*'); $this->db->from('mmg_employee_attendance A'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.entry_date',$current_date); $this->db->where('A.entry_status !=',"Logged_OUT"); $this->db->order_by('A.id','DESC'); $this->db->limit(1); $query=$this->db->get(); $desc = $query->row(); if(!empty($desc->entry_time)) { $entry = $desc->entry_time; } else { $entry = "00:00"; } if($entry !="00:00" && $exit !="00:00") { $time1 = new DateTime($exit); $time2 = new DateTime($entry); $timediff = $time1->diff($time2); $hrs = $timediff->h; $min = $timediff->i; $sec = $timediff->s; $data['break'] = $hrs.':'.$min; } else { $data['break'] = "00:00"; } $data['break_logout'] = $exit; $data['break_login'] = $entry; } else { $data['break_logout'] = "00:00"; $data['break_login'] = "00:00"; $data['break'] = "00:00"; } array_push($present, $data); } return $present; } public function get_budget_list() { $this->db->select('A.*,C.type_of_work,D.material,E.unit_name'); $this->db->from('mmg_budget A'); $this->db->join('mmg_type_of_work C','C.id=A.type_of_work'); $this->db->join('mmg_material D','D.id=A.material'); $this->db->join('mmg_unit E','E.id=A.unit_total'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_edited_budget_results() { $this->db->select('A.*,B.type_of_work,C.material,D.unit_name'); $this->db->from('mmg_budget A'); $this->db->join('mmg_type_of_work B','B.id=A.type_of_work'); $this->db->join('mmg_material C','C.id=A.material'); $this->db->join('mmg_unit D','D.id=A.unit_total'); $this->db->where('A.parent_id !=','0'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function latest_payment_list() { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_payment A'); $this->db->where('DATE(A.effect_from) <=',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); $latest = array(); $i=0; foreach($result as $value) { $data['id'] = $value->id; $data['employee_type'] = $value->employee_type; //$data['pf_type'] = $value->pf_type; $data['pf'] = $value->pf; //$data['esi_type'] = $value->esi_type; $data['esi_above'] = $value->esi_above; $data['esi'] = $value->esi; //$data['prof_tax_type'] = $value->prof_tax_type; $data['prof_tax_above'] = $value->prof_tax_above; $data['prof_tax'] = $value->prof_tax; //$data['hra_type'] = $value->hra_type; $data['hra'] = $value->hra; //$data['allowance_type'] = $value->allowance_type; //$data['travel_allowance'] = $value->travel_allowance; $data['effect_from'] = $value->effect_from; if(!in_array($value->employee_type,$latest)) { array_push($latest, $data); $i++; if($i==2) { break; } } } return $latest; //print_r($latest);die(); } public function leave_applications() { $this->db->select('A.*,B.employee_id as emp_id_code,B.first_name,B.last_name,B.full_name'); $this->db->from('mmg_apply_leave A'); $this->db->join('mmg_employees B','B.emp_id=A.employee_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $this->db->select('C.*'); $this->db->from('mmg_employees C'); $this->db->where('C.emp_id',$value->handover_emp_id); $this->db->where('C.delete_status','ACTIVE'); $query=$this->db->get(); $row = $query->row(); $data['id'] = $value->id; $data['emp_id_code'] = $value->emp_id_code; $full_name = $value->first_name.' '.$value->last_name; $data['full_name'] = $full_name; $data['leave_date'] = $value->leave_date; $data['leave_type'] = $value->leave_type; $data['reason'] = $value->reason; $handover = $row->first_name.' '.$row->last_name; $data['handover'] = $handover; $data['note'] = $value->note; $data['approval'] = $value->approval; $data['created_on'] = $value->created_on; array_push($array, $data); } return $array; } public function get_attendance_list() { $this->db->select('A.*,B.employee_id,B.first_name,B.last_name'); $this->db->from('mmg_employees B'); $this->db->join('mmg_employee_attendance A','A.emp_id=B.emp_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['employee_id'] = $value->employee_id; $full_name = $value->first_name.' '.$value->last_name; $data['full_name'] = $full_name; $data['entry_date'] = $value->entry_date; $data['entry_time'] = $value->entry_time; $data['exit_time'] = $value->exit_time; array_push($array, $data); } return $array; } public function get_staffwise_attendance_list($employee_id) { $this->db->select('A.*,B.employee_id,B.first_name,B.last_name'); $this->db->from('mmg_employee_attendance A'); $this->db->join('mmg_employees B','B.emp_id=A.emp_id'); $this->db->where('B.emp_id',$employee_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['employee_id'] = $value->employee_id; $full_name = $value->first_name.' '.$value->last_name; $data['full_name'] = $full_name; $data['entry_date'] = $value->entry_date; $data['entry_time'] = $value->entry_time; $data['exit_time'] = $value->exit_time; array_push($array, $data); } return $array; } public function get_monthwise_attendance_list($month) { $this->db->select('A.*,B.employee_id,B.first_name,B.last_name'); $this->db->from('mmg_employee_attendance A'); $this->db->join('mmg_employees B','B.emp_id=A.emp_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $entry = $value->entry_date; $entry_data = explode("/", $entry); $entry_month = $entry_data[1]; if($entry_month == $month) { $data['id'] = $value->id; $data['employee_id'] = $value->employee_id; $full_name = $value->first_name.' '.$value->last_name; $data['full_name'] = $full_name; $data['entry_date'] = $value->entry_date; $data['entry_time'] = $value->entry_time; $data['exit_time'] = $value->exit_time; array_push($array, $data); } } return $array; } public function get_yearwise_attendance_list($year) { $this->db->select('A.*,B.employee_id,B.first_name,B.last_name'); $this->db->from('mmg_employee_attendance A'); $this->db->join('mmg_employees B','B.emp_id=A.emp_id'); //$this->db->where('YEAR(A.entry_date)',$year); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $entry = $value->entry_date; $entry_data = explode("/", $entry); $entry_year = $entry_data[2]; if($entry_year == $year) { $data['id'] = $value->id; $data['employee_id'] = $value->employee_id; $full_name = $value->first_name.' '.$value->last_name; $data['full_name'] = $full_name; $data['entry_date'] = $value->entry_date; $data['entry_time'] = $value->entry_time; $data['exit_time'] = $value->exit_time; array_push($array, $data); } } return $array; } public function annexure_approval_update($annexure_ids,$data,$table) { $this->db->select('*'); $this->db->from('mmg_annexure'); $this->db->where_in('id',$annexure_ids); $this->db->update($table,$data); return $this->db->affected_rows(); } public function insert_annexure($package_name,$annexure_ids,$data,$table) { $this->db->select('*'); $this->db->from('mmg_annexure_package'); $this->db->where_in('package_id',$package_name,'annexure_Category',$annexure_ids); $this->db->insert($table,$data); return $this->db->insert_id(); } public function get_package_name() { $this->db->select('A.*,B.package_name'); $this->db->from('mmg_annexure_package A'); $this->db->join('mmg_package B','B.id=A.package_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_menu_list() { $this->db->select('*'); $this->db->from('mmg_constructions_menu A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.parent_id','0'); $result = $this->db->get(); $result = $result->result(); $array = array(); foreach($result as $val) { $data['menu_id'] = $val->menu_id; $data['menu_name'] = $val->menu_name; $this->db->select('*'); $this->db->from('mmg_constructions_menu B'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.parent_id',$val->menu_id); $result1 = $this->db->get(); $res = $result1->result(); $data['submenu'] = $res; array_push($array, $data); } return $array; } public function edit_emp_details($employee_id) { $this->db->select('*'); $this->db->from('mmg_login A'); $this->db->where('A.user_id',$employee_id,'A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function get_emp_data($emp_id) { $this->db->select('*'); $this->db->from('mmg_employees A'); $this->db->where('A.emp_id',$emp_id); $query = $this->db->get(); return $query->row(); } public function get_where_in_employee($ids) { $this->db->select('email_id as email,phone'); $this->db->from('mmg_employees'); $this->db->where_in('emp_id',$ids); $this->db->where('delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_where_in_customer($ids) { $this->db->select('email,phone'); $this->db->from('mmg_customer'); $this->db->where_in('id',$ids); $this->db->where('delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } //get_layout_sites public function get_layout_sites($layout_name) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.layout',$layout_name); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_where_row_new_change($phone,$password) { $sql= "SELECT * FROM mmg_login WHERE BINARY password = '$password' and delete_status = 'ACTIVE' and phone = '$phone'"; $result = $this->db->query($sql); $data = $result->row(); return $data; } /*-----------------------------------From Trends------------------------------------*/ //Indent public function indent_details() { $this->db->select('A.*,C.consumed_at as consumed,D.layout_name as layout,E.site_no as site_home,F.name'); $this->db->from('mmg_indent A'); //$this->db->join('mmg_product_department B','B.id=A.department'); $this->db->join('mmg_location C','C.id=A.consumed_at','left'); $this->db->join('mmg_layouts D','D.id=A.layout_name','left'); $this->db->join('mmg_sites E','E.id=A.site_no','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.approval','NOT_APPROVED'); $this->db->where('A.tax','YES'); $this->db->group_by('sl_indent_no'); $this->db->order_by('id'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('B.delete_status','ACTIVE'); //$this->db->where('C.delete_status','ACTIVE'); //$this->db->where('D.delete_status','ACTIVE'); //$this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function subgrid_indent_data($indent_id) { $this->db->select('A.*'); $this->db->from('mmg_indent A'); $this->db->where('A.id',$indent_id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function subgrid_indent_details($sl_indent_no) { $this->db->select('A.*,B.product_group_name,C.unit_name,D.product_name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_types'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->join('mmg_products D','D.product_id=A.add_products'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.approval','NOT_APPROVED'); $this->db->where('A.tax','YES'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function approved_indent_details() { $this->db->select('A.*,C.consumed_at as consumed,D.layout_name as layout,E.site_no as site_home,F.name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_location C','C.id=A.consumed_at','left'); $this->db->join('mmg_layouts D','D.id=A.layout_name','left'); $this->db->join('mmg_sites E','E.id=A.site_no','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.approval','APPROVED'); $this->db->where('A.tax','YES'); $this->db->group_by('sl_indent_no'); $this->db->order_by('id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function indent_approved_subgrid($sl_indent_no) { $this->db->select('A.*,B.product_group_name,C.unit_name,D.product_name,E.name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_types'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->join('mmg_products D','D.product_id=A.add_products'); $this->db->join('mmg_login E','E.id=A.approved_by'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.approval','APPROVED'); $this->db->where('A.tax','YES'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function tax_free_indent_details() { $this->db->select('A.*,C.consumed_at as consumed,D.layout_name as layout,E.site_no as site_home,F.name'); $this->db->from('mmg_indent A'); //$this->db->join('mmg_product_department B','B.id=A.department'); $this->db->join('mmg_location C','C.id=A.consumed_at'); $this->db->join('mmg_layouts D','D.id=A.layout_name','left'); $this->db->join('mmg_sites E','E.id=A.site_no','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.approval','NOT_APPROVED'); $this->db->where('A.tax','NO'); $this->db->group_by('sl_indent_no'); $this->db->order_by('id'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); //$this->db->where('D.delete_status','ACTIVE'); //$this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function subgrid_tax_free_indent_details($sl_indent_no) { $this->db->select('A.*,B.product_group_name,C.unit_name,D.product_name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_types'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->join('mmg_products D','D.product_id=A.add_products'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.approval','NOT_APPROVED'); $this->db->where('A.tax','NO'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function approved_tax_free_indent_details() { $this->db->select('A.*,C.consumed_at as consumed,D.layout_name as layout,E.site_no as site_home,F.name'); $this->db->from('mmg_indent A'); //$this->db->join('mmg_product_department B','B.id=A.department'); $this->db->join('mmg_location C','C.id=A.consumed_at'); $this->db->join('mmg_layouts D','D.id=A.layout_name','left'); $this->db->join('mmg_sites E','E.id=A.site_no','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.approval','APPROVED'); $this->db->where('A.tax','NO'); $this->db->group_by('sl_indent_no'); $this->db->order_by('id'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); //$this->db->where('D.delete_status','ACTIVE'); //$this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function indent_approved_tax_free_subgrid($sl_indent_no) { $this->db->select('A.*,B.product_group_name,C.unit_name,D.product_name,E.name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_types'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->join('mmg_products D','D.product_id=A.add_products'); $this->db->join('mmg_login E','E.id=A.approved_by'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.approval','APPROVED'); $this->db->where('A.tax','NO'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_indent_no() { $this->db->select('A.*'); $this->db->from('mmg_indent A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function sl_indent_list($sl_indent_no) { $this->db->select('A.*,C.consumed_at as consumed,D.product_group_name,E.product_name'); $this->db->from('mmg_indent A'); //$this->db->join('mmg_product_department B','B.id=A.department'); $this->db->join('mmg_location C','C.id=A.consumed_at'); $this->db->join('mmg_product_group D','D.product_group_id=A.product_types'); $this->db->join('mmg_products E','E.product_id=A.add_products'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function product_list() { $this->db->select('A.*,B.product_group_name,C.unit_name,D.name'); $this->db->from('mmg_products A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_type'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->join('mmg_login D','D.id=A.product_created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_where_products($product_id) { $this->db->select('A.*,B.product_group_id,B.product_group_name,C.id as u_id,C.unit_name'); $this->db->from('mmg_products A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_type'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->where('A.product_id',$product_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query=$this->db->get(); return $query->row(); } public function indent_dept($indent_id) { $this->db->select('A.*,C.name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_login C','C.id=A.created_by'); $this->db->where('A.id',$indent_id); $this->db->where('A.approval','APPROVED'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->row(); $data['id'] = $result->id; $data['indent_no'] = $result->indent_no; $data['sl_indent_no'] = $result->sl_indent_no; $data['approved_by'] = $result->approved_by; $data['roles'] = $result->name; $data['add_products'] = $result->add_products; $indent_date = $result->created_at; $splitTimeStamp = explode(' ',$indent_date); $date = $splitTimeStamp[0]; $time = $splitTimeStamp[1]; $explode_date = explode('-',$date); $data['created_at'] = $explode_date[2].'-'.$explode_date[1].'-'.$explode_date[0]; $indent_approved_date = $result->approved_date; $splitdateStamp = explode(' ',$indent_approved_date); $appr_date = $splitdateStamp[0]; $appr_time = $splitdateStamp[1]; $explode_approved_date = explode('-',$appr_date); $data['approved_date'] = $explode_approved_date[2].'-'.$explode_approved_date[1].'-'.$explode_approved_date[0].':'.$appr_time; return $data; } public function indent_dept_not_approved($indent_id) { $this->db->select('A.*,C.name'); $this->db->from('mmg_indent A'); $this->db->join('mmg_login C','C.id=A.created_by'); $this->db->where('A.id',$indent_id); $this->db->where('A.approval','NOT_APPROVED'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->row(); $data['id'] = $result->id; $data['indent_no'] = $result->indent_no; $data['sl_indent_no'] = $result->sl_indent_no; $data['approved_by'] = $result->approved_by; $data['roles'] = $result->name; $data['add_products'] = $result->add_products; $indent_date = $result->created_at; $splitTimeStamp = explode(' ',$indent_date); $date = $splitTimeStamp[0]; $time = $splitTimeStamp[1]; $explode_date = explode('-',$date); $data['created_at'] = $explode_date[2].'-'.$explode_date[1].'-'.$explode_date[0]; $indent_approved_date = $result->approved_date; $splitdateStamp = explode(' ',$indent_approved_date); $appr_date = $splitdateStamp[0]; $appr_time = $splitdateStamp[1]; $explode_approved_date = explode('-',$appr_date); $data['approved_date'] = $explode_approved_date[2].'-'.$explode_approved_date[1].'-'.$explode_approved_date[0].':'.$appr_time; return $data; } public function indent_not_approved_preview($sl_indent_no) { $this->db->select('A.*,C.consumed_at as consumed,D.layout_name as layout,E.site_no as site_home,F.product_group_name,G.unit_name,H.product_name'); $this->db->from('mmg_indent A'); // $this->db->join('mmg_product_department B','B.id=A.department'); $this->db->join('mmg_location C','C.id=A.consumed_at'); $this->db->join('mmg_layouts D','D.id=A.layout_name','left'); $this->db->join('mmg_sites E','E.id=A.site_no','left'); $this->db->join('mmg_product_group F','F.product_group_id=A.product_types'); $this->db->join('mmg_unit G','G.id=A.unit_id'); $this->db->join('mmg_products H','H.product_id=A.add_products'); $this->db->where('A.approval','NOT_APPROVED'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.delete_status','ACTIVE'); // $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); // $this->db->where('D.delete_status','ACTIVE'); //$this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function indent_preview($sl_indent_no) { $this->db->select('A.*,C.consumed_at as consumed,D.layout_name as layout,E.site_no as site_home,F.product_group_name,G.unit_name,H.product_name'); $this->db->from('mmg_indent A'); //$this->db->join('mmg_product_department B','B.id=A.department'); $this->db->join('mmg_location C','C.id=A.consumed_at'); $this->db->join('mmg_layouts D','D.id=A.layout_name','left'); $this->db->join('mmg_sites E','E.id=A.site_no','left'); $this->db->join('mmg_product_group F','F.product_group_id=A.product_types'); $this->db->join('mmg_unit G','G.id=A.unit_id'); $this->db->join('mmg_products H','H.product_id=A.add_products'); $this->db->where('A.approval','APPROVED'); $this->db->where('A.sl_indent_no',$sl_indent_no); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); //$this->db->where('D.delete_status','ACTIVE'); //$this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function order_generate_po($ids) { $this->db->select('A.*,B.product_group_name,C.unit_name'); $this->db->from('mmg_products A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_type'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->where_in('A.product_id',$ids); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function max_select_years_purchase_no($table,$where) { $this->db->select_max('po_id'); $this->db->from($table); $this->db->where($where); $query = $this->db->get(); return $query->row(); } public function product_po_list() { $indent = 0; $this->db->select('A.*,B.layout_name,C.site_no,D.level_name,E.name,F.name as role'); $this->db->from('indent_po A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->join('mmg_level_master D','D.id=A.level_id','left'); $this->db->join('mmg_login E','E.id=A.created_by'); $this->db->join('mmg_login F','F.id=A.approved_by','left'); $this->db->group_by('A.po_id'); $this->db->order_by('id'); $this->db->where('A.indent_id',$indent); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function subgrid_po_data($p_id) { $this->db->select('A.*'); $this->db->from('indent_po A'); $this->db->where('A.id',$p_id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function subgrid_product_po_details($po_id) { $this->db->select('A.*,B.unit_name'); $this->db->from('indent_po A'); $this->db->join('mmg_unit B','B.id=A.unit_id'); $this->db->where('A.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function product_inward_purchase() { $indent = 0; $this->db->select('A.*,B.layout_name,C.site_no,D.godown_name,E.level_name,F.name'); $this->db->from('indent_po A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->join('mmg_sites D','D.id=A.godown','left'); $this->db->join('mmg_level_master E','E.id=A.level_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); //$this->db->where('A.approval','APPROVED'); $this->db->where('A.indent_id',$indent); $this->db->group_by('A.po_id'); $this->db->order_by('id'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['po_no'] = $value->po_no; $data['po_date'] = $value->po_date; $data['layout'] = $value->layout_name; $data['site'] = $value->site_no; $data['godown'] = $value->godown_name; $data['level'] = $value->level_name; $data['customer'] = $value->customer; $data['customer_address'] = $value->customer_address; $data['currency'] = $value->currency; $data['name'] = $value->name; $data['created_on'] = $value->created_on; $this->db->select('D.*'); $this->db->from('indent_po D'); //$this->db->join('mmg_vendor E','E.id=D.vendor_name'); $this->db->where('D.po_id',$value->po_id); $this->db->where('D.delete_status','ACTIVE'); $query1 = $this->db->get(); $result1 = $query1->result(); $status_array = array(); foreach ($result1 as $val) { $po_qty = $val->quantity; //$data['vendor_name'] = $val->vendor; $received = $val->received_goods; if($received < $po_qty) { $status = 'PARTIAL'; } else { $status = 'COMPLETED'; } array_push($status_array, $status); } if(in_array('PARTIAL', $status_array)) { $data['status'] = 'NOT_YET'; } else { $data['status'] = 'COMPLETED'; } array_push($array, $data); } return $array; } public function product_inward_purchase_subgrid($po_id) { $this->db->select('A.*,B.unit_name,C.name'); $this->db->from('indent_po A'); $this->db->join('mmg_unit B','B.id=A.unit_id'); $this->db->join('mmg_login C','C.id=A.created_by'); $this->db->where('A.po_id',$po_id); // $this->db->where('A.approval','APPROVED'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['product_name'] = $value->product_name; $data['product_type'] = $value->product_type; $data['quantity'] = $value->quantity; $data['received_goods'] = $value->received_goods; $data['unit_name'] = $value->unit_name; $data['unit_price'] = $value->unit_price; $data['inr_value'] = $value->inr_value; $data['cgst'] = $value->cgst; $data['sgst'] = $value->sgst; $data['igst'] = $value->igst; $data['total_value'] = $value->total_value; $data['name'] = $value->name; $data['created_on'] = $value->created_on; if($data['received_goods'] < $data['quantity']) { $data['subgrid_status'] = 'PARTIAL'; } else { $data['subgrid_status'] = 'COMPLETED'; } array_push($array, $data); } return $array; } public function inward_purchase_details($po_id) { $this->db->select('A.*,B.unit_name,C.layout_name,D.site_no,E.godown_name,F.level_name'); $this->db->from('indent_po A'); $this->db->join('mmg_unit B','B.id=A.unit_id'); $this->db->join('mmg_land_owner C','C.id=A.layout_id','left'); $this->db->join('mmg_sites D','D.id=A.site_id','left'); $this->db->join('mmg_sites E','E.id=A.godown','left'); $this->db->join('mmg_level_master F','F.id=A.level_id','left'); $this->db->where('A.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_po_row($p_id) { $this->db->select('A.*'); $this->db->from('indent_po A'); $this->db->where('A.id',$p_id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->row(); $data['po_no'] = $result->po_no; $data['po_id'] = $result->po_id; $data['currency'] = $result->currency; $data['note'] = $result->note; $data['comment'] = $result->comment; $data['gst_no'] = $result->gst_no; $data['terms_payment'] = $result->terms_payment; $data['bank_details'] = $result->bank_details; $inward_date = $result->po_date; $explode_date = explode('-',$inward_date); $data['po_date'] = $explode_date[2].'-'.$explode_date[1].'-'.$explode_date[0]; return $data; } public function get_where_result_inward($po_id) { $this->db->select('A.*,B.hsn_code,C.unit_name'); $this->db->from('indent_po A'); $this->db->join('mmg_products B','B.product_id=A.product_id'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); //$this->db->where('A.approval','APPROVED'); $this->db->where('A.po_id',$po_id); $query=$this->db->get(); return $query->result(); } public function get_credit_note_list() { $this->db->select('A.*,B.product_name,C.consumed_at,D.id as d_id ,D.name'); $this->db->from('mmg_credit_debit_notes A'); $this->db->join('mmg_products B','B.product_id=A.product'); $this->db->join('mmg_location C','C.id=A.location');/// $this->db->join('mmg_login D','D.id=A.created_by'); $this->db->where('A.note_type','Credit'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_debit_note_list() { $this->db->select('A.*,B.product_name,C.consumed_at,D.id as d_id ,D.name'); $this->db->from('mmg_credit_debit_notes A'); $this->db->join('mmg_products B','B.product_id=A.product'); $this->db->join('mmg_location C','C.id=A.location'); $this->db->join('mmg_login D','D.id=A.created_by'); $this->db->where('A.note_type','Debit'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function inward_credit_note_preview($p_id) { $this->db->select('A.*,B.product_name,C.consumed_at'); $this->db->from('mmg_credit_debit_notes A'); $this->db->join('mmg_products B','B.product_id=A.product'); $this->db->join('mmg_location C','C.id=A.location'); $this->db->where('A.id',$p_id); $this->db->where('A.note_type','Credit'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function inward_debit_note_preview($p_id) { $this->db->select('A.*,B.product_name,C.consumed_at'); $this->db->from('mmg_credit_debit_notes A'); $this->db->join('mmg_products B','B.product_id=A.product'); $this->db->join('mmg_location C','C.id=A.location'); $this->db->where('A.id',$p_id); $this->db->where('A.note_type','Debit'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } /* public function datewise_attendance_report($report_date,$to_date,$employee,$date) { $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { if($employee != "All") { $where .= " and A.emp_id='$employee'"; } } $where .= " and B.branch='MMG'"; $where .= " group by A.emp_id"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res= $result->result(); $report = array(); foreach ($res as $value) { $data['emp_id'] = $value->emp_id; $data['employee_id'] = $value->employee_id; $data['full_name'] = $value->full_name; $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { if($employee != "All") { $where .= " and A.emp_id='$employee'"; } } $where .= " and B.branch='MMG'"; $sql = $select.$from.$where; $result = $this->db->query($sql); $row_count= $result->num_rows(); if($row_count <= 0) { $data['entry_time'] = '00'; $data['break_time'] = '00'; $data['exit_time'] = '00'; $data['working'] = '00'; } else { $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { if($employee != "All") { $where .= " and A.emp_id='$employee'"; $where .= " order by A.id ASC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res1= $result->row(); } else { $where .= " and A.emp_id='$value->emp_id'"; $where .= " order by A.id ASC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res1= $result->row(); } } $datetime = new DateTime($date); $date = $datetime->format('H:i'); $current_time = date('h:i a', strtotime($date)); if(!empty($res1->entry_time)) { $entry_time=$res1->entry_time; } else { $entry_time = $current_time ; } if(!empty($res1->exit_time)) { $exit_time1=$res1->exit_time; } else { $exit_time1 = '00:00'; } $select = "select A.*"; $from = " from mmg_employee_attendance A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { if($employee != "All") { $where .= " and A.emp_id='$employee'"; $where .= " order by A.id DESC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res2= $result->row(); } else { $where .= " and A.emp_id='$value->emp_id'"; $where .= " order by A.id DESC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res2= $result->row(); } } if(!empty($res2->exit_time)) { $exit_time=$res2->exit_time; $working_logout = $exit_time; } else { $exit_time = '00:00' ; $working_logout = $current_time; } if(!empty($res2->entry_time)) { $entry_time2=$res2->entry_time; } else { $entry_time2 = $date; } $data['entry_time'] = $entry_time; $data['exit_time'] = $exit_time; $time1 = new DateTime($entry_time); $time2 = new DateTime($working_logout); $timediff = $time1->diff($time2); $hrs = $timediff->h; $min = $timediff->i; $sec = $timediff->s; $data['working'] = $hrs.':'.$min; if($row_count > 1) { if($exit_time1 == "00:00") { $entry_time3 = '00:00'; $time2 = new DateTime($entry_time3); } else { $time2 = new DateTime($entry_time2); } $time1 = new DateTime($exit_time1); $timediff2 = $time1->diff($time2); $hrs2 = $timediff2->h; $min2 = $timediff2->i; $sec2 = $timediff2->s; $data['break_time'] = $hrs2.':'.$min2; } else { $data['break_time'] = '00:00'; } } array_push($report, $data); } return $report; }*/ ////////////////////////////////////////////////////////////////////////////////// public function get_vendor_id() { $this->db->select('A.*'); $this->db->from('mmg_vendor A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $this->db->limit(1); $query = $this->db->get(); return $query->row(); } public function get_where_result_multilevel_budget() { $this->db->select('A.*'); $this->db->from('mmg_multilevel_budget A'); $this->db->group_by('A.insertion_count'); $this->db->order_by('A.row_number'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function multilevel_subgrid_data($row_id) { $this->db->select('A.*'); $this->db->from('mmg_multilevel_budget A'); $this->db->where('A.insertion_count',$row_id); $this->db->order_by('A.row_number'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_edit_data($row_id) { $this->db->select('A.*'); $this->db->from('mmg_multilevel_budget A'); $this->db->where('A.insertion_count',$row_id); $this->db->order_by('A.id'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_where_result_multilevel_budget_edited_data() { $this->db->select('A.*,B.unit_name'); $this->db->from('mmg_multilevel_budget_edited_data A'); $this->db->join('mmg_unit B','B.id = A.unit_quantity','left'); $this->db->group_by('A.table_heading'); $this->db->order_by('A.id',"DESC"); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function edited_multilevel_subgrid_data($row_id) { $this->db->select('A.*'); $this->db->from('mmg_multilevel_budget_edited_data A'); $this->db->where('A.m_id',$row_id); $this->db->order_by('A.id',"ASC"); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_sales_details() { $this->db->select('A.*,B.layout_name,C.site_no,D.name,E.payment_type'); $this->db->from('mmg_sales A'); $this->db->join('mmg_layouts B','B.id=A.layout_name_id','left'); $this->db->join('mmg_sites C','C.id=A.site_no_id','left'); $this->db->join('mmg_customer D','D.id=A.customer_name_id','left'); $this->db->join('mmg_payment_type_master E','E.id=A.payment_type_id','left'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_sales_detail_row($sales_id) { $this->db->select('A.*,B.layout_name,C.site_no,D.name,E.payment_type'); $this->db->from('mmg_sales A'); $this->db->join('mmg_layouts B','B.id=A.layout_name_id'); $this->db->join('mmg_sites C','C.id=A.site_no_id'); $this->db->join('mmg_customer D','D.id=A.customer_name_id'); $this->db->join('mmg_payment_type_master E','E.id=A.payment_type_id'); $this->db->where('A.id',$sales_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function stock_details() { $this->db->select('A.*,C.layout_name,D.name'); $this->db->from('indent_po A'); $this->db->join('mmg_stock B','B.po_id=A.id'); $this->db->join('mmg_land_owner C','C.id=A.layout_id'); $this->db->join('mmg_login D','D.id=A.created_by'); $this->db->group_by('A.po_id'); $this->db->where('A.subgrid_status','PARTIAL'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['po_no'] = $value->po_no; $data['layout'] = $value->layout_name; $stock_type = $value->godown_site; if($stock_type == 'Godown') { $this->db->select('E.*'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->godown); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $res = $query->row(); $data['site'] = $res->godown_name; } else if($stock_type == 'Site') { $this->db->select('E.*'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->site_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $res = $query->row(); $data['site'] = $res->site_no; } $data['name'] = $value->name; $data['created_on'] = $value->created_on; array_push($array, $data); } return $array; } public function po_row($p_id) { $this->db->select('A.*,B.layout_name,C.site_no,D.level_name'); $this->db->from('indent_po A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->join('mmg_level_master D','D.id=A.level_id','left'); $this->db->where('A.id',$p_id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function qc_details() { $this->db->select('A.*,B.layout_name,C.name'); $this->db->from('indent_po A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_login C','C.id=A.created_by'); $this->db->group_by('A.po_id'); $this->db->where('A.subgrid_status','PARTIAL'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['po_no'] = $value->po_no; $data['layout'] = $value->layout_name; $data['qc_approval'] = $value->qc_approval; $stock_type = $value->godown_site; if($stock_type == 'Site') { $this->db->select('D.*'); $this->db->from('mmg_sites D'); $this->db->where('D.id',$value->site_id); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res = $query->row(); $data['site'] = $res->site_no; } $data['name'] = $value->name; $data['created_on'] = $value->created_on; array_push($array, $data); } return $array; } public function view_qc_details($po_id) { $this->db->select('A.*,B.unit_name,C.layout_name,D.site_no,D.select_type,E.godown_name,F.level_name'); $this->db->from('indent_po A'); $this->db->join('mmg_unit B','B.id=A.unit_id'); $this->db->join('mmg_land_owner C','C.id=A.layout_id','left'); $this->db->join('mmg_sites D','D.id=A.site_id','left'); $this->db->join('mmg_sites E','E.id=A.godown','left'); $this->db->join('mmg_level_master F','F.id=A.level_id','left'); $this->db->where('A.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function view_stock_details($po_id) { $this->db->select('A.*,B.unit_name,C.layout_name,D.site_no,D.select_type,E.godown_name,F.level_name,G.balance_goods'); $this->db->from('indent_po A'); $this->db->join('mmg_stock G','G.po_id=A.id'); $this->db->join('mmg_unit B','B.id=A.unit_id'); $this->db->join('mmg_land_owner C','C.id=A.layout_id','left'); $this->db->join('mmg_sites D','D.id=A.site_id','left'); $this->db->join('mmg_sites E','E.id=A.godown','left'); $this->db->join('mmg_level_master F','F.id=A.level_id','left'); $this->db->where('A.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function fetch_site_godown($po_for,$layout_id) { if($po_for == 'Godown') { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.layout',$layout_id); $this->db->where('A.select_type',$po_for); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } else if($po_for == 'Site') { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->join('mmg_sales B','B.site_no_id=A.id','right'); $this->db->where('A.layout',$layout_id); $this->db->where('A.select_type',$po_for); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } } public function inventory_details() { $this->db->select('A.*,C.layout_name,D.godown_name,E.name'); $this->db->from('indent_po A'); $this->db->join('mmg_stock B','B.po_id=A.id'); $this->db->join('mmg_land_owner C','C.id=A.layout_id'); $this->db->join('mmg_sites D','D.id=A.godown'); $this->db->join('mmg_login E','E.id=A.created_by'); $this->db->group_by('A.po_id'); $this->db->where('A.subgrid_status','PARTIAL'); $this->db->where('A.godown_site','Godown'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function issue_inventory_details($po_id) { $this->db->select('A.*,B.layout_id,B.product_id,B.product_name,C.layout_name,D.godown_name'); $this->db->from('mmg_stock A'); $this->db->join('indent_po B','B.id=A.po_id'); $this->db->join('mmg_land_owner C','C.id=B.layout_id'); $this->db->join('mmg_sites D','D.id=B.godown'); $this->db->where('B.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function po_godown_row($p_id) { $this->db->select('A.*,B.layout_name,C.godown_name'); $this->db->from('indent_po A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id'); $this->db->join('mmg_sites C','C.id=A.godown'); $this->db->where('A.id',$p_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function preview_issue_details($po_id) { $this->db->select('A.*,C.product_name,D.site_no,E.level_name,F.name'); $this->db->from('mmg_issue_stock A'); $this->db->join('mmg_stock B','B.id=A.stock_id'); $this->db->join('indent_po C','C.id=B.po_id'); $this->db->join('mmg_sites D','D.id=A.issued_to_site_id'); $this->db->join('mmg_level_master E','E.id=A.level_id'); $this->db->join('mmg_login F','F.id=A.issued_by'); $this->db->where('C.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function preview_return_details($po_id) { $this->db->select('A.*,C.product_name,D.name'); $this->db->from('mmg_return_stock A'); $this->db->join('mmg_stock B','B.id=A.stock_id'); $this->db->join('indent_po C','C.id=B.po_id'); $this->db->join('mmg_login D','D.id=A.returned_by'); $this->db->where('C.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function last_trends_row($table,$where,$order_by) { $this->db2->select('*'); $this->db2->from($table); $this->db2->where($where); $this->db2->order_by($order_by,'DESC'); $this->db2->limit(1); $query = $this->db2->get(); return $query->row(); } public function po_product_list($p_type_id) { $this->db->select('A.*,B.product_group_name,C.unit_name,D.name'); $this->db->from('mmg_products A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_type','left'); $this->db->join('mmg_unit C','C.id=A.unit_id','left'); $this->db->join('mmg_login D','D.id=A.product_created_by','left'); if(!empty($p_type_id)) { $this->db->where('A.product_type',$p_type_id); } $this->db->where('A.delete_status','ACTIVE'); /* $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE');*/ $query = $this->db->get(); return $query->result(); } public function return_inventory_details($po_id) { $this->db->select('A.*,B.layout_id,B.product_id,B.product_name,C.layout_name,D.godown_name'); $this->db->from('mmg_stock A'); $this->db->join('indent_po B','B.id=A.po_id'); $this->db->join('mmg_land_owner C','C.id=B.layout_id'); $this->db->join('mmg_sites D','D.id=B.godown'); $this->db->where('B.po_id',$po_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_product_based_on_product_group($product_group_id) { $this->db2->select('A.*,B.product_group_name,C.unit_name,D.name'); $this->db2->from('mmg_products A'); $this->db2->join('mmg_product_group B','B.product_group_id=A.product_type'); $this->db2->join('mmg_unit C','C.id=A.unit_id'); $this->db2->join('mmg_login D','D.id=A.product_created_by'); $this->db2->where('A.product_type',$product_group_id); $this->db2->where('A.delete_status','ACTIVE'); $this->db2->where('B.delete_status','ACTIVE'); $this->db2->where('C.delete_status','ACTIVE'); $this->db2->where('D.delete_status','ACTIVE'); $this->db2->order_by('A.product_name','ASC'); $query = $this->db2->get(); return $query->result(); } public function get_product_based_unit($product_id) { $this->db->select('A.*,B.product_group_name,C.id,C.unit_name,D.name'); $this->db->from('mmg_products A'); $this->db->join('mmg_product_group B','B.product_group_id=A.product_type'); $this->db->join('mmg_unit C','C.id=A.unit_id'); $this->db->join('mmg_login D','D.id=A.product_created_by'); $this->db->where('A.product_id',$product_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function layout_customers($layout_id,$id,$customer_type) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { if($customer_type == "new_customer") { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->join('mmg_bookings B','B.customer_id != A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } else if($customer_type == "layout_customer") { $this->db->select('A.*,C.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_saledeed_details B','B.customer_id = A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=B.site_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('B.status','Approved'); $this->db->where('B.layout_id',$layout_id); $this->db->group_by('B.customer_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } else if($customer_type == "booking_layout") { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_name_id); } $this->db->select('B.*,C.site_no'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=A.site_number'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($customer_id)) { $this->db->where_not_in('A.customer_id',$customer_id); } $this->db->where('A.layout_id',$layout_id); $this->db->group_by('A.customer_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } else if($customer_type == "saled_layout") { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('B.*,C.site_no'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=A.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($customer_id)) { $this->db->where_not_in('A.customer_name_id',$customer_id); } $this->db->where('A.layout_name_id',$layout_id); $this->db->group_by('A.customer_name_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } } else { if($customer_type == "new_customer") { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->join('mmg_bookings B','B.customer_id != A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } else if($customer_type == "layout_customer") { $this->db->select('A.*,C.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_saledeed_details B','B.customer_id = A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=B.site_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('B.status','Approved'); $this->db->where('B.layout_id',$layout_id); $this->db->group_by('B.customer_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } else if($customer_type == "booking_layout") { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_name_id); } $this->db->select('B.*,C.site_no'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=A.site_number'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($customer_id)) { $this->db->where_not_in('A.customer_id',$customer_id); } $this->db->where('A.layout_id',$layout_id); $this->db->group_by('A.customer_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } else if($customer_type == "saled_layout") { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('B.*,C.site_no'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=A.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($customer_id)) { $this->db->where_not_in('A.customer_name_id',$customer_id); } $this->db->where('A.layout_name_id',$layout_id); $this->db->group_by('A.customer_name_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } } } else { if($customer_type == "new_customer") { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->join('mmg_bookings B','B.customer_id != A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } else if($customer_type == "layout_customer") { $this->db->select('A.*,C.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_saledeed_details B','B.customer_id = A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=B.site_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('B.status','Approved'); $this->db->where('B.layout_id',$layout_id); $this->db->group_by('B.customer_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } else if($customer_type == "booking_layout") { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_name_id); } $this->db->select('B.*,C.site_no'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=A.site_number'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($customer_id)) { $this->db->where_not_in('A.customer_id',$customer_id); } $this->db->where('A.layout_id',$layout_id); $this->db->group_by('A.customer_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } else if($customer_type == "saled_layout") { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('B.*,C.site_no'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_sites C','C.id=A.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($customer_id)) { $this->db->where_not_in('A.customer_name_id',$customer_id); } $this->db->where('A.layout_name_id',$layout_id); $this->db->group_by('A.customer_name_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $data['total_cust']= $query->num_rows(); $array = array(); foreach ($res as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['site_no']= $value->site_no; array_push($array,$data); } return $array; } } } } public function get_department_based_on_employee($employee_name) { $this->db->select('A.*,B.dept_name,id'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department B','A.department_id = B.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.emp_id',$employee_name); $query=$this->db->get(); return $query->row(); } public function get_site_based_on_layout($layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type','Site'); $this->db->where('A.layout',$layout_id); $this->db->order_by('ABS(A.site_no)','ASC'); $query=$this->db->get(); return $query->result(); } public function get_details_layout($layout_id) { $this->db->select('A.*'); $this->db->from('mmg_layouts A'); $this->db->where('A.delete_status','ACTIVE'); // $this->db->where('A.select_type','Site'); $this->db->where('A.land_owners',$layout_id); // $this->db->order_by('ABS(A.site_no)','ASC'); $query=$this->db->get(); return $query->row(); } public function get_customer_based_on_layout__site_get($layout_id,$site_id) { $this->db->select('A.*,B.name,B.id as customer_id'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_name_id',$layout_id); $this->db->where('A.site_no_id',$site_id); $query=$this->db->get(); return $query->result(); } public function get_datewise_customer_list($from_date,$to_date,$id) { $from = date('Y-m-d',strtotime($from_date)); $to = date('Y-m-d',strtotime($to_date)); $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('DATE(A.created_at) >=',$from); $this->db->where('DATE(A.created_at) <=',$to); $this->db->order_by('ABS(A.id)','DESC'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('DATE(A.created_at) >=',$from); $this->db->where('DATE(A.created_at) <=',$to); $this->db->order_by('ABS(A.id)','DESC'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('DATE(A.created_at) >=',$from); $this->db->where('DATE(A.created_at) <=',$to); $this->db->order_by('ABS(A.id)','DESC'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff'|| $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } public function get_monthwise_customer_list($month,$id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('MONTH(A.created_at)',$month); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('MONTH(A.created_at)',$month); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('MONTH(A.created_at)',$month); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff'|| $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference)) { $data['ref_person'] = $reference->first_name; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } public function get_yearwise_customer_list($year,$id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('YEAR(A.created_at)',$year); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('YEAR(A.created_at)',$year); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('YEAR(A.created_at)',$year); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['nri_no'] =$value->nri_no; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff'|| $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } public function get_customer_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->where('A.duplicate_cust',Null); $this->db->join('mmg_login F','F.id=A.created_by','left'); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $ref_person = $value->ref_person; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff'|| $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } public function get_where_result_customerfollowups($user_id) { $this->db->select('A.*,B.name,D.dept_name as depart_assigned,C.full_name as employee_assigned,E.layout_name,F.site_no'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned','left'); $this->db->join('mmg_department D','D.id = A.depart_assigned','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); /*$this->db->where('C.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); */ $query=$this->db->get(); return $query->result(); } public function get_where_result_siteviste($user_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array2 = array(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } return $array; } public function get_site_visiting_customer_name($customer_id) { $this->db->select('D.*,B.name,phone,email'); $this->db->from('mmg_customer_followup D'); $this->db->join('mmg_customer B','B.id = D.customer_id'); $this->db->where('D.id',$customer_id); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query = $this->db->get(); return $query->row(); } public function get_booking_customer_list($phone,$id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res3= $query->result(); if(!empty($res3)) { $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $customer_ids = []; $site_ids = []; $layout_ids = []; foreach ($res1 as $key => $value2) { array_push($site_ids,$value2->site_number); array_push($layout_ids,$value2->layout_id); array_push($customer_ids,$value2->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,G.created_at,G.time,I.name as created_by,J.layout_name,K.site_no,G.site_id,G.id as ids,A.id as customer_id,G.id as site_visit_id,G.layout_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_land_owner J','J.id=G.layout_id','left'); $this->db->join('mmg_sites K','K.id=G.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); if(!empty($phone)) { $this->db->where('A.phone',$phone); } if(!empty($customer_ids)) { $this->db->where_not_in('G.site_id',$site_ids); //$this->db->where_not_in('G.layout_id',$layout_ids); //$this->db->where_not_in('G.customer_id',$customer_ids); } $this->db->where('G.progress','Booking finalization'); $this->db->where('A.created_by',$id); $this->db->order_by('G.id','DESC'); $query = $this->db->get(); $res = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,G.created_at,G.time,I.name as created_by,J.layout_name,K.site_no,G.site_id,G.id as ids,A.id as customer_id,G.layout_id,G.id as site_visit_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_land_owner J','J.id=G.layout_id','left'); $this->db->join('mmg_sites K','K.id=G.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Booking finalization'); $this->db->where('A.created_by',$id); $this->db->where('G.delete_status','ACTIVE'); if(!empty($phone)) { $this->db->where('A.phone',$phone); } $this->db->order_by('G.id','DESC'); $query = $this->db->get(); $res = $query->result(); } foreach ($res as $key => $value) { if(!empty($value)) { $data['site_id'] = $value->site_id; $data['layout_id'] = $value->layout_id; $data['customer_id'] = $value->customer_id; $data['ids'] = $value->ids; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; if($value->created_at == "0000-00-00 00:00:00") { $data['created_time'] = ""; } else { $datetime = new DateTime($value->time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); } $datetime = new DateTime($value->time); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['site_visit_id'] = $value->site_visit_id; array_push($array, $data); } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $customer_ids = []; $site_ids = []; $layout_ids = []; foreach ($res1 as $key => $value2) { array_push($layout_ids,$value2->layout_id); array_push($site_ids,$value2->site_number); array_push($customer_ids,$value2->customer_id); } if(!empty($customer_ids)) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,G.created_at,G.time,I.name as created_by,J.layout_name,K.site_no,G.site_id,G.id as ids,A.id as customer_id,G.layout_id,G.id as site_visit_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_land_owner J','J.id=G.layout_id','left'); $this->db->join('mmg_sites K','K.id=G.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_not_in('G.site_id',$site_ids); //$this->db->where_not_in('G.layout_id',$layout_ids); //$this->db->where_not_in('G.customer_id',$customer_ids); $this->db->where('G.progress','Booking finalization'); $this->db->where('G.delete_status','ACTIVE'); if(!empty($phone)) { $this->db->where('A.phone',$phone); } $this->db->order_by('G.id','DESC'); $query = $this->db->get(); $res = $query->result(); //print_r($res);die(); foreach ($res as $key => $value) { if(!empty($value)) { $data['layout_id'] = $value->layout_id; $data['site_id'] = $value->site_id; $data['customer_id'] = $value->customer_id; $data['ids'] = $value->ids; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; if($value->created_at == "0000-00-00 00:00:00") { $data['created_time'] = ""; } else { $datetime = new DateTime($value->time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); } $datetime = new DateTime($value->time); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['site_visit_id'] = $value->site_visit_id; array_push($array, $data); } } return $array; } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,G.created_at,G.time,I.name as created_by,J.layout_name,K.site_no,G.site_id,G.id as ids,A.id as customer_id,G.layout_id,G.id as site_visit_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_land_owner J','J.id=G.layout_id','left'); $this->db->join('mmg_sites K','K.id=G.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); //$this->db->where_not_in('G.customer_id',$customer_ids); if(!empty($phone)) { $this->db->where('A.phone',$phone); } $this->db->where('G.progress','Booking finalization'); $this->db->order_by('G.id','DESC'); $query = $this->db->get(); $res = $query->result(); //print_r($res);die(); foreach ($res as $key => $value) { if(!empty($value)) { $data['layout_id'] = $value->layout_id; $data['customer_id'] = $value->customer_id; $data['ids'] = $value->ids; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; if($value->created_at == "0000-00-00 00:00:00") { $data['created_time'] = ""; } else { $datetime = new DateTime($value->time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); } $datetime = new DateTime($value->time); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['site_id'] = $value->site_id; $data['site_visit_id'] = $value->site_visit_id; array_push($array, $data); } } return $array; } } } else { //print_r('b');die(); $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $array = array(); $customer_ids = []; $site_ids = []; $layout_ids = []; foreach ($res1 as $key => $value2) { array_push($layout_ids,$value2->layout_id); array_push($site_ids,$value2->site_number); array_push($customer_ids,$value2->customer_id); } if(!empty($customer_ids)) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,G.created_at,G.time,I.name as created_by,J.layout_name,K.site_no,G.site_id,G.id as ids,A.id as customer_id,G.layout_id,G.id as site_visit_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_land_owner J','J.id=G.layout_id','left'); $this->db->join('mmg_sites K','K.id=G.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_not_in('G.site_id',$site_ids); //$this->db->where_not_in('G.layout_id',$layout_ids); //$this->db->where_not_in('G.customer_id',$customer_ids); $this->db->where('G.progress','Booking finalization'); $this->db->where('G.delete_status','ACTIVE'); if(!empty($phone)) { $this->db->where('A.phone',$phone); } $this->db->order_by('G.id','DESC'); $query = $this->db->get(); $res = $query->result(); foreach ($res as $key => $value) { if(!empty($value)) { $data['layout_id'] = $value->layout_id; $data['customer_id'] = $value->customer_id; $data['ids'] = $value->ids; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; if($value->created_at == "0000-00-00 00:00:00") { $data['created_time'] = ""; } else { $datetime = new DateTime($value->time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); } $datetime = new DateTime($value->time); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['site_id'] = $value->site_id; $data['site_visit_id'] = $value->site_visit_id; array_push($array, $data); } } return $array; } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,G.created_at,G.time,I.name as created_by,J.layout_name,K.site_no,G.site_id,G.id as ids,A.id as customer_id,G.layout_id,G.id as site_visit_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_land_owner J','J.id=G.layout_id','left'); $this->db->join('mmg_sites K','K.id=G.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); //$this->db->where_not_in('G.customer_id',$customer_ids); if(!empty($phone)) { $this->db->where('A.phone',$phone); } $this->db->where('G.progress','Booking finalization'); $this->db->order_by('G.id','DESC'); $query = $this->db->get(); $res = $query->result(); //print_r($res);die(); foreach ($res as $key => $value) { if(!empty($value)) { $data['layout_id'] = $value->layout_id; $data['customer_id'] = $value->customer_id; $data['ids'] = $value->ids; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; if($value->created_at == "0000-00-00 00:00:00") { $data['created_time'] = ""; } else { $datetime = new DateTime($value->time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); } $datetime = new DateTime($value->time); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['site_id'] = $value->site_id; $data['site_visit_id'] = $value->site_visit_id; array_push($array, $data); } } return $array; } } } } public function get_customer_details_for_booking($customer_id,$site_id,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_number',$site_id); //$this->db->where('A.layout_id',$layout_id); $query = $this->db->get(); $res= $result = $query->row(); if(!empty($res)) { $this->db->select('A.*,D.site_no,B.name,E.layout_name,F.land_type'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id','left'); $this->db->join('mmg_sites D','D.id = A.site_number','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_layouts F','F.land_owners = E.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_number',$site_id); //$this->db->where('A.layout_id',$layout_id); $query = $this->db->get(); return $result = $query->row(); } else { $this->db->select('A.*,E.layout_name,C.name,C.nri_no,C.phone,C.email,C.id as cust_ids,D.site_no,D.north_south,D.east_west,D.sq_mt,D.sq_ft,D.id as site_id,D.sq_mt,F.land_type'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer C','C.id = A.customer_id'); $this->db->join('mmg_sites D','D.id = A.site_id','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_layouts F','F.land_owners = E.id','left'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); //$this->db->where('A.layout_id',$layout_id); $query = $this->db->get(); return $query->row(); } } public function edit_customer_details($customer_id) { $this->db->select('A.*,E.dept_name,B.reference_type'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference B','B.id=A.ref_type','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->where('A.id',$customer_id); /*$this->db->where('E.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE');*/ $query = $this->db->get(); return $query->row(); } public function auto_complete_phone_based_customer($keyword) { $this->db->distinct(); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->like("phone", $keyword); $this->db->where('delete_status','ACTIVE'); $query= $this->db->get(); $result= $query->result(); $data = []; foreach($result as $row) { $data[]=$row->phone; } return $data; } public function get_customer_details_based_phoneno($phone_no_search) { if(!empty($phone_no_search)) { $this->db->select('A.*,E.dept_name,B.reference_type'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference B','B.id=A.ref_type','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->where('A.phone', $phone_no_search); $this->db->where('A.delete_status','ACTIVE'); $query= $this->db->get(); return $query->row(); } } public function get_customer_followup_callback_list($id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_callback_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site->site_no)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } } else { $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_callback_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); //$data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site->site_no)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } } } else { $this->db->select('D.*'); $this->db->from('mmg_callback_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_callback_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); //$data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ""; } } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site->site_no)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } } } return $array; } public function get_customer_followup_reject_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); $array2 = array(); $array3 = array(); $array4 = array(); $final_array = ''; if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Reject'); $this->db->where('D.created_by',$id); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $customer_ids = []; foreach ($res1 as $key => $value2) { array_push($customer_ids,$value2->customer_id); } if(!empty($customer_ids)) { $array = array(); foreach ($customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('D.progress','Reject'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res2= $query->result(); $customer_idss = []; foreach ($res2 as $key => $value2) { array_push($customer_idss,$value2->customer_id); } if(!empty($customer_idss)) { foreach ($customer_idss as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('D.progress','Finalized Reject'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array2, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res2= $query->result(); $customer_idss2 = []; foreach ($res2 as $key => $value2) { array_push($customer_idss2,$value2->customer_id); } if(!empty($customer_idss2)) { foreach ($customer_idss2 as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('D.progress','Finalized Reject'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array3, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_sales_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res2= $query->result(); $customer_idss2 = []; foreach ($res2 as $key => $value2) { array_push($customer_idss2,$value2->customer_id); } if(!empty($customer_idss2)) { foreach ($customer_idss2 as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('D.progress','Finalized Reject'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array4, $data); } } } $final_array = array_merge($array,$array2,$array3,$array4); return $final_array; } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $customer_ids = []; foreach ($res1 as $key => $value2) { array_push($customer_ids,$value2->customer_id); } if(!empty($customer_ids)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_ids); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->result(); $customer_idss = []; foreach ($res2 as $key => $value2) { array_push($customer_idss,$value2->customer_id); } if(!empty($customer_idss)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_idss); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array2, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->result(); $customer_idss2 = []; foreach ($res2 as $key => $value2) { array_push($customer_idss2,$value2->customer_id); } if(!empty($customer_idss2)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_idss2); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array3, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_sales_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->result(); $customer_idss2 = []; foreach ($res2 as $key => $value2) { array_push($customer_idss2,$value2->customer_id); } if(!empty($customer_idss2)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_idss2); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array4, $data); } } } $final_array = array_merge($array,$array2,$array3,$array4); return $final_array; } } else { $this->db->select('D.*'); $this->db->from('mmg_reject_followup D'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res1= $query->result(); $customer_ids = []; foreach ($res1 as $key => $value2) { array_push($customer_ids,$value2->customer_id); } if(!empty($customer_ids)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reject_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_ids); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->result(); $customer_idss = []; foreach ($res2 as $key => $value2) { array_push($customer_idss,$value2->customer_id); } if(!empty($customer_idss)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_idss); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array2, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->result(); $customer_idss2 = []; foreach ($res2 as $key => $value2) { array_push($customer_idss2,$value2->customer_id); } if(!empty($customer_idss2)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_idss2); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array3, $data); } } } $this->db->select('D.*'); $this->db->from('mmg_sales_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->result(); $customer_idss2 = []; foreach ($res2 as $key => $value2) { array_push($customer_idss2,$value2->customer_id); } if(!empty($customer_idss2)) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.description,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where_in('A.id',$customer_idss2); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array4, $data); } } } $final_array = array_merge($array,$array2,$array3,$array4); return $final_array; } } } public function get_customer_expired_callback_followup($id) { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*'); $this->db->from('mmg_callback_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('DATE(A.follow_date) <=',$yesterday); $this->db->where('A.created_by',$id); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result2 = $query->result(); $array = array(); $follow_customer_ids = []; foreach ($result2 as $key => $value1) { if($value1->follow_date < $yesterday) { array_push($follow_customer_ids,$value1->customer_id); } } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_callback_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->progress == 'Call Back' && $value->follow_date <= $yesterday) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; //$data['follow_date'] = $value->follow_date; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $data['description'] = $value->description; $data['ref_site_number'] = $value->ref_site_number; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ""; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } else { $this->db->select('A.*'); $this->db->from('mmg_callback_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('DATE(A.follow_date) <=',$yesterday); $this->db->group_by('A.customer_id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result2 = $query->result(); $array = array(); $follow_customer_ids = []; foreach ($result2 as $key => $value1) { if($value1->follow_date < $yesterday) { array_push($follow_customer_ids,$value1->customer_id); } } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_callback_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->progress == 'Call Back' && $value->follow_date <= $yesterday) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $data['description'] = $value->description; $data['ref_site_number'] = $value->ref_site_number; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ""; } } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } } else { $this->db->select('A.*'); $this->db->from('mmg_callback_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('DATE(A.follow_date) <=',$yesterday); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result2 = $query->result(); $array = array(); $follow_customer_ids = []; foreach ($result2 as $key => $value1) { if($value1->follow_date <= $yesterday) { array_push($follow_customer_ids,$value1->customer_id); } } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_callback_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $data['description'] = $value->description; $data['ref_site_number'] = $value->ref_site_number; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ""; } } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ""; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } } public function get_expired_customer_sitevisiting_list($id) { $yesterday = date("Y-m-d", strtotime( '-1 days' ) ); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res3= $query->row(); if(!empty($res3)) { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where('D.follow_date <=',$yesterday); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } } else { $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where('D.follow_date <=',$yesterday); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } } if(!empty($follow_customer_ids)) { $array = array(); foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->follow_date <= $yesterday && $value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; //$data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['description'] = $value->description; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where('D.follow_date <=',$yesterday); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { $array = array(); foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->follow_date <= $yesterday && $value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $data['ref_site_number'] = $value->ref_site_number; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['description'] = $value->description; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where('D.follow_date <=',$yesterday); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { $array = array(); foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { if($value->follow_date <= $yesterday && $value->progress == "Site Visit" && $value->progress != "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['ref_site_number'] = $value->ref_site_number; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['description'] = $value->description; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } } return $array; } } } public function get_customer_site_visit_followup($id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_sitevisit_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res9= $query->result(); if(!empty($res9)) { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_sitevisit_followup D'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } $customer_ids_uni = array_unique($customer_ids); if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sitevisit_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sitevisit_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if(!empty($ref_person)) { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } else { $this->db->select('D.*'); $this->db->from('mmg_sitevisit_followup D'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res9= $query->result(); if(!empty($res9)) { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_sitevisit_followup D'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } $customer_ids_uni = array_unique($customer_ids); if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sitevisit_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sitevisit_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('D.progress','Site Visit'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if(!empty($ref_person)) { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_sitevisit_followup D'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } $customer_ids_uni = array_unique($customer_ids); if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sitevisit_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('D.progress','Site Visit'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $follow_created_at = new DateTime($value->follow_created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['follow_created_at'] = date('d-m-Y', strtotime($date2)); $follow_date = new DateTime($value->follow_date); $date3 = $follow_date->format('d-m-Y'); $data['follow_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if(!empty($ref_person)) { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } } public function get_employee_based_channel_partners($channel_partner) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.dept_name',$channel_partner); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->row(); $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->where('A.department_id',$res->id); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } /*public function get_customer_followups_list($start,$limit,$sidx,$sord,$id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $query=$this->db->get(); $row2= $query->row(); if(!empty($row2)) { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $this->db->where_not_in('A.id',$customer_id); $this->db->order_by($sidx,$sord); if ($limit != '' && $start != '') { $this->db->limit($limit, $start); } $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $this->db->order_by($sidx,$sord); if ($limit != '' && $start != '') { $this->db->limit($limit, $start); } $query = $this->db->get(); $result = $query->result(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_id) { $this->db->where_not_in('A.id', $customer_id); } $this->db->group_end(); $query = $this->db->get(); $result = $query->result(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_id) { $this->db->where_not_in('A.id', $customer_id); } $this->db->order_by($sidx,$sord); if ($limit != '' && $start != '') { $this->db->limit($limit, $start); } $this->db->group_end(); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; //$data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created); $date2 = $datetime2->format('d-m-Y'); $data['created'] = date('d-m-Y', strtotime($date2)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress_name; array_push($array, $data); } return $array; } }*/ public function get_customer_followups_list($id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $query=$this->db->get(); $row2= $query->row(); if(!empty($row2)) { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust !=','Duplicate'); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust !=','Duplicate'); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust !=','Duplicate'); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_id) { $this->db->where_not_in('A.id', $customer_id); } $this->db->group_end(); $query = $this->db->get(); $result = $query->result(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust !=','Duplicate'); //$this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_id) { $this->db->where_not_in('A.id', $customer_id); } $this->db->group_end(); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; //$data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created); $date2 = $datetime2->format('d-m-Y'); $data['created'] = date('d-m-Y', strtotime($date2)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress_name; array_push($array, $data); } return $array; } } /*public function get_customer_sitevisiting_list_based_phone($phone,$id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); if(!empty($res3)) { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->where('D.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('A.phone',$phone); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('A.phone',$phone); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.progress','Booking finalization'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $customer_ids = []; foreach ($res as $key => $value) { array_push($customer_ids,$value->customer_id); } $customer_ids_uni = array_unique($customer_ids); $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.progress','Site Visit'); $this->db->where_not_in('D.customer_id',$customer_ids_uni); $this->db->where('D.delete_status','ACTIVE'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('A.phone',$phone); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } }*/ public function get_booking_followup_list($user_id,$site_id,$layout_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } return $array; } public function get_all_progress_customer_list($employee_name) { $this->db->select('A.*'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.emp_assigned',$employee_name); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result3 = $query->result(); $array = array(); if(!empty($result3)) { $site_customer = []; foreach ($result3 as $key => $value4) { array_push($site_customer,$value4->customer_id); } $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.employee_assigned',$employee_name); $this->db->where_not_in('A.customer_id',$site_customer); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result2 = $query->result(); $follow_customer_ids = []; foreach ($result2 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$values); $this->db->where('A.employee_assigned',$employee_name); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $value= $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; $data['follow_cust_id'] = $value->customer_id; $data['emp_assigned'] = $value->employee_assigned; array_push($array,$data); } } } } else { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.employee_assigned',$employee_name); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $result= $query->result(); foreach ($result as $key => $value) { if(!empty($value)) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; $data['follow_cust_id'] = $value->customer_id; $data['emp_assigned'] = $value->employee_assigned; array_push($array,$data); } } } $this->db->select('A.*'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.emp_assigned',$employee_name); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result2 = $query->result(); $follow_customer_ids = []; foreach ($result2 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { //$array2 = array(); foreach ($follow_customer_ids as $key => $values1) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$values1); $this->db->where('A.emp_assigned',$employee_name); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $value= $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; $data['follow_cust_id'] = $value->customer_id; $data['emp_assigned'] = $value->emp_assigned; array_push($array,$data); } } } return $array; } public function get_all_status_based_progress($customer_id,$employee_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.employee_assigned',$employee_id); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.emp_assigned',$employee_id); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array2 = array(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } return $array; } public function get_sales_customer_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->where('E.created_by',$id); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('J.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status',''); $this->db->where('A.created_by',$id); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('A.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['sale_id'] = $value->sale_id; array_push($array, $data); } } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('J.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status',''); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('A.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['sale_id'] = $value->sale_id; array_push($array, $data); } } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.site_no_id=G.site_id'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('J.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status',''); //$this->db->where('A.id',$value->customer_name_id); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('A.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $data['site_type'] = $value->site_type; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['sale_id'] = $value->sale_id; array_push($array, $data); } } return $array; } } } public function get_approved_sales_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->where('E.created_by',$id); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('G.id','DESC'); $this->db->where('A.created_by',$id); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('G.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('G.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } } /*public function get_customer_details_for_sales($customer_id) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_name_id',$customer_id); $query = $this->db->get(); $res= $result = $query->row(); if(!empty($res)) { $this->db->select('A.*,D.site_no,D.east,D.west,D.north,D.south,D.sq_mt,D.sq_ft,D.east_west,D.north_south,B.name,B.address,B.phone,B.email,E.layout_name,F.name as login_name,G.total_value,G.site_type,G.tsv,D.sq_mt,H.layouts_stamp_duty,H.per_sq_ft as layout_per_sq_ft'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id','left'); $this->db->join('mmg_sites D','D.id = A.site_no_id','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id','left'); $this->db->join('mmg_bookings G','G.customer_id = B.id','left'); $this->db->join('mmg_layouts H','H.id = A.layout_name_id','left'); $this->db->join('mmg_login F','F.id = A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_name_id',$customer_id); $query = $this->db->get(); return $result = $query->row(); } else { $this->db->select('A.*,C.name,C.nri_no,C.phone,C.email,C.id as cust_ids,D.site_no,D.north_south,D.east_west,D.sq_ft,G.total_value,E.layout_name,G.site_type,G.tsv,D.sq_mt,H.layouts_stamp_duty,H.per_sq_ft as layout_per_sq_ft'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_customer C','C.id = A.customer_id'); $this->db->join('mmg_sites D','D.id = A.site_id','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_bookings G','G.customer_id = C.id','left'); $this->db->join('mmg_layouts H','H.id = A.layout_id','left'); $this->db->where('A.customer_id',$customer_id); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); return $query->row(); } } */ public function get_customer_details_for_sales($customer_id,$site_id,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_name_id',$customer_id); $this->db->where('A.site_no_id',$site_id); //$this->db->where('A.layout_name_id',$layout_id); $query = $this->db->get(); $res= $result = $query->row(); if(!empty($res)) { $this->db->select('A.*,D.site_no,D.east,D.west,D.north,D.south,D.sq_mt,D.sq_ft,D.east_west,D.north_south,B.name,B.address,B.phone,B.email,E.layout_name,F.name as login_name,G.total_value,G.site_type,G.tsv,D.sq_mt,H.layouts_stamp_duty,H.per_sq_ft as layout_per_sq_ft,H.land_type'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id','left'); $this->db->join('mmg_sites D','D.id = A.site_no_id','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->join('mmg_bookings G','G.customer_id = B.id','left'); $this->db->join('mmg_login F','F.id = A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_name_id',$customer_id); $this->db->where('A.site_no_id',$site_id); // $this->db->where('A.layout_name_id',$layout_id); $query = $this->db->get(); return $result = $query->row(); } else { $this->db->select('A.*,C.name,C.nri_no,C.phone,C.email,C.id as cust_ids,D.site_no,D.north_south,D.east_west,D.sq_ft,G.total_value,H.layout_name,G.site_type,G.tsv,D.sq_mt,H.layouts_stamp_duty,H.per_sq_ft as layout_per_sq_ft,H.land_type'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_customer C','C.id = A.customer_id'); $this->db->join('mmg_sites D','D.id = A.site_id','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_bookings G','G.customer_id = C.id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); //$this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); return $query->row(); } } public function get_sales_followup_list($user_id,$site_id,$layout_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res3= $query->result(); $array = array(); foreach ($res3 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } return $array; } public function get_customer_expired_entry_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_idss) { $this->db->where_not_in('A.id', $customer_idss); } $this->db->group_end(); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); } } } else { $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $this->db->group_start(); $sale_ids_chunk = array_chunk($customer_id,25); foreach($sale_ids_chunk as $customer_idss) { $this->db->where_not_in('A.id', $customer_idss); } $this->db->group_end(); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('DATE(A.created_at) <=',$yesterday); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); } } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; //$data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_created_at = new DateTime($value->created); $date2 = $follow_created_at->format('d-m-Y'); $data['created'] = date('d-m-Y', strtotime($date2)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference)) { $data['ref_from'] = $reference->first_name; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress_name; array_push($array, $data); } return $array; } } public function get_payment_validation($cust_name,$site_number) { $this->db->query("delete from mmg_payment_details where customer_id='".$cust_name."' and site_id='".$site_number."'"); } public function get_customer_details_payment_details($customer_id) { $this->db->select('A.*,B.percentage,B.percentage_tax,B.total_payment_amount,B.total_payment_amount_tax,total_percentage,total_payment_cost,B.id as ids,B.level_id'); $this->db->from('mmg_civil_master A'); $this->db->join('mmg_payment_details B','B.level_id = A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.customer_id',$customer_id); $query=$this->db->get(); return $query->result(); } public function get_unbooked_customer_bookings_list($customer_id,$id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.customer_id','DESC'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res1= $query->result(); $array = array(); $customer_ids = []; $layout_ids = []; foreach ($res1 as $key => $value2) { array_push($layout_ids,$value2->layout_id); array_push($customer_ids,$value2->customer_id); } if(!empty($customer_ids)) { foreach ($customer_ids as $key => $value3) { $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where_in('D.customer_id',$value3); $this->db->where('D.created_by',$id); $this->db->order_by('D.site_id','DESC'); $this->db->limit(1); $query = $this->db->get(); $res1= $query->row(); if(!empty($res1)) { $data['progress'] = $res1->progress; } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,H.site_type,H.tsv,H.tcc,H.total_value,H.booking_date,H.booking_amount,H.created_at,I.name as created_by,J.layout_name,K.site_no,H.site_number,H.layout_id,H.booking_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_bookings H','H.customer_id=A.id'); $this->db->join('mmg_login I','I.id=H.created_by','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_in('H.site_number',$value3); // $this->db->where_in('H.layout_id',$layout_ids); $this->db->where('A.created_by',$id); $this->db->where('G.progress','Booking finalization'); $this->db->order_by('G.id','DESC'); $this->db->limit(1); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['site_type'] = $value->site_type; $data['tsv'] = $value->tsv; $data['tcc'] = $value->tcc; $data['total_value'] = $value->total_value; $data['booking_date'] = $value->booking_date; $data['booking_amount'] = $value->booking_amount; $data['created_by'] = $value->created_by; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_at); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; $data['booking_id'] = $value->booking_id; array_push($array, $data); } } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $array = array(); $customer_ids = []; $layout_ids = []; foreach ($res1 as $key => $value2) { array_push($customer_ids,$value2->site_number); array_push($layout_ids,$value2->layout_id); } if(!empty($customer_ids)) { foreach ($customer_ids as $key => $value3) { $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where_in('D.site_id',$value3); $this->db->order_by('D.site_id','DESC'); $this->db->limit(1); $query = $this->db->get(); $res1= $query->row(); if(!empty($res1)) { $data['progress'] = $res1->progress; } else { $data['progress'] = ""; } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,H.site_type,H.tsv,H.tcc,H.total_value,H.booking_date,H.booking_amount,H.created_at,I.name as created_by,J.layout_name,K.site_no,H.site_number,H.layout_id,H.booking_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_bookings H','H.customer_id=A.id'); $this->db->join('mmg_login I','I.id=H.created_by','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_in('H.site_number',$value3); //$this->db->where_in('H.layout_id',$layout_ids); $this->db->where('G.progress','Booking finalization'); $this->db->order_by('G.id','DESC'); $this->db->limit(1); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['site_type'] = $value->site_type; $data['tsv'] = $value->tsv; $data['tcc'] = $value->tcc; $data['total_value'] = $value->total_value; $data['booking_date'] = $value->booking_date; $data['booking_amount'] = $value->booking_amount; $data['created_by'] = $value->created_by; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_at); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_date = new DateTime($value->created_at); $date3 = $follow_date->format('d-m-Y'); $data['created_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; $data['booking_id'] = $value->booking_id; array_push($array, $data); } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_bookings D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->result(); $array = array(); $customer_ids = []; $layout_ids = []; foreach ($res1 as $key => $value2) { array_push($layout_ids,$value2->layout_id); array_push($customer_ids,$value2->site_number); } if(!empty($customer_ids)) { foreach ($customer_ids as $key => $value3) { $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where_in('D.site_id',$value3); $this->db->order_by('D.site_id','DESC'); $this->db->limit(1); $query = $this->db->get(); $res1= $query->row(); if(!empty($res1)) { $data['progress'] = $res1->progress; } else { $data['progress'] = ""; } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,H.site_type,H.tsv,H.tcc,H.total_value,H.booking_date,H.booking_amount,H.created_at,I.name as created_by,J.layout_name,K.site_no,H.site_number,H.layout_id,H.booking_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_bookings H','H.customer_id=A.id'); $this->db->join('mmg_login I','I.id=H.created_by','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_in('H.site_number',$value3); //$this->db->where_in('H.layout_id',$layout_ids); $this->db->where('G.progress','Booking finalization'); $this->db->order_by('G.id','DESC'); $this->db->limit(1); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['site_type'] = $value->site_type; $data['tsv'] = $value->tsv; $data['tcc'] = $value->tcc; $data['total_value'] = $value->total_value; $data['booking_date'] = $value->booking_date; $data['booking_amount'] = $value->booking_amount; $data['created_by'] = $value->created_by; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_at); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_date = new DateTime($value->created_at); $date3 = $follow_date->format('d-m-Y'); $data['created_date'] = date('d-m-Y', strtotime($date3)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; $data['booking_id'] = $value->booking_id; array_push($array, $data); } } } return $array; } } } public function get_new_sales_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.created_by',$id); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); $array3 = array(); foreach ($result as $key => $value) { array_push($array2,$value->site_no_id); array_push($array3,$value->layout_name_id); } if(!empty($array2)) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.progress,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $this->db->where_not_in('H.site_number',$array2); //$this->db->where_not_in('H.layout_id',$array3); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.progress,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); $array3 = array(); foreach ($result as $key => $value) { array_push($array2,$value->site_no_id); array_push($array3,$value->layout_name_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.progress,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_not_in('H.site_number',$array2); //$this->db->where_not_in('H.layout_id',$array3); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); $array3 = array(); foreach ($result as $key => $value) { array_push($array2,$value->site_no_id); array_push($array3,$value->layout_name_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,G.progress,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); if(!empty($array2)) { $this->db->where_not_in('H.site_number',$array2); //$this->db->where_not_in('H.layout_id',$array3); } $this->db->where('G.progress','Sales Final Costing'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { if($value->progress == 'Sales Final Costing') { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } } return $array; } } public function get_customer_details_for_enquiry($customer_id) { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } public function get_customer_details_for_finalized($customer_id) { $this->db->select('A.*'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } } public function get_customer_details_for_booking_list($customer_id,$site_id,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_booking_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } } public function get_layout_list_with_filter($layout_id) { $this->db->select('A.*,B.layout_name,F.name'); $this->db->from('mmg_sites A'); $this->db->join('mmg_land_owner B','B.id=A.layout'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->order_by('ABS(A.site_no)','ASC'); $this->db->where('B.id',$layout_id); $query=$this->db->get(); $res1= $query->result(); $array = array(); foreach ($res1 as $key => $value) { $data['id'] = $value->id; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['facing'] = $value->facing; $data['site_type'] = $value->site_type; $data['remarks'] = $value->remarks; $data['north'] = $value->north; $data['north_mtrs'] =$value->north_mtrs; $data['south'] = $value->south; $data['south_mtrs'] = $value->south_mtrs; $data['east'] = $value->east; $data['east_mtrs'] = $value->east_mtrs; $data['west'] = $value->west; $data['west_mtrs'] = $value->west_mtrs; $data['sq_mt'] = $value->sq_mt; $data['sq_ft'] = $value->sq_ft; $data['name'] = $value->name; $data['created_on'] = $value->created_on; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_date = new DateTime($value->created_on); $date3 = $follow_date->format('d-m-Y'); $data['created_date'] = date('d-m-Y', strtotime($date3)); array_push($array, $data); } return $array; } public function get_customer_details_for_sales_list($customer_id,$site_id,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sales_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } } public function get_sub_group_list() { $this->db->select('A.*,B.group_name'); $this->db->from('mmg_sub_group A'); $this->db->join('mmg_group_master B','B.id=A.group_id','left'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_godown_list() { $this->db->select('A.*,B.layout_name'); $this->db->from('mmg_sites A'); $this->db->join('mmg_land_owner B','B.id=A.layout'); $this->db->where('A.select_type','Godown'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_site_purchase_site_count($site_purchse,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); //$this->db->where('A.land_type',$site_purchse); $this->db->where('A.layout',$layout_id); $query = $this->db->get(); $data['total_site'] = $query->num_rows(); $res= $query->result(); $total_ft = 0; foreach ($res as $key => $value) { $total_ft+= $value->sq_ft; } $data['total_sq_ft'] = $total_ft; return $data; } public function get_land_development_count($land_development,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); $this->db->where('A.layout',$layout_id); $query = $this->db->get(); $data['total_site'] = $query->num_rows(); $res= $query->result(); $total_ft = 0; foreach ($res as $key => $value) { $total_ft+= $value->sq_ft; } $data['total_sq_ft'] = $total_ft; return $data; } public function get_employee_under_customers($employee,$from_date,$to_date) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $query = $this->db->get(); $res= $query->row(); if(!empty($from_date)) { $from = date('Y-m-d',strtotime($from_date)); } else { $from = ""; } if(!empty($from_date)) { $to = date('Y-m-d',strtotime($to_date)); } else { $from = ""; } $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); //$this->db->group_by('A.customer_id'); $result = $this->db->get(); $data['customer_followup']=$result->num_rows(); $folo_cust=$result->result(); $followup_cu_id = []; if(!empty($folo_cust)) { foreach ($folo_cust as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $data['emp_id'] = $employee; $data['from_date'] = $from_date; $data['to_date'] = $to_date; $this->db->select('A.*'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $result = $this->db->get(); $data['site_visit']=$result->num_rows(); $folo_site=$result->result(); $site_cu_id = []; if(!empty($folo_site)) { foreach ($folo_site as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $this->db->select('A.*'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $result = $this->db->get(); $data['booking']=$result->num_rows(); $folo_booki=$result->result(); $booking_cu_id = []; if(!empty($folo_booki)) { foreach ($folo_booki as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $this->db->select('A.*'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $result = $this->db->get(); $data['sales']=$result->num_rows(); $folo_sale=$result->result(); if(!empty($folo_sale)) { foreach ($folo_sale as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $this->db->select('B.*,A.id as login_id'); $this->db->from('mmg_login A'); $this->db->join('mmg_customer B','B.created_by = A.id'); $this->db->join('mmg_department C','C.id = A.department','left'); if($employee !='') { $this->db->where('A.user_id',$employee); } $this->db->where('A.delete_status','ACTIVE'); if(!empty($followup_cu_id)) { $this->db->where_not_in('B.id',$followup_cu_id); } $query = $this->db->get(); $res1 = $query->result(); $total_cust = array(); foreach ($res1 as $key => $value) { $select = "select A.*"; $from = " from mmg_customer A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; if(!empty($from_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') >= STR_TO_DATE('$from_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } $where .= " and A.created_by='$value->created_by'"; $where .= " and A.id='$value->id'"; $where .= " and A.created_at<='$yesterday'"; $sql = $select.$from.$where; $result = $this->db->query($sql); $data3['expiryss']=$result->num_rows(); array_push($total_cust,$data3); } $total = 0; foreach($total_cust as $key => $value) { $total+=$value['expiryss']; } $data['expiry']= $total; return $data; } public function get_employee_under_followup_customers($employee,$from_date,$to_date) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $query = $this->db->get(); $res= $query->row(); if(!empty($from_date)) { $from = date('Y-m-d',strtotime($from_date)); } else { $from = ""; } if(!empty($to_date)) { $to = date('Y-m-d',strtotime($to_date)); } else { $from = ""; } $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); //$this->db->group_by('A.site_id'); $query = $this->db->get(); $res=$query->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $array = array(); foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } public function get_employee_under_sitevisit_customers($employee,$from_date,$to_date) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $query = $this->db->get(); $res= $query->row(); $select = "select A.*"; $from = " from mmg_customer_site_visiting_followup A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; if(!empty($from_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') >= STR_TO_DATE('$from_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { $where .= " and A.created_by='$res->id'"; } $where .= " group by A.site_id "; $sql = $select.$from.$where; $result = $this->db->query($sql); $res= $result->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $array = array(); foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } public function get_employee_under_booking_customers($employee,$from_date,$to_date) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $query = $this->db->get(); $res= $query->row(); $select = "select A.*"; $from = " from mmg_booking_followup A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; if(!empty($from_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') >= STR_TO_DATE('$from_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { $where .= " and A.created_by='$res->id'"; } $where .= " group by A.site_id "; $sql = $select.$from.$where; $result = $this->db->query($sql); $res= $result->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $array = array(); foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } public function get_employee_under_sales_customers($employee,$from_date,$to_date) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $query = $this->db->get(); $res= $query->row(); $select = "select A.*"; $from = " from mmg_sales_followup A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; if(!empty($from_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') >= STR_TO_DATE('$from_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.created_at,'%Y-%m-%d') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { $where .= " and A.created_by='$res->id'"; } $where .= " group by A.site_id "; $sql = $select.$from.$where; $result = $this->db->query($sql); $res= $result->result(); if(!empty($res)) { $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $array = array(); foreach ($customer_id as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.progress,D.follow_date,D.description'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } } } public function get_employee_under_expiry_customers($employee,$from_date,$to_date) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $query = $this->db->get(); $res= $query->row(); if(!empty($from_date)) { $from = date('Y-m-d',strtotime($from_date)); } else { $from = ""; } if(!empty($from_date)) { $to = date('Y-m-d',strtotime($to_date)); } else { $from = ""; } $yesterday = date("Y-m-d", strtotime( '-2 days' ) ); $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); //$this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $folo_cust=$query->result(); $followup_cu_id = []; if(!empty($folo_cust)) { foreach ($folo_cust as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $this->db->select('A.*'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $folo_cust=$query->result(); if(!empty($folo_cust)) { foreach ($folo_cust as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $this->db->select('A.*'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $folo_cust=$query->result(); if(!empty($folo_cust)) { foreach ($folo_cust as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $this->db->select('A.*'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } if(!empty($employee)) { $this->db->where('A.created_by',$res->id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.site_id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $folo_cust=$query->result(); if(!empty($folo_cust)) { foreach ($folo_cust as $key => $value) { array_push($followup_cu_id,$value->customer_id); } } $this->db->select('A.*'); $this->db->from('mmg_login A'); if(!empty($employee)) { $this->db->where('A.user_id',$employee); } $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $res1 = $query->row(); $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); if(!empty($yesterday)) { $this->db->where('DATE(A.created_at) <=',$yesterday); } if(!empty($from)) { $this->db->where('DATE(A.created_at) >=',$from); } if(!empty($to)) { $this->db->where('DATE(A.created_at) <=',$to); } $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$res1->id); $this->db->where_not_in('A.id',$followup_cu_id); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $value) { if($value->created <= $yesterday) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress_name; array_push($array, $data); } } return $array; } /* public function get_payment_amount_based_layout_site($layout,$site,$tax_type) { if($tax_type == "without_tax") { $this->db->select('A.*'); $this->db->from('mmg_payment_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); $result= $query->row(); } else if($tax_type == "tax") { $this->db->select('A.*'); $this->db->from('mmg_withtax_payment_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); $result= $query->row(); } if(empty($result)) { $this->db->select('A.*'); $this->db->from('mmg_payment_entry A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); $res= $query->row(); if(empty($res)) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_name_id',$layout); $this->db->where('A.site_no_id',$site); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*'); $this->db->from('mmg_payment_entry A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.tax_type',$tax_type); $query=$this->db->get(); $res2= $query->row(); if(!empty($res2)) { $this->db->select('A.*'); $this->db->from('mmg_payment_entry A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.tax_type',$tax_type); $query=$this->db->get(); return $query->result(); } else { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_name_id',$layout); $this->db->where('A.site_no_id',$site); $query=$this->db->get(); return $query->row(); } } } else { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_name_id',$layout); $this->db->where('A.site_no_id',$site); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $template = 'template already exists'; return $template; } } }*/ public function get_payment_amount_based_layout_site($layout,$site,$tax_type) { $this->db->select('A.*'); $this->db->from(' mmg_payment_entry A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.tax_type',$tax_type); $query=$this->db->get(); $res=$query->result(); if(empty($res)) { $this->db->select('A.*,B.level_name'); $this->db->from(' mmg_payment_details A'); $this->db->join('mmg_civil_master B','B.id = A.level_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); return $query->result(); } else { $this->db->select('A.*,B.level_name'); $this->db->from(' mmg_payment_entry A'); $this->db->join('mmg_civil_master B','B.id = A.level_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.tax_type',$tax_type); $query=$this->db->get(); return $query->result(); } } public function get_site_based_on_layout_enquiry($layout_id) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout_id); $query=$this->db->get(); $res1= $query->result(); $site_id = []; foreach ($res1 as $key => $value) { array_push($site_id,$value->site_number); } $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_name_id',$layout_id); $query=$this->db->get(); $res2= $query->result(); $site_id = []; foreach ($res2 as $key => $value) { array_push($site_id,$value->site_no_id); } $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); $this->db->where('A.layout',$layout_id); $this->db->order_by('ABS(A.site_no)','ASC'); if(!empty($site_id)) { $this->db->where_not_in('A.id',$site_id); } /*if(!empty($site_ids)) { $this->db->where_not_in('A.id',$site_ids); }*/ //print_r($site_ids);die(); $query=$this->db->get(); return $query->result(); } public function get_site_based_on_layout_booking($layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_name_id',$layout_id); $query=$this->db->get(); $res2= $query->result(); $site_ids = []; foreach ($res2 as $key => $value) { array_push($site_ids,$value->site_no_id); } $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); $this->db->where('A.layout',$layout_id); if(!empty($site_ids)) { $this->db->where_not_in('A.id',$site_ids); } $this->db->order_by('ABS(A.site_no)','ASC'); $query=$this->db->get(); return $query->result(); } public function sites_status_list_get($p_id) { $this->db->select('A.*,G.booking_status'); $this->db->from('mmg_sites A'); $this->db->join('mmg_bookings G','G.site_number=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); $this->db->where('A.layout',$p_id); $query=$this->db->get(); return $query->result(); } public function get_site_detils_for_edit($id,$layout_name) { $this->db->select('A.*,F.layout_name,land_type,G.booking_status,H.name'); $this->db->from('mmg_sites A'); $this->db->join('mmg_layouts F','F.land_owners=A.layout'); $this->db->join('mmg_bookings G','G.site_number=A.id','left'); $this->db->join('mmg_customer H','H.id=G.customer_id','left'); $this->db->where('A.id',$id); //$this->db->where('F.land_owners',$layout_name); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query=$this->db->get(); return $query->row(); } public function get_where_result2($table,$where) { $this->db2->select('*'); $this->db2->from($table); $this->db2->where($where); $query=$this->db2->get(); return $query->result(); } public function get_customer_for_payment_entry($layout_id,$site_id) { $this->db->select('A.*,F.name,F.email,F.phone,F.id as customer_id,B.layout_name,C.site_no'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer F','F.id=A.customer_name_id'); $this->db->join('mmg_land_owner B','B.id=A.layout_name_id'); $this->db->join('mmg_sites C','C.id=A.site_no_id'); $this->db->where('A.layout_name_id',$layout_id); $this->db->where('A.site_no_id',$site_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $query=$this->db->get(); return $query->row(); } public function get_saled_sites_based_on_layout($layout_id) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.layout_name_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $site_id = []; foreach($res as $value) { array_push($site_id,$value->site_no_id); } if(!empty($site_id)) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); $this->db->order_by('ABS(A.site_no)','ASC'); $this->db->where_in('A.id',$site_id); $query=$this->db->get(); return $query->result(); } } public function get_payment_followup_list($user_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res3= $query->result(); $array = array(); foreach ($res3 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_payment_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } return $array; } public function get_product_based_unit_for_design($product_id) { $this->db2->select('A.*,B.product_group_name,C.id,C.unit_name,D.name,E.unit_price as vendor_unit_price'); $this->db2->from('mmg_products A'); $this->db2->join('mmg_product_group B','B.product_group_id=A.product_type'); $this->db2->join('mmg_vendor_product_link E','E.product_id=A.product_id'); $this->db2->join('mmg_unit C','C.id=A.unit_id'); $this->db2->join('mmg_login D','D.id=A.product_created_by'); $this->db2->where('A.product_id',$product_id); $this->db2->where('A.delete_status','ACTIVE'); $this->db2->where('B.delete_status','ACTIVE'); $this->db2->where('C.delete_status','ACTIVE'); $this->db2->where('D.delete_status','ACTIVE'); $query = $this->db2->get(); return $query->result(); } public function get_multilevel_validation($insertion_count) { $this->db->query("delete from mmg_multilevel_budget where insertion_count='".$insertion_count."'"); } public function get_todays_customer_followup_list($id) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $query=$this->db->get(); $row2= $query->row(); if(!empty($row2)) { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); $result = $query->result(); $current_date = date('Y-m-d'); } else { $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust',Null); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); // $this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); $result = $query->result(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*,B.progress_name,C.reference_type,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_followup_progress B','B.id = A.enquiry_status','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=A.created_by','left'); $this->db->where('A.duplicate_cust',Null); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); //$this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; //$data['created'] = $value->created; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created); $date2 = $datetime2->format('d-m-Y'); $data['created'] = date('d-m-Y', strtotime($date2)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); if(!empty($site)) { $data['ref_site_number'] = $site->site_no; } } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress_name; array_push($array, $data); } return $array; } } public function get_todays_followups_count($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->where('A.duplicate_cust',Null); //$this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); return $result = $query->num_rows(); } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('A.duplicate_cust',Null); //$this->db->where_not_in('A.id',$customer_id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $result = $query->num_rows(); } } } else { $progress = ['Site Visit','Call Back','Reject']; $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where_in('D.progress',$progress); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } if(!empty($customer_id)) { $current_date = date('Y-m-d'); $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('DATE(A.created_at)',$current_date); $this->db->where('A.duplicate_cust',Null); //$this->db->where_not_in('A.id',$customer_id); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $result = $query->num_rows(); } } } } public function get_budget_followup_list($user_id,$site_id,$layout_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res3= $query->result(); $array = array(); foreach ($res3 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); /*$this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id);*/ $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_budget_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned','left'); $this->db->join('mmg_department D','D.id = A.emp_department','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } return $array; } public function get_layouts_name() { /*$this->db->select('*'); $this->db->from('mmg_land_owner A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_status','PENDING'); $this->db->order_by('ABS(A.sequence_number)','ASC'); $query=$this->db->get(); return $query->result();*/ $this->db->select('A.*'); $this->db->from('mmg_land_owner A'); $this->db->join('mmg_layouts C','C.land_owners=A.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); //$this->db->where('C.status','APPROVED'); $this->db->where('C.layout_status','PROCESSING'); $this->db->order_by('ABS(A.sequence_number)','ASC'); $query=$this->db->get(); return $query->result(); } public function get_ledger_list() { $this->db->select('A.*,B.group_name,C.name as login_name,D.sub_group'); $this->db->from('mmg_ledger A'); $this->db->join('mmg_group_master B','B.id=A.group_id'); $this->db->join('mmg_sub_group D','D.id=A.sub_group_id'); $this->db->join('mmg_login C','C.id=A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('C.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $data['name'] = $value->name; $data['opl'] = $value->opl; $data['credit_debit'] = $value->credit_debit; $data['group_name'] = $value->group_name; $data['created_by'] = $value->login_name; $data['id'] = $value->id; $data['sub_group'] = $value->sub_group; $datetime = new DateTime($value->created_at); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $follow_created_at = new DateTime($value->created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['created_at'] = date('d-m-Y', strtotime($date2)); array_push($array,$data); } return $array; } public function get_payment_validation_withtax($cust_name) { $this->db->query("delete from mmg_withtax_payment_details where customer_id='".$cust_name."'"); } public function get_withtax_payment_details($customer_id) { $this->db->select('A.*,B.percentage,B.total_payment_amount,total_percentage,total_payment_cost,B.id as ids,B.level_id'); $this->db->from('mmg_civil_master A'); $this->db->join('mmg_withtax_payment_details B','B.level_id = A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.customer_id',$customer_id); $query=$this->db->get(); return $query->result(); } public function get_monthwise_holiady_list($month) { $this->db->select('A.*'); $this->db->from('mmg_holiday_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('MONTH(A.holiday_date)',$month); $query=$this->db->get(); $result = $query->result(); return $result; } public function employee_leave_applicant($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $result = $query->row(); return $result; } public function layout_status($result) { $this->db->select('A.*,B.id'); $this->db->from('mmg_layouts A'); $this->db->join('mmg_land_owner B','B.id=A.land_owners'); $this->db->where('A.id',$result); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $result = $this->db->get(); return $result->row(); } public function get_layout_names() { $this->db->select('*'); $this->db->from('mmg_land_owner A'); $this->db->where('A.delete_status','ACTIVE'); // $this->db->where('A.layout_status','PENDING'); $query=$this->db->get(); return $query->result(); } public function get_layout_names_adding() { $this->db->select('*'); $this->db->from('mmg_land_owner A'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $this->db->select('*'); $this->db->from('mmg_layouts A'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res1= $query->result(); $layout_ids = []; foreach ($res1 as $key => $value1) { array_push($layout_ids,$value1->land_owners); } $layout_id = array_unique($layout_ids); $this->db->select('A.*'); $this->db->from('mmg_land_owner A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_not_in('A.id',$layout_id); $query = $this->db->get(); $result = $query->result(); return $result; } public function get_group_based_sub_group($sub_group_id) { $this->db->select('A.*,B.sub_group,B.id as sub_group_id,C.group_name,C.id as group_id'); $this->db->from('mmg_sub_under_group A'); $this->db->join('mmg_sub_group B','B.id=A.sub_group_id'); $this->db->join('mmg_group_master C','C.id=B.group_id and A.sub_group_id = B.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$sub_group_id); $query=$this->db->get(); return $query->row(); } public function get_landowner_data($id) { $this->db2->select('B.layout_name'); $this->db2->from('mmg_layout_master A'); $this->db2->join('mmg_indent B','B.layout_name = A.id','left'); $this->db2->where('A.land_owner_id',$id); $this->db2->where('A.delete_status','ACTIVE'); $this->db2->where('B.delete_status','ACTIVE'); $result = $this->db2->get(); $res= $result->result(); return $res; } public function get_employee_details() { $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->where('A.branch','MMG'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.full_name','ASC'); $query=$this->db->get(); return $query->result(); } public function get_template_amount_based_layout_site($layout,$site,$tax_type) { if($tax_type == "without_tax") { $this->db->select('A.*'); $this->db->from('mmg_template_payment_entry A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.tax_type',$tax_type); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); $res= $query->result(); if(!empty($res)) { $this->db->select('A.*,B.level_name,'); $this->db->from('mmg_template_payment_entry A'); $this->db->join('mmg_civil_master B','B.id = A.level_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.tax_type',$tax_type); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); return $query->result(); } else { $this->db->select('A.*,B.level_name'); $this->db->from('mmg_payment_details A'); $this->db->join('mmg_civil_master B','B.id = A.level_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); return $query->result(); } } else if($tax_type == "tax") { $this->db->select('A.*'); $this->db->from('mmg_template_payment_entry A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.tax_type',$tax_type); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); $res= $query->result(); if(!empty($res)) { $this->db->select('A.*,B.level_name'); $this->db->from('mmg_template_payment_entry A'); $this->db->join('mmg_civil_master B','B.id = A.level_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.tax_type',$tax_type); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); return $query->result(); } else { $this->db->select('A.*,B.level_name'); $this->db->from('mmg_withtax_payment_details A'); $this->db->join('mmg_civil_master B','B.id = A.level_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $query=$this->db->get(); return $query->result(); } } } public function get_under_sub_group_list() { $this->db->select('A.*,B.sub_group'); $this->db->from('mmg_sub_under_group A'); $this->db->join('mmg_sub_group B','B.id=A.sub_group_id','left'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_edit_ledger_list($edit_id) { $this->db->select('A.*,B.group_name,C.sub_group'); $this->db->from('mmg_ledger A'); $this->db->join('mmg_group_master B','B.id=A.group_id'); $this->db->join('mmg_sub_group C','C.id=A.sub_group_id','left'); //$this->db->join('mmg_sub_group C','C.id=A.sub_group_id','left'); $this->db->where('A.id',$edit_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->row(); } public function get_layouts_name_po() { $this->db->select('B.*'); $this->db->from('mmg_land_owner A'); $this->db->join('mmg_layouts B','B.land_owners = A.id'); //$this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.layout_status','PENDING'); $this->db->where('B.delete_status','ACTIVE'); $this->db->order_by('ABS(A.sequence_number)','ASC'); $this->db->group_by('B.layout_name'); $query=$this->db->get(); return $query->result(); } public function get_subgrid_data($id) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.parent_id',$id); $this->db->where('A.select_type','SubGodown'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_file_names() { $this->db->select('*'); $this->db->from('mmg_file_attachment A'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_duplicate_customer() { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.duplicate_cust','Duplicate visit'); $query=$this->db->get(); $result= $query->result(); $array = array(); foreach ($result as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$values->id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } public function get_customer_for_records($layout_id,$site_id) { $this->db->select('B.*'); $this->db->from('mmg_customer_documents A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); if(!empty($layout_id)) { $this->db->where('A.layout_id',$layout_id); $this->db->where('A.site_id',$site_id); } $this->db->group_by('A.customer_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_customer_document_list($customer,$layout,$site) { if($customer != "0" || $layout != "0" || $site != "0") { $this->db->select('A.document,A.id as d_id,B.*,C.name as created_by,A.created_at as created'); $this->db->from('mmg_customer_documents A'); $this->db->join('mmg_file_attachment B','B.id = A.file_attachment_name'); $this->db->join('mmg_login C','C.id = A.created_by'); if(!empty($customer)) { $this->db->where('A.customer_id',$customer); } if(!empty($layout)) { $this->db->where('A.layout_id',$layout); } if(!empty($site)) { $this->db->where('A.site_id',$site); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $data['document'] = $value->document; $data['d_id'] = $value->d_id; $data['name'] = $value->name; $data['created_by'] = $value->created_by; $datetime = new DateTime($value->created); $data['created_time'] = $datetime->format('H:i:s'); $datetime2 = new DateTime($value->created); $data['created_date'] = $datetime2->format('d-m-Y'); array_push($array,$data); } return $array; } } public function get_marketing_employee_names() { $this->db->select('A.*,B.id'); $this->db->from('mmg_employees A'); $this->db->join('mmg_login B','B.user_id = A.emp_id'); $this->db->where('A.role_id','Marketing Executive'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('B.user_id'); $this->db->order_by('A.emp_id','DESC'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->where('A.created_by',$value->id); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res1= $query->num_rows(); $data['booking_count']=$res1; $data['full_name']=$value->full_name; array_push($array,$data); } return $array; } public function get_sales_employee_names() { $this->db->select('A.*,B.id'); $this->db->from('mmg_employees A'); $this->db->join('mmg_login B','B.user_id = A.emp_id'); $this->db->where('A.role_id','Marketing Executive'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('B.user_id'); $this->db->order_by('A.emp_id','DESC'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.created_by',$value->id); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res1= $query->num_rows(); $data['sales_count']=$res1; $data['full_name']=$value->full_name; array_push($array,$data); } return $array; } public function get_customer_sitevisit_employee_names() { $this->db->select('A.*,B.id'); $this->db->from('mmg_employees A'); $this->db->join('mmg_login B','B.user_id = A.emp_id'); $this->db->where('A.role_id','Marketing Executive'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('B.user_id'); $this->db->order_by('A.emp_id','DESC'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->where('A.created_by',$value->id); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res1= $query->num_rows(); $data['sitevisit_count']=$res1; $data['full_name']=$value->full_name; array_push($array,$data); } return $array; } public function get_duplicate_customer_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_duplicate_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_duplicate_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_duplicate_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $ref_person = $value->ref_person; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff'|| $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } public function get_finalized_reject_employee_names() { $this->db->select('A.*,B.id'); $this->db->from('mmg_employees A'); $this->db->join('mmg_login B','B.user_id = A.emp_id'); $this->db->where('A.role_id','Marketing Executive'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('B.user_id'); $this->db->order_by('A.emp_id','DESC'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$value->id); $this->db->where('D.progress','Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res1= $query->num_rows(); $this->db->select('D.*'); $this->db->from('mmg_customer_site_visiting_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->where('D.created_by',$value->id); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res2= $query->num_rows(); $this->db->select('D.*'); $this->db->from('mmg_booking_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->where('D.created_by',$value->id); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res3= $query->num_rows(); $this->db->select('D.*'); $this->db->from('mmg_sales_followup D'); $this->db->where('D.created_by',$value->id); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.progress','Finalized Reject'); $this->db->order_by('D.customer_id','DESC'); $query = $this->db->get(); $res4= $query->num_rows(); $total = $res1+$res2+$res3+$res4; $data['reject_count']=$total; $data['full_name']=$value->full_name; array_push($array,$data); } return $array; } public function get_customer_conversation_list($layout,$site) { $this->db->select('A.*,B.name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); $array = array(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['progress'] = $value->progress; $data['name'] = $value->name; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created_at); $date2 = $datetime2->format('d-m-Y'); $data['created_at'] = date('d-m-Y', strtotime($date2)); $data['description'] = $value->description; array_push($array,$data); } $this->db->select('A.*,B.name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['progress'] = $value->progress; $data['name'] = $value->name; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created_at); $date2 = $datetime2->format('d-m-Y'); $data['created_at'] = date('d-m-Y', strtotime($date2)); $data['description'] = $value->description; array_push($array,$data); } $this->db->select('A.*,B.name'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res4= $query->result(); foreach ($res4 as $key => $value) { $data['id'] = $value->id; $data['progress'] = $value->progress; $data['name'] = $value->name; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created_at); $date2 = $datetime2->format('d-m-Y'); $data['created_at'] = date('d-m-Y', strtotime($date2)); $data['description'] = $value->description; array_push($array,$data); } $this->db->select('A.*,B.name'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->where('A.layout_id',$layout); $this->db->where('A.site_id',$site); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res3= $query->result(); foreach ($res3 as $key => $value) { $data['id'] = $value->id; $data['progress'] = $value->progress; $data['name'] = $value->name; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime2 = new DateTime($value->created_at); $date2 = $datetime2->format('d-m-Y'); $data['created_at'] = date('d-m-Y', strtotime($date2)); $data['description'] = $value->description; array_push($array,$data); } return $array; } public function datewise_attendance_report($report_date,$to_date,$employee,$date) { $current_date = date('Y'); $one1 = "01"; $one2 = "02"; $one3 = "03"; $one4 = "04"; $one5 = "05"; $one6 = "06"; $one7 = "07"; $one8 = "08"; $one9 = "09"; $one10 = "10"; $one11 = "11"; $one12 = "12"; $one13 = "13"; $one14 = "14"; $one15 = "15"; $one16 = "16"; $one17 = "17"; $one18 = "18"; $one19 = "19"; $one20 = "20"; $one21 = "21"; $one22 = "22"; $one23 = "23"; $one24 = "24"; $one25 = "25"; $one26 = "26"; $one27 = "27"; $one28 = "28"; $one29 = "29"; $one30 = "30"; $one31 = "31"; $this->db->select('A.*'); $this->db->from(' mmg_holiday_details A'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); $total = 0; if(!empty($res2)) { foreach ($res2 as $key => $value) { $holiday_date = $value->holiday_date; $temp = explode("-", $value->holiday_date); $month = $temp[1]; if($month == $report_date) { $total+=1; } } } $total_holidays = $total; if($employee == "All") { $this->db->select('A.*'); $this->db->from(' mmg_employees A'); $this->db->where('A.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $value) { $this->db->select('A.*,B.full_name,C.dept_name,D.leave_type,D.leave_date'); $this->db->from('mmg_employee_attendance A'); $this->db->join('mmg_employees B','B.emp_id = A.emp_id'); $this->db->join('mmg_department C','C.id = B.department_id'); $this->db->join('mmg_apply_leave D','D.employee_id = A.emp_id','left'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.entry_date'); $query=$this->db->get(); $res1= $query->result(); if(!empty($res1)) { $total_hr = 0; $total_min = 0; $total_hr2 = 0; $total_min2 = 0; $total_hr3 = 0; $total_min3 = 0; $total_hr4 = 0; $total_min4 = 0; $total_hr5 = 0; $total_min5 = 0; $total_hr6 = 0; $total_min6 = 0; $total_hr7 = 0; $total_min7 = 0; $total_hr8 = 0; $total_min8 = 0; $total_hr9 = 0; $total_min9 = 0; $total_hr10 = 0; $total_min10 = 0; $total_hr11 = 0; $total_min11 = 0; $total_hr12 = 0; $total_min12 = 0; $total_hr13 = 0; $total_min13 = 0; $total_hr14 = 0; $total_min14 = 0; $total_hr15 = 0; $total_min15 = 0; $total_hr16 = 0; $total_min16 = 0; $total_hr17 = 0; $total_min17 = 0; $total_hr18 = 0; $total_min18 = 0; $total_hr19 = 0; $total_min19 = 0; $total_hr20 = 0; $total_min20 = 0; $total_hr21 = 0; $total_min21 = 0; $total_hr22 = 0; $total_min22 = 0; $total_hr23 = 0; $total_min23 = 0; $total_hr24 = 0; $total_min24 = 0; $total_hr25 = 0; $total_min25 = 0; $total_hr26 = 0; $total_min26 = 0; $total_hr27 = 0; $total_min27 = 0; $total_hr28 = 0; $total_min28 = 0; $total_hr29 = 0; $total_min29 = 0; $total_hr30 = 0; $total_min30 = 0; $total_hr31 = 0; $total_min31 = 0; foreach ($res1 as $key => $value) { $this->db->select('A.*'); $this->db->from(' mmg_employee_attendance A'); $this->db->where('A.entry_date',$value->entry_date); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','ASC'); $query=$this->db->get(); $asc_row= $query->row(); if(!empty($asc_row)) { $entry_time = $asc_row->entry_time; } else { $entry_time = '00:00'; } $this->db->select('A.*'); $this->db->from(' mmg_employee_attendance A'); $this->db->where('A.entry_date',$value->entry_date); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $dsc_row= $query->row(); $datetime = new DateTime($date); $date = $datetime->format('H:i'); $time= date('h:ia', strtotime($date)); if(!empty($dsc_row->exit_time)) { $exit_time = $dsc_row->exit_time; } else { $exit_time = $time; } if($one1 == "01") { $final_date = $one1.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one1; if(!empty($report_date) && $report_date !="0") { if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr = $timediff2->h; $total_min = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type1'] = ucfirst($value->leave_type); } else { $data['leave_type1'] = "0:0"; } } else { $temp = explode(":", $value->entry_time); $hr = $temp[0]; $min = $temp[1]; $total_hr+=$hr; $total_min+=$min; } } if($one2 == "02") { $final_date = $one2.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one2; if(!empty($report_date) && $report_date !="0") { if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr2 = $timediff2->h; $total_min2 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type2'] = ucfirst($value->leave_type); } else { $data['leave_type2'] = "0:0"; } } else { $temp = explode(":", $value->entry_time); $hr = $temp[0]; $min = $temp[1]; $total_hr2+=$hr; $total_min2+=$min; } } if($one3 == "03") { $final_date = $one3.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one3; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr3 = $timediff2->h; $total_min3 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type3'] = ucfirst($value->leave_type); } else { $data['leave_type3'] = "0:0"; } } if($one4 == "04") { $final_date = $one4.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one4; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr4 = $timediff2->h; $total_min4 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type4'] = ucfirst($value->leave_type); } else { $data['leave_type4'] = "0:0"; } } if($one5 == "05") { $final_date = $one5.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one5; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr5 = $timediff2->h; $total_min5 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type5'] = ucfirst($value->leave_type); } else { $data['leave_type5'] = "0:0"; } } if($one6 == "06") { $final_date = $one6.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one6; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr6 = $timediff2->h; $total_min6 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type6'] = ucfirst($value->leave_type); } else { $data['leave_type6'] = "0:0"; } } if($one7 == "07") { $final_date = $one7.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one7; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr7 = $timediff2->h; $total_min7 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type7'] = ucfirst($value->leave_type); } else { $data['leave_type7'] = "0:0"; } } if($one8 == "08") { $final_date = $one8.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one8; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr8 = $timediff2->h; $total_min8 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type8'] = ucfirst($value->leave_type); } else { $data['leave_type8'] = "0:0"; } } if($one9 == "09") { $final_date = $one9.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one9; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr9 = $timediff2->h; $total_min9 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type9'] = ucfirst($value->leave_type); } else { $data['leave_type9'] = "0:0"; } } if($one10 == "10") { $final_date = $one10.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one10; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr10 = $timediff2->h; $total_min10 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type10'] = ucfirst($value->leave_type); } else { $data['leave_type10'] = "0:0"; } } if($one11 == "11") { $final_date = $one11.'/'.$report_date.'/'.$current_date; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr11 = $timediff2->h; $total_min11 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type11'] = ucfirst($value->leave_type); } else { $data['leave_type11'] = "0:0"; } } if($one12 == "12") { $final_date = $one12.'/'.$report_date.'/'.$current_date; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr12 = $timediff2->h; $total_min12 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type12'] = ucfirst($value->leave_type); } else { $data['leave_type12'] = "0:0"; } } if($one13 == "13") { $final_date = $one13.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one13; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr13 = $timediff2->h; $total_min13 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type13'] = ucfirst($value->leave_type); } else { $data['leave_type13'] = "0:0"; } } if($one14 == "14") { $final_date = $one14.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one14; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr14 = $timediff2->h; $total_min14 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type14'] = ucfirst($value->leave_type); } else { $data['leave_type14'] = "0:0"; } } if($one15 == "15") { $final_date = $one15.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one15; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr15 = $timediff2->h; $total_min15 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type15'] = ucfirst($value->leave_type); } else { $data['leave_type15'] = "0:0"; } } if($one16 == "16") { $final_date = $one16.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one16; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr16 = $timediff2->h; $total_min16 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type16'] = ucfirst($value->leave_type); } else { $data['leave_type16'] = "0:0"; } } if($one17 == "17") { $final_date = $one17.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one17; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr17 = $timediff2->h; $total_min17 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type17'] = ucfirst($value->leave_type); } else { $data['leave_type17'] = "0:0"; } } if($one18 == "18") { $final_date = $one18.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one18; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr18 = $timediff2->h; $total_min18 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type18'] = ucfirst($value->leave_type); } else { $data['leave_type18'] = "0:0"; } } if($one19 == "19") { $final_date = $one19.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one19; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr19 = $timediff2->h; $total_min19 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type19'] = ucfirst($value->leave_type); } else { $data['leave_type19'] = "0:0"; } } if($one20 == "20") { $final_date = $one20.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one20; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr20 = $timediff2->h; $total_min20 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type20'] = ucfirst($value->leave_type); } else { $data['leave_type20'] = "0:0"; } } if($one21 == "21") { $final_date = $one21.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one21; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr21 = $timediff2->h; $total_min21 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type21'] = ucfirst($value->leave_type); } else { $data['leave_type21'] = "0:0"; } } if($one22 == "22") { $final_date = $one22.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one22; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr22 = $timediff2->h; $total_min22 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type22'] = ucfirst($value->leave_type); } else { $data['leave_type22'] = "0:0"; } } if($one23 == "23") { $final_date = $one23.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one23; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr23 = $timediff2->h; $total_min23 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type23'] = ucfirst($value->leave_type); } else { $data['leave_type23'] = "0:0"; } } if($one24 == "24") { $final_date = $one24.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one24; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr24 = $timediff2->h; $total_min24 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type24'] = ucfirst($value->leave_type); } else { $data['leave_type24'] = "0:0"; } } if($one25 == "25") { $final_date = $one25.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one25; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr25 = $timediff2->h; $total_min25 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type25'] = ucfirst($value->leave_type); } else { $data['leave_type25'] = "0:0"; } } if($one26 == "26") { $final_date = $one26.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one26; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr26 = $timediff2->h; $total_min26 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type26'] = ucfirst($value->leave_type); } else { $data['leave_type26'] = "0:0"; } } if($one27 == "27") { $final_date = $one27.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one27; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr27 = $timediff2->h; $total_min27 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type27'] = ucfirst($value->leave_type); } else { $data['leave_type27'] = "0:0"; } } if($one28 == "28") { $final_date = $one28.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one28; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr28 = $timediff2->h; $total_min28 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type28'] = ucfirst($value->leave_type); } else { $data['leave_type28'] = "0:0"; } } if($one29 == "29") { $final_date = $one29.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one29; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr29 = $timediff2->h; $total_min29 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type29'] = ucfirst($value->leave_type); } else { $data['leave_type29'] = "0:0"; } } if($one30 == "30") { $final_date = $one30.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one30; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr30 = $timediff2->h; $total_min30 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type30'] = ucfirst($value->leave_type); } else { $data['leave_type30'] = "0:0"; } } if($one31 == "31") { $final_date = $one31.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one31; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr31 = $timediff2->h; $total_min31 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type31'] = ucfirst($value->leave_type); } else { $data['leave_type31'] = "0:0"; } } $data['employee_name'] = $value->full_name; $data['dept_name'] = $value->dept_name; } $data['total_hr1'] = $total_hr.':'.$total_min; $data['total_hr2'] = $total_hr2.':'.$total_min2; $data['total_hr3'] = $total_hr3.':'.$total_min3; $data['total_hr4'] = $total_hr4.':'.$total_min4; $data['total_hr5'] = $total_hr5.':'.$total_min5; $data['total_hr6'] = $total_hr6.':'.$total_min6; $data['total_hr7'] = $total_hr7.':'.$total_min7; $data['total_hr8'] = $total_hr8.':'.$total_min8; $data['total_hr9'] = $total_hr9.':'.$total_min9; $data['total_hr10'] = $total_hr10.':'.$total_min10; $data['total_hr11'] = $total_hr11.':'.$total_min11; $data['total_hr12'] = $total_hr12.':'.$total_min12; $data['total_hr13'] = $total_hr13.':'.$total_min13; $data['total_hr14'] = $total_hr14.':'.$total_min14; $data['total_hr15'] = $total_hr15.':'.$total_min15; $data['total_hr16'] = $total_hr16.':'.$total_min16; $data['total_hr17'] = $total_hr17.':'.$total_min17; $data['total_hr18'] = $total_hr18.':'.$total_min18; $data['total_hr19'] = $total_hr19.':'.$total_min19; $data['total_hr20'] = $total_hr20.':'.$total_min20; $data['total_hr21'] = $total_hr21.':'.$total_min21; $data['total_hr22'] = $total_hr22.':'.$total_min22; $data['total_hr23'] = $total_hr23.':'.$total_min23; $data['total_hr24'] = $total_hr24.':'.$total_min24; $data['total_hr25'] = $total_hr25.':'.$total_min25; $data['total_hr26'] = $total_hr26.':'.$total_min26; $data['total_hr27'] = $total_hr27.':'.$total_min27; $data['total_hr28'] = $total_hr28.':'.$total_min28; $data['total_hr29'] = $total_hr29.':'.$total_min29; $data['total_hr30'] = $total_hr30.':'.$total_min30; $data['total_hr31'] = $total_hr31.':'.$total_min31; $no_of_working_hrs = $total_hr+$total_hr2+$total_hr3+$total_hr4+$total_hr5+$total_hr6+$total_hr7+$total_hr8+$total_hr9+$total_hr10+$total_hr11+$total_hr12+$total_hr13+$total_hr14+$total_hr15+$total_hr16+$total_hr17+$total_hr18+$total_hr19+$total_hr20+$total_hr21+$total_hr22+$total_hr23+$total_hr24+$total_hr25+$total_hr26+$total_hr27+$total_hr28+$total_hr29+$total_hr30+$total_hr31; $no_of_working_mins = $total_min+$total_min2+$total_min3+$total_min4+$total_min5+$total_min6+$total_min7+$total_min8+$total_min9+$total_min10+$total_min11+$total_min12+$total_min13+$total_min14+$total_min15+$total_min16+$total_min17+$total_min18+$total_min19+$total_min20+$total_min21+$total_min22+$total_min23+$total_min24+$total_min25+$total_min26+$total_min27+$total_min28+$total_min29+$total_min30+$total_min31; $data['no_of_worked_hrs'] = $no_of_working_hrs.':'.$no_of_working_mins; $d=cal_days_in_month(CAL_GREGORIAN,$report_date,$current_date); $a = ($d-$total_holidays)*8; $data['total_working_hours'] = $a; $b = $a-$no_of_working_hrs; $data['no_of_days'] = $no_of_working_hrs/8; $data['difference'] = $b.':'.$no_of_working_mins; array_push($array,$data); } } } else { $this->db->select('A.*,B.full_name,C.dept_name,D.leave_type,D.leave_date'); $this->db->from(' mmg_employee_attendance A'); $this->db->join('mmg_employees B','B.emp_id = A.emp_id'); $this->db->join('mmg_department C','C.id = B.department_id'); $this->db->join('mmg_apply_leave D','D.employee_id = A.emp_id','left'); if(!empty($employee) || $employee != "0" || $employee != "All") { $this->db->where('A.emp_id',$employee); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.entry_date'); $query=$this->db->get(); $res= $query->result(); $array = array(); $total_hr = 0; $total_min = 0; $total_hr2 = 0; $total_min2 = 0; $total_hr3 = 0; $total_min3 = 0; $total_hr4 = 0; $total_min4 = 0; $total_hr5 = 0; $total_min5 = 0; $total_hr6 = 0; $total_min6 = 0; $total_hr7 = 0; $total_min7 = 0; $total_hr8 = 0; $total_min8 = 0; $total_hr9 = 0; $total_min9 = 0; $total_hr10 = 0; $total_min10 = 0; $total_hr11 = 0; $total_min11 = 0; $total_hr12 = 0; $total_min12 = 0; $total_hr13 = 0; $total_min13 = 0; $total_hr14 = 0; $total_min14 = 0; $total_hr15 = 0; $total_min15 = 0; $total_hr16 = 0; $total_min16 = 0; $total_hr17 = 0; $total_min17 = 0; $total_hr18 = 0; $total_min18 = 0; $total_hr19 = 0; $total_min19 = 0; $total_hr20 = 0; $total_min20 = 0; $total_hr21 = 0; $total_min21 = 0; $total_hr22 = 0; $total_min22 = 0; $total_hr23 = 0; $total_min23 = 0; $total_hr24 = 0; $total_min24 = 0; $total_hr25 = 0; $total_min25 = 0; $total_hr26 = 0; $total_min26 = 0; $total_hr27 = 0; $total_min27 = 0; $total_hr28 = 0; $total_min28 = 0; $total_hr29 = 0; $total_min29 = 0; $total_hr30 = 0; $total_min30 = 0; $total_hr31 = 0; $total_min31 = 0; foreach ($res as $key => $value) { $this->db->select('A.*'); $this->db->from(' mmg_employee_attendance A'); if(!empty($employee) || $employee != "0" || $employee != "All") { $this->db->where('A.entry_date',$value->entry_date); $this->db->where('A.emp_id',$value->emp_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','ASC'); $query=$this->db->get(); $asc_row= $query->row(); if(!empty($asc_row)) { $entry_time = $asc_row->entry_time; } else { $entry_time = '00:00'; } $this->db->select('A.*'); $this->db->from(' mmg_employee_attendance A'); if(!empty($employee) || $employee != "0" || $employee != "All") { $this->db->where('A.entry_date',$value->entry_date); $this->db->where('A.emp_id',$value->emp_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $dsc_row= $query->row(); $datetime = new DateTime($date); $date = $datetime->format('H:i'); $time= date('h:ia', strtotime($date)); if(!empty($dsc_row->exit_time)) { $exit_time = $dsc_row->exit_time; } else { $exit_time = $time; } if($one1 == "01") { $final_date = $one1.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one1; if(!empty($report_date) && $report_date !="0") { if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr = $timediff2->h; $total_min = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type1'] = ucfirst($value->leave_type); } else { $data['leave_type1'] = "0:0"; } } else { $temp = explode(":", $value->entry_time); $hr = $temp[0]; $min = $temp[1]; $total_hr+=$hr; $total_min+=$min; } } if($one2 == "02") { $final_date = $one2.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one2; if(!empty($report_date) && $report_date !="0") { if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr2 = $timediff2->h; $total_min2 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type2'] = ucfirst($value->leave_type); } else { $data['leave_type2'] = "0:0"; } } else { $temp = explode(":", $value->entry_time); $hr = $temp[0]; $min = $temp[1]; $total_hr2+=$hr; $total_min2+=$min; } } if($one3 == "03") { $final_date = $one3.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one3; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr3 = $timediff2->h; $total_min3 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type3'] = ucfirst($value->leave_type); } else { $data['leave_type3'] = "0:0"; } } if($one4 == "04") { $final_date = $one4.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one4; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr4 = $timediff2->h; $total_min4 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type4'] = ucfirst($value->leave_type); } else { $data['leave_type4'] = "0:0"; } } if($one5 == "05") { $final_date = $one5.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one5; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr5 = $timediff2->h; $total_min5 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type5'] = ucfirst($value->leave_type); } else { $data['leave_type5'] = "0:0"; } } if($one6 == "06") { $final_date = $one6.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one6; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr6 = $timediff2->h; $total_min6 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type6'] = ucfirst($value->leave_type); } else { $data['leave_type6'] = "0:0"; } } if($one7 == "07") { $final_date = $one7.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one7; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr7 = $timediff2->h; $total_min7 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type7'] = ucfirst($value->leave_type); } else { $data['leave_type7'] = "0:0"; } } if($one8 == "08") { $final_date = $one8.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one8; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr8 = $timediff2->h; $total_min8 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type8'] = ucfirst($value->leave_type); } else { $data['leave_type8'] = "0:0"; } } if($one9 == "09") { $final_date = $one9.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one9; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr9 = $timediff2->h; $total_min9 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type9'] = ucfirst($value->leave_type); } else { $data['leave_type9'] = "0:0"; } } if($one10 == "10") { $final_date = $one10.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one10; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr10 = $timediff2->h; $total_min10 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type10'] = ucfirst($value->leave_type); } else { $data['leave_type10'] = "0:0"; } } if($one11 == "11") { $final_date = $one11.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one11; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr11 = $timediff2->h; $total_min11 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type11'] = ucfirst($value->leave_type); } else { $data['leave_type11'] = "0:0"; } } if($one12 == "12") { $final_date = $one12.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one12; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr12 = $timediff2->h; $total_min12 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type12'] = ucfirst($value->leave_type); } else { $data['leave_type12'] = "0:0"; } } if($one13 == "13") { $final_date = $one13.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one13; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr13 = $timediff2->h; $total_min13 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type13'] = ucfirst($value->leave_type); } else { $data['leave_type13'] = "0:0"; } } if($one14 == "14") { $final_date = $one14.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one14; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr14 = $timediff2->h; $total_min14 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type14'] = ucfirst($value->leave_type); } else { $data['leave_type14'] = "0:0"; } } if($one15 == "15") { $final_date = $one15.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one15; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr15 = $timediff2->h; $total_min15 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type15'] = ucfirst($value->leave_type); } else { $data['leave_type15'] = "0:0"; } } if($one16 == "16") { $final_date = $one16.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one16; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr16 = $timediff2->h; $total_min16 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type16'] = ucfirst($value->leave_type); } else { $data['leave_type16'] = "0:0"; } } if($one17 == "17") { $final_date = $one17.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one17; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr17 = $timediff2->h; $total_min17 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type17'] = ucfirst($value->leave_type); } else { $data['leave_type17'] = "0:0"; } } if($one18 == "18") { $final_date = $one18.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one18; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr18 = $timediff2->h; $total_min18 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type18'] = ucfirst($value->leave_type); } else { $data['leave_type18'] = "0:0"; } } if($one19 == "19") { $final_date = $one19.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one19; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr19 = $timediff2->h; $total_min19 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type19'] = ucfirst($value->leave_type); } else { $data['leave_type19'] = "0:0"; } } if($one20 == "20") { $final_date = $one20.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one20; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr20 = $timediff2->h; $total_min20 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type20'] = ucfirst($value->leave_type); } else { $data['leave_type20'] = "0:0"; } } if($one21 == "21") { $final_date = $one21.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one21; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr21 = $timediff2->h; $total_min21 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type21'] = ucfirst($value->leave_type); } else { $data['leave_type21'] = "0:0"; } } if($one22 == "22") { $final_date = $one22.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one22; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr22 = $timediff2->h; $total_min22 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type22'] = ucfirst($value->leave_type); } else { $data['leave_type22'] = "0:0"; } } if($one23 == "23") { $final_date = $one23.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one23; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr23 = $timediff2->h; $total_min23 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type23'] = ucfirst($value->leave_type); } else { $data['leave_type23'] = "0:0"; } } if($one24 == "24") { $final_date = $one24.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one24; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr24 = $timediff2->h; $total_min24 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type24'] = ucfirst($value->leave_type); } else { $data['leave_type24'] = "0:0"; } } if($one25 == "25") { $final_date = $one25.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one25; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr25 = $timediff2->h; $total_min25 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type25'] = ucfirst($value->leave_type); } else { $data['leave_type25'] = "0:0"; } } if($one26 == "26") { $final_date = $one26.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one26; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr26 = $timediff2->h; $total_min26 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type26'] = ucfirst($value->leave_type); } else { $data['leave_type26'] = "0:0"; } } if($one27 == "27") { $final_date = $one27.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one27; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr27 = $timediff2->h; $total_min27 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type27'] = ucfirst($value->leave_type); } else { $data['leave_type27'] = "0:0"; } } if($one28 == "28") { $final_date = $one28.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one28; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr28 = $timediff2->h; $total_min28 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type28'] = ucfirst($value->leave_type); } else { $data['leave_type28'] = "0:0"; } } if($one29 == "29") { $final_date = $one29.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one29; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr29 = $timediff2->h; $total_min29 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type29'] = ucfirst($value->leave_type); } else { $data['leave_type29'] = "0:0"; } } if($one30 == "30") { $final_date = $one30.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one30; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr30 = $timediff2->h; $total_min30 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type30'] = ucfirst($value->leave_type); } else { $data['leave_type30'] = "0:0"; } } if($one31 == "31") { $final_date = $one31.'/'.$report_date.'/'.$current_date; $leave_dates = $current_date.'-'.$report_date.'-'.$one31; if($asc_row->entry_date == $final_date) { $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff2 = $time1->diff($time2); $total_hr31 = $timediff2->h; $total_min31 = $timediff2->i; } if($value->leave_date == $leave_dates) { $data['leave_type31'] = ucfirst($value->leave_type); } else { $data['leave_type31'] = "0:0"; } } $data['employee_name'] = $value->full_name; $data['dept_name'] = $value->dept_name; } $data['total_hr1'] = $total_hr.':'.$total_min; $data['total_hr2'] = $total_hr2.':'.$total_min2; $data['total_hr3'] = $total_hr3.':'.$total_min3; $data['total_hr4'] = $total_hr4.':'.$total_min4; $data['total_hr5'] = $total_hr5.':'.$total_min5; $data['total_hr6'] = $total_hr6.':'.$total_min6; $data['total_hr7'] = $total_hr7.':'.$total_min7; $data['total_hr8'] = $total_hr8.':'.$total_min8; $data['total_hr9'] = $total_hr9.':'.$total_min9; $data['total_hr10'] = $total_hr10.':'.$total_min10; $data['total_hr11'] = $total_hr11.':'.$total_min11; $data['total_hr12'] = $total_hr12.':'.$total_min12; $data['total_hr13'] = $total_hr13.':'.$total_min13; $data['total_hr14'] = $total_hr14.':'.$total_min14; $data['total_hr15'] = $total_hr15.':'.$total_min15; $data['total_hr16'] = $total_hr16.':'.$total_min16; $data['total_hr17'] = $total_hr17.':'.$total_min17; $data['total_hr18'] = $total_hr18.':'.$total_min18; $data['total_hr19'] = $total_hr19.':'.$total_min19; $data['total_hr20'] = $total_hr20.':'.$total_min20; $data['total_hr21'] = $total_hr21.':'.$total_min21; $data['total_hr22'] = $total_hr22.':'.$total_min22; $data['total_hr23'] = $total_hr23.':'.$total_min23; $data['total_hr24'] = $total_hr24.':'.$total_min24; $data['total_hr25'] = $total_hr25.':'.$total_min25; $data['total_hr26'] = $total_hr26.':'.$total_min26; $data['total_hr27'] = $total_hr27.':'.$total_min27; $data['total_hr28'] = $total_hr28.':'.$total_min28; $data['total_hr29'] = $total_hr29.':'.$total_min29; $data['total_hr30'] = $total_hr30.':'.$total_min30; $data['total_hr31'] = $total_hr31.':'.$total_min31; $no_of_working_hrs = $total_hr+$total_hr2+$total_hr3+$total_hr4+$total_hr5+$total_hr6+$total_hr7+$total_hr8+$total_hr9+$total_hr10+$total_hr11+$total_hr12+$total_hr13+$total_hr14+$total_hr15+$total_hr16+$total_hr17+$total_hr18+$total_hr19+$total_hr20+$total_hr21+$total_hr22+$total_hr23+$total_hr24+$total_hr25+$total_hr26+$total_hr27+$total_hr28+$total_hr29+$total_hr30+$total_hr31; $no_of_working_mins = $total_min+$total_min2+$total_min3+$total_min4+$total_min5+$total_min6+$total_min7+$total_min8+$total_min9+$total_min10+$total_min11+$total_min12+$total_min13+$total_min14+$total_min15+$total_min16+$total_min17+$total_min18+$total_min19+$total_min20+$total_min21+$total_min22+$total_min23+$total_min24+$total_min25+$total_min26+$total_min27+$total_min28+$total_min29+$total_min30+$total_min31; $price = ($no_of_working_mins)/60; $total_hrs = $price+$no_of_working_hrs; $whole = intval($price); $decimal1 = $price - $whole; $total = round($total_hrs).':'.$whole; $working_days = round($total_hrs)/8; $total_Days = $working_days+4; $data['no_of_worked_hrs'] = $total; $d=cal_days_in_month(CAL_GREGORIAN,$report_date,$current_date); $a = ($d-$total_holidays)*8; $data['total_working_hours'] = $a; $b = $a-$total_hrs; $data['difference'] = round($b).':'.$whole; $data['no_of_days'] = round($total_Days); array_push($array,$data); } return $array; } public function get_phone_based_duplicate_customer($id,$phone) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.duplicate_cust','Duplicate'); $this->db->where('A.created_by',$id); $this->db->where('A.phone',$phone); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust','Duplicate'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.phone',$phone); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,A.created_at as created,F.name as created_by'); $this->db->from('mmg_customer A'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=A.employee_id','left'); $this->db->join('mmg_department E','E.id=A.department_id','left'); $this->db->join('mmg_login F','F.id=A.created_by'); $this->db->where('A.duplicate_cust','Duplicate'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.phone',$phone); $this->db->order_by('ABS(A.id)','DESC'); $query = $this->db->get(); $result = $query->result(); } $array = array(); foreach ($result as $value) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created'] = $value->created; $data['created_by'] = $value->created_by; $ref_person = $value->ref_person; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff'|| $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } } else { $data['ref_layout'] = ''; } if($value->enquiry_layout != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->enquiry_layout); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); if(!empty($layout)) { $data['enquiry_layout'] = $layout->layout_name; } } else { $data['enquiry_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } public function get_customer_details_for_revise($sale_id) { $this->db->select('A.*,D.site_no,D.east,D.west,D.north,D.south,D.sq_mt,D.sq_ft,D.east_west,D.north_south,B.name,B.address,B.phone,B.email,E.layout_name,F.name as login_name,G.total_value,G.site_type,G.tsv,D.sq_mt,H.layouts_stamp_duty,H.per_sq_ft as layout_per_sq_ft'); $this->db->from('mmg_revised_budget A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id','left'); $this->db->join('mmg_sites D','D.id = A.site_no_id','left'); $this->db->join('mmg_layouts H','H.id = A.layout_name_id','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id','left'); $this->db->join('mmg_bookings G','G.customer_id = B.id','left'); $this->db->join('mmg_login F','F.id = A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.sale_id',$sale_id); $query = $this->db->get(); return $result = $query->row(); } public function get_revised_saved_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status !=','Approved'); $this->db->where('E.created_by',$id); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,I.name as created_by,M.created_on,M.saledeed_charge,M.remaining_payment,M.stamp_duty_amount,M.doc_charge_amount,M.grand_total,M.status,H.layout_name,K.site_no,L.site_type,M.layout_name_id,M.site_no_id,M.sale_id'); $this->db->from('mmg_customer A'); //$this->db->join('mmg_budget_followup G','G.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); //$this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); //$this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_revised_budget M','M.sale_id=J.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('G.progress','Architecture'); //$this->db->where('J.status','Approved'); $this->db->where('M.id',$value->id); $this->db->order_by('M.id','DESC'); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['layout_id'] = $value->layout_name_id; $data['site_id'] = $value->site_no_id; $data['id'] = $value->id; $data['sale_id'] = $value->sale_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['first_name'] = $value->first_name; //$data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } //$data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status !=','Approved'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,I.name as created_by,M.created_on,M.saledeed_charge,M.remaining_payment,M.stamp_duty_amount,M.doc_charge_amount,M.grand_total,M.status,H.layout_name,K.site_no,L.site_type,M.layout_name_id,M.site_no_id,M.sale_id'); $this->db->from('mmg_customer A'); //$this->db->join('mmg_budget_followup G','G.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_revised_budget M','M.sale_id=J.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('G.progress','Architecture'); //$this->db->where('J.status','Approved'); $this->db->where('M.id',$value->id); $this->db->order_by('M.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['layout_id'] = $value->layout_name_id; $data['site_id'] = $value->site_no_id; $data['id'] = $value->id; $data['sale_id'] = $value->sale_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['first_name'] = $value->first_name; //$data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } //$data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status !=','Approved'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,I.name as created_by,M.created_on,M.saledeed_charge,M.remaining_payment,M.stamp_duty_amount,M.doc_charge_amount,M.grand_total,M.status,H.layout_name,K.site_no,L.site_type,M.layout_name_id,M.site_no_id,M.sale_id'); $this->db->from('mmg_customer A'); //$this->db->join('mmg_budget_followup G','G.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); //$this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); //$this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_revised_budget M','M.sale_id=J.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('G.progress','Architecture'); //$this->db->where('J.status','Approved'); $this->db->where('M.id',$value->id); $this->db->order_by('M.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['layout_id'] = $value->layout_name_id; $data['site_id'] = $value->site_no_id; $data['id'] = $value->id; $data['sale_id'] = $value->sale_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['first_name'] = $value->first_name; //$data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } //$data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } } public function get_revised_approved_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->where('E.created_by',$id); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,I.name as created_by,M.created_on,M.saledeed_charge,M.remaining_payment,M.stamp_duty_amount,M.doc_charge_amount,M.grand_total,M.status,H.layout_name,K.site_no,L.site_type,M.layout_name_id,M.site_no_id,M.sale_id,M.id as revised_id'); $this->db->from('mmg_customer A'); //$this->db->join('mmg_budget_followup G','G.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); //$this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); //$this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_revised_budget M','M.sale_id=J.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('G.progress','Architecture'); //$this->db->where('J.status','Approved'); $this->db->where('M.id',$value->id); $this->db->order_by('M.id','DESC'); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['revised_id'] = $value->revised_id; $data['layout_id'] = $value->layout_name_id; $data['site_id'] = $value->site_no_id; $data['id'] = $value->id; $data['sale_id'] = $value->sale_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['first_name'] = $value->first_name; //$data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } //$data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,I.name as created_by,M.created_on,M.saledeed_charge,M.remaining_payment,M.stamp_duty_amount,M.doc_charge_amount,M.grand_total,M.status,H.layout_name,K.site_no,L.site_type,M.layout_name_id,M.site_no_id,M.sale_id,M.id as revised_id'); $this->db->from('mmg_customer A'); //$this->db->join('mmg_budget_followup G','G.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_revised_budget M','M.sale_id=J.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('G.progress','Architecture'); //$this->db->where('J.status','Approved'); $this->db->where('M.id',$value->id); $this->db->order_by('M.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['revised_id'] = $value->revised_id; $data['layout_id'] = $value->layout_name_id; $data['site_id'] = $value->site_no_id; $data['id'] = $value->id; $data['sale_id'] = $value->sale_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['first_name'] = $value->first_name; //$data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } //$data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,I.name as created_by,M.created_on,M.saledeed_charge,M.remaining_payment,M.stamp_duty_amount,M.doc_charge_amount,M.grand_total,M.status,H.layout_name,K.site_no,L.site_type,M.layout_name_id,M.site_no_id,M.sale_id,M.id as revised_id'); $this->db->from('mmg_customer A'); //$this->db->join('mmg_budget_followup G','G.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); //$this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); //$this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_revised_budget M','M.sale_id=J.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('G.progress','Architecture'); //$this->db->where('J.status','Approved'); $this->db->where('M.id',$value->id); $this->db->order_by('M.id','DESC'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['revised_id'] = $value->revised_id; $data['layout_id'] = $value->layout_name_id; $data['site_id'] = $value->site_no_id; $data['id'] = $value->id; $data['sale_id'] = $value->sale_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['first_name'] = $value->first_name; //$data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } //$data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } } public function get_revised_new_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.created_by',$id); $query = $this->db->get(); $result1 = $query->result(); $array = array(); $sale_id = []; foreach ($result1 as $key => $value) { array_push($sale_id,$value->sale_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Building Agreement'); $this->db->where('J.status','Approved'); $this->db->where('L.site_type!=','site'); $this->db->where('A.created_by',$id); if(!empty($value->sale_id)) { $this->db->where_not_in('J.id',$sale_id); } $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $result1 = $query->result(); $array = array(); $sale_id = []; foreach ($result1 as $key => $value) { array_push($sale_id,$value->sale_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Building Agreement'); $this->db->where('J.status','Approved'); $this->db->where('L.site_type!=','site'); if(!empty($value->sale_id)) { $this->db->where_not_in('J.id',$sale_id); } $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_revised_budget E'); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $result1 = $query->result(); $array = array(); $sale_id = []; foreach ($result1 as $key => $value) { array_push($sale_id,$value->sale_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Building Agreement'); $this->db->where('J.status','Approved'); $this->db->where('L.site_type!=','site'); if(!empty($value->sale_id)) { $this->db->where_not_in('J.id',$sale_id); } $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } } public function delete_revise_payment($cust_name,$layout,$site_number) { $this->db->query("delete from mmg_revise_payment_details where customer_id='".$cust_name."' and site_id='".$site_number."' and layout_id='".$layout."'"); } public function get_revised_payment_details($customer_id) { $this->db->select('B.*'); $this->db->from('mmg_revise_payment_details B'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.customer_id',$customer_id); $query=$this->db->get(); $res= $query->row(); if(empty($res)) { $this->db->select('A.*,B.percentage,B.percentage_tax,B.total_payment_amount,B.total_payment_amount_tax,total_percentage,total_payment_cost,B.id as ids,B.level_id'); $this->db->from('mmg_civil_master A'); $this->db->join('mmg_payment_details B','B.level_id = A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.customer_id',$customer_id); $query=$this->db->get(); return $query->result(); } else { $this->db->select('A.*,B.percentage,B.percentage_tax,B.total_payment_amount,B.total_payment_amount_tax,total_percentage,total_payment_cost,B.id as ids,B.level_id'); $this->db->from('mmg_civil_master A'); $this->db->join('mmg_revise_payment_details B','B.level_id = A.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.customer_id',$customer_id); $query=$this->db->get(); return $query->result(); } } public function get_channel_partners_emp() { $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department B',"B.id = A.department_id"); //$this->db->where('B.dept_name',"Channel Partner"); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_all_layouts_name() { $this->db->select('*'); $this->db->from('mmg_land_owner A'); $this->db->where('A.delete_status','ACTIVE'); // $this->db->where('A.layout_status','PENDING'); $this->db->order_by('ABS(A.sequence_number)','ASC'); $query=$this->db->get(); return $query->result(); } public function get_owner_result() { $this->db->select('A.*,I.name as created_by'); $this->db->from('mmg_land_owner A'); $this->db->join('mmg_login I','I.id=A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('I.delete_status','ACTIVE'); $query=$this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $data['id']= $value->id; $data['name']= $value->name; $data['contact_no']= $value->contact_no; $data['layout_name']= $value->layout_name; $data['pan_adhar']= $value->pan_adhar; $data['email']= $value->email; $data['address']= $value->address; $data['created_by']= $value->created_by; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_on'] = date('Y-m-d', strtotime($date)); array_push($array, $data); } return $array; } public function get_layout_details() { $this->db->select('A.*,B.first_name,C.name,I.name as created_by'); $this->db->from('mmg_layouts A'); $this->db->join('mmg_employees B','B.emp_id=A.agent_name','left'); $this->db->join('mmg_land_owner C','C.id=A.land_owners','left'); $this->db->join('mmg_login I','I.id=A.created_by','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','NOT_APPROVED'); // $this->db->where('C.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } public function get_approved_layout_list() { $this->db->select('A.*,B.first_name,C.name,I.name as created_by'); $this->db->from('mmg_layouts A'); $this->db->join('mmg_employees B','B.emp_id=A.agent_name','left'); $this->db->join('mmg_land_owner C','C.id=A.land_owners'); $this->db->join('mmg_login I','I.id=A.created_by'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','APPROVED'); $this->db->where('C.delete_status','ACTIVE'); $query=$this->db->get(); return $query->result(); } /*public function get_customer_followup_list_based_phone($id,$phone) { $value=""; $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.created_by',$id); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->order_by('D.id','DESC'); $this->db->order_by($sidx,$sord); $query = $this->db->get(); $value = $query->result(); } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->order_by('D.id','DESC'); $this->db->order_by($sidx,$sord); $query = $this->db->get(); $value = $query->result(); } foreach ($value as $key => $value) { if($value->progress == "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['follow_created_at'] = $value->created; $data['created_by'] = $value->login_name; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['remarks'] = $value->remarks; $data['follow_date'] = ""; $data['description'] = ""; } else { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $data['follow_date'] = $value->follow_date; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['description'] = $value->description; } $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); $array = array(); if($value->progress == "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['follow_created_at'] = $value->created; $data['created_by'] = $value->login_name; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['remarks'] = $value->remarks; $data['follow_date'] = ""; $data['description'] = ""; } else { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $data['follow_date'] = $value->follow_date; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['description'] = $value->description; } $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; }*/ public function get_customer_followup_list_based_phone($phone,$id) { $value=""; $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.created_by',$id); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->result(); } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->result(); } $array = array(); foreach ($value as $key => $value) { if($value->progress == "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['follow_created_at'] = $value->created; $data['created_by'] = $value->login_name; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['remarks'] = $value->remarks; $data['follow_date'] = ""; $data['description'] = ""; } else { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $data['follow_date'] = $value->follow_date; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['description'] = $value->description; } $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); $array = array(); if($value->progress == "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['follow_created_at'] = $value->created; $data['created_by'] = $value->login_name; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['remarks'] = $value->remarks; $data['follow_date'] = ""; $data['description'] = ""; } else { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $data['follow_date'] = $value->follow_date; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['description'] = $value->description; } $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } public function get_customer_followup_list_based_phone_count($phone,$id) { $value=""; $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.created_by',$id); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->result(); } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->result(); } $array = array(); foreach ($value as $key => $value) { if($value->progress == "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['follow_created_at'] = $value->created; $data['created_by'] = $value->login_name; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['remarks'] = $value->remarks; $data['follow_date'] = ""; $data['description'] = ""; } else { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $data['follow_date'] = $value->follow_date; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['description'] = $value->description; } $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } else { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.description,D.progress,D.follow_date,G.name as login_name'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by','left'); $this->db->join('mmg_login G','G.id=A.created_by','left'); $this->db->where('A.phone',$phone); $this->db->where('A.duplicate_cust !=','Duplicate'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); $array = array(); if($value->progress == "") { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $ref_person = $value->ref_person; $data['follow_created_at'] = $value->created; $data['created_by'] = $value->login_name; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['remarks'] = $value->remarks; $data['follow_date'] = ""; $data['description'] = ""; } else { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $data['ref_site_number'] = $value->ref_site_number; $data['follow_date'] = $value->follow_date; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['description'] = $value->description; } $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } return $array; } public function get_accounts_department_employee() { $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_department I','I.id=A.department_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('I.delete_status','ACTIVE'); $this->db->where('I.dept_name','Accounts & Purchase'); $query=$this->db->get(); return $query->result(); } public function datewise_attendance_report_list($report_date,$to_date,$employee,$date) { $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { if($employee != "All") { $where .= " and A.emp_id='$employee'"; } } $where .= " and B.branch='MMG'"; $where .= " group by A.entry_date,A.emp_id"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res= $result->result(); $report = array(); foreach ($res as $value) { $data['emp_id'] = $value->emp_id; $data['employee_id'] = $value->employee_id; $data['full_name'] = $value->full_name; $data['entry_date'] = $value->entry_date; $data['exit_date'] = $value->exit_date; $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { if($employee != "All") { $where .= " and A.entry_date='$value->entry_date'"; $where .= " and A.emp_id='$value->emp_id'"; } } $where .= " and B.branch='MMG'"; $sql = $select.$from.$where; $result = $this->db->query($sql); $row_count= $result->num_rows(); if($row_count <= 0) { $data['entry_time'] = '00'; $data['break_time'] = '00'; $data['exit_time'] = '00'; $data['working'] = '00'; } else { $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { $where .= " and A.entry_date='$value->entry_date'"; $where .= " and A.emp_id='$value->emp_id'"; $where .= " order by A.id ASC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res1= $result->row(); } if(!empty($res1->entry_time)) { $entry_time=$res1->entry_time; } else { $entry_time = '00:00'; } $select = "select A.*"; $from = " from mmg_employee_attendance A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; if(!empty($report_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') >= STR_TO_DATE('$report_date','%d-%m-%Y')"; } if(!empty($to_date)) { $where .= " and STR_TO_DATE(A.entry_date,'%d/%m/%Y') <= STR_TO_DATE('$to_date','%d-%m-%Y')"; } if(!empty($employee)) { $where .= " and A.entry_date='$value->entry_date'"; $where .= " and A.emp_id='$value->emp_id'"; $where .= " order by A.id DESC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res2= $result->row(); } $datetime = new DateTime($date); $date = $datetime->format('H:i'); $time= date('h:ia', strtotime($date)); if(!empty($res2->exit_time)) { $exit_time = $res2->exit_time; $logout_time = $res2->exit_time; } else { $exit_time = $time; $logout_time = '00:00'; } $data['entry_time'] = $entry_time; $data['exit_time'] = $logout_time; $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff = $time1->diff($time2); $hrs = $timediff->h; $min = $timediff->i; $sec = $timediff->s; $data['working'] = $hrs.':'.$min; $this->db->select('A.*'); $this->db->from('mmg_employee_attendance A'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.entry_date',$value->entry_date); $this->db->order_by('A.id','ASC'); $query=$this->db->get(); $row_count = $query->num_rows(); if($row_count > 1) { $this->db->select('A.*'); $this->db->from('mmg_employee_attendance A'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); // $this->db->where('A.entry_status!=',"Logged_IN"); $this->db->where('A.entry_date',$value->entry_date); $this->db->order_by('A.id','ASC'); $this->db->limit(1); $query=$this->db->get(); $asc = $query->row(); if(!empty($asc->exit_time)) { $exit = $asc->exit_time; } else { $exit = "00:00"; } $this->db->select('A.*'); $this->db->from('mmg_employee_attendance A'); $this->db->where('A.emp_id',$value->emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.entry_date',$value->entry_date); //$this->db->where('A.entry_status !=',"Logged_OUT"); $this->db->order_by('A.id','DESC'); $this->db->limit(1); $query=$this->db->get(); $desc = $query->row(); if(!empty($desc->entry_time)) { $entry = $desc->entry_time; } else { $entry = "00:00"; } if($entry !="00:00" && $exit !="00:00") { $time1 = new DateTime($exit); $time2 = new DateTime($entry); $timediff = $time1->diff($time2); $hrs = $timediff->h; $min = $timediff->i; $sec = $timediff->s; $data['break_time'] = $hrs.':'.$min; } else { $data['break_time'] = "00:00"; } } else { $data['break_time'] = "00:00"; } } array_push($report, $data); } return $report; } /* public function get_customer_sitevisiting_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date,H.layout_name,K.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; $array = array(); foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date,H.layout_name,K.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; $data['site_no'] = $value->site_no; $data['layout_name'] = $value->layout_name; array_push($array, $data); } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; $array = array(); foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date,H.layout_name,K.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; $data['site_no'] = $value->site_no; $data['layout_name'] = $value->layout_name; array_push($array, $data); } } } return $array; } } }*/ public function get_customer_sitevisiting_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date,H.layout_name,K.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; $array = array(); foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date,H.layout_name,K.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; $data['site_no'] = $value->site_no; $data['layout_name'] = $value->layout_name; array_push($array, $data); } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; $array5 = array(); foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,created_time,D.id as cf_id,D.description,D.progress,D.follow_date,H.layout_name,K.site_no'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->join('mmg_land_owner H','H.id=D.layout_id','left'); $this->db->join('mmg_sites K','K.id=D.site_id','left'); $this->db->where('A.id',$values); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); //$this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; $data['site_no'] = $value->site_no; $data['layout_name'] = $value->layout_name; array_push($array5, $data); } } return $array5; } } } public function get_customer_sitevisiting_list_based_phone($phone,$id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('A.phone',$phone); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.created_by',$id); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); //$this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('A.phone',$phone); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } else { $this->db->select('D.*'); $this->db->from('mmg_customer_followup D'); $this->db->where('D.delete_status','ACTIVE'); //$this->db->where('D.created_by',$id); $this->db->group_by('D.customer_id'); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $res1= $query->result(); $follow_customer_ids = []; foreach ($res1 as $key => $value1) { array_push($follow_customer_ids,$value1->customer_id); } if(!empty($follow_customer_ids)) { foreach ($follow_customer_ids as $key => $values) { $this->db->select('A.*,C.reference_type,A.created_at as created,F.name as created_by,D.created_at as follow_created_at,D.created_time,D.id as cf_id,D.description,D.progress,D.follow_date'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_followup D','D.customer_id = A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_login F','F.id=D.created_by'); $this->db->where('A.id',$values); $this->db->where('A.phone',$phone); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.delete_status','ACTIVE'); $this->db->limit(1); $this->db->order_by('D.id','DESC'); $query = $this->db->get(); $value = $query->row(); if(!empty($value)) { $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['nri_no'] = $value->nri_no; $data['address'] = $value->address; $data['reference_type'] = $value->reference_type; $data['created_by'] = $value->created_by; $data['follow_created_at'] = $value->follow_created_at; $datetime = new DateTime($value->created_time); $data['created_time'] = $datetime->format('H:i'); $data['ref_site_number'] = $value->ref_site_number; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_from'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_from'] = $reference->first_name; } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } } else { $data['ref_from'] = ''; } //$data['ref_layout_id'] = $value->ref_layout_id; if(!empty($value->ref_layout_id)) { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if(!empty($value->ref_site_number)) { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['enquiry_status'] = $value->progress; array_push($array, $data); } } } return $array; } } } public function get_site_visiting_sites($layout_id,$site_id,$followuser_id) { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->join('mmg_customer_site_visiting_followup D','D.customer_id = A.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('D.layout_id',$layout_id); $this->db->where('D.site_id',$site_id); $this->db->where('D.progress','Booking finalization'); //$this->db->where('A.id',$followuser_id); $query=$this->db->get(); return $query->result(); } public function get_saledeed_details($customer_id,$site_id,$layout_id) { $this->db->select('A.*,D.saledeed_value,E.north,E.south,E.west,E.east,E.site_no,E.east_west,E.north_south,E.sq_mt,F.id_no,G.layout_name as layout,B.name as customer_name,F.address,F.id_name'); $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_sales D','D.customer_name_id = B.id'); $this->db->join('mmg_sites E','E.id = D.site_no_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->join('mmg_land_owner G','G.id = D.layout_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $query=$this->db->get(); return $query->row(); } public function get_saledeed_details_for_amount($customer_id,$site_id,$layout_id) { $this->db->select('A.*,D.saledeed_value,E.north,E.south,E.west,E.east,E.site_no,E.east_west,E.north_south,E.sq_mt,F.id_no,G.name as layout,B.name as customer_name,B.address,F.id_name,F.address as booking_address'); $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_sales D','D.customer_name_id = B.id'); $this->db->join('mmg_sites E','E.id = D.site_no_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->join('mmg_land_owner G','G.id = D.layout_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $query=$this->db->get(); $res= $query->row(); if(empty($res)) { $this->db->select('A.saledeed_value,F.address as booking_address'); $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.customer_name_id',$customer_id); $this->db->where('A.site_no_id',$site_id); $this->db->where('A.layout_name_id',$layout_id); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,D.saledeed_value,E.north,E.south,E.west,E.east,E.site_no,E.east_west,E.north_south,E.sq_mt,F.id_no,G.name as layout,B.name as customer_name,B.address,F.id_name,F.address as booking_address'); $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_sales D','D.customer_name_id = B.id'); $this->db->join('mmg_sites E','E.id = D.site_no_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->join('mmg_land_owner G','G.id = D.layout_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $query=$this->db->get(); return $query->row(); } } public function get_revised_details() { $this->db->select('A.*'); $this->db->from('mmg_multilevel_budget A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.table_heading'); $query=$this->db->get(); return $query->result(); } public function delete_revised_design($insertion_count) { $this->db->query("delete from mmg_revised_design where revised_id='".$insertion_count."'"); } public function get_customer_details_for_revised_list($customer_id,$site_id,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_budget_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_budget_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } } public function get_architecture_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_budget_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_revised_budget J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.created_by',$id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Architecture'); $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_budget_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_revised_budget J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Architecture'); $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_budget_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_revised_budget J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Architecture'); $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } } public function get_execution_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_architecture_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_revised_budget J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.created_by',$id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Execution'); $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_architecture_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_revised_budget J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Execution'); $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,J.id as sale_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_architecture_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_revised_budget J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.site_number=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Execution'); $this->db->order_by('G.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['sale_id'] = $value->sale_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } } public function get_architecture_followup_list($user_id,$site_id,$layout_id) { $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_sales_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res3= $query->result(); $array = array(); foreach ($res3 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,G.name as customer_name'); $this->db->from('mmg_customer_followup A'); $this->db->join('mmg_customer G','G.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.employee_assigned'); $this->db->join('mmg_department D','D.id = A.depart_assigned'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); /*$this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id);*/ $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-2 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no,H.name as customer_name'); $this->db->from('mmg_customer_site_visiting_followup A'); $this->db->join('mmg_customer H','H.id = A.customer_id'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res= $query->result(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $data['customer_name'] = $value->customer_name; array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_booking_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned'); $this->db->join('mmg_department D','D.id = A.emp_department'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_budget_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned','left'); $this->db->join('mmg_department D','D.id = A.emp_department','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } $this->db->select('A.*,B.name,D.dept_name as department,C.full_name as employee,E.layout_name,F.site_no'); $this->db->from('mmg_architecture_followup A'); $this->db->join('mmg_login B','B.id = A.created_by'); $this->db->join('mmg_employees C','C.emp_id = A.emp_assigned','left'); $this->db->join('mmg_department D','D.id = A.emp_department','left'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_sites F','F.id = A.site_id','left'); if($user_id!=0){ $this->db->where('A.customer_id',$user_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); } $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->result(); foreach ($res2 as $key => $value) { $data['id'] = $value->id; $data['description'] = $value->description; $data['follow_date'] = $value->follow_date; $data['progress'] = $value->progress; $data['employee'] = $value->employee; $data['department'] = $value->department; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['name'] = $value->name; $data['created_at'] = $value->created_at; $data['yesterday'] = date("Y-m-d", strtotime( '-1 days' ) ); $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); array_push($array,$data); } return $array; } public function get_customer_details_for_architecture_list($customer_id,$site_id,$layout_id) { $this->db->select('A.*'); $this->db->from('mmg_architecture_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_architecture_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->limit(1); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,B.id as layout_id,C.id as site_id'); $this->db->from('mmg_budget_followup A'); $this->db->join('mmg_land_owner B','B.id=A.layout_id','left'); $this->db->join('mmg_sites C','C.id=A.site_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.customer_id',$customer_id); $this->db->where('A.site_id',$site_id); $this->db->where('A.layout_id',$layout_id); $this->db->order_by('A.id','DESC'); $query=$this->db->get(); return $query->row(); } } public function get_site_based_on_layout_for_records($layout_id) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.layout_id',$layout_id); $query=$this->db->get(); $res2= $query->result(); $site_ids = []; foreach ($res2 as $key => $value) { array_push($site_ids,$value->site_number); } if(!empty($site_ids)) { $this->db->select('A.*'); $this->db->from('mmg_sites A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.select_type !=','Godown'); $this->db->where('A.layout',$layout_id); $this->db->where_in('A.id',$site_ids); $this->db->order_by('ABS(A.site_no)','ASC'); $query=$this->db->get(); return $query->result(); } } public function get_edit_revised_design_data($revised_id) { $this->db->select('A.*'); $this->db->from('mmg_revised_design A'); $this->db->where('A.revised_id',$revised_id); $this->db->order_by('A.id'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); return $query->result(); } public function get_approved_registration_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->where('E.created_by',$id); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('M.delete_status','ACTIVE'); $this->db->where('M.status','APPROVED'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('G.id','DESC'); $this->db->where('A.created_by',$id); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('M.delete_status','ACTIVE'); $this->db->where('M.status','APPROVED'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('G.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_sales E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('M.delete_status','ACTIVE'); $this->db->where('M.status','APPROVED'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); $this->db->where('J.site_no_id',$value->site_no_id); $this->db->where('J.layout_name_id',$value->layout_name_id); $this->db->order_by('G.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } } return $array; } } } public function get_registration_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); $array = array(); $site_id = array(); foreach ($result as $key => $values) { array_push($site_id,$values->site_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); if(!empty($site_id)) { $this->db->where_not_in('J.site_no_id',$site_id); } $this->db->order_by('G.id','DESC'); $this->db->where('A.created_by',$id); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['saledeed_id'] = $value->saledeed_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); $site_id = array(); foreach ($result as $key => $values) { array_push($site_id,$values->site_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,M.id as saledeed_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); if(!empty($site_id)) { $this->db->where_not_in('J.site_no_id',$site_id); } $this->db->order_by('G.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['saledeed_id'] = $value->saledeed_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); $site_id = array(); foreach ($result as $key => $values) { array_push($site_id,$values->site_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,M.id as saledeed_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); if(!empty($site_id)) { $this->db->where_not_in('J.site_no_id',$site_id); } $this->db->order_by('G.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['saledeed_id'] = $value->saledeed_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } } public function get_dashboard_old_layout_list($id) { $this->db->select('A.*,E.layout_name'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->group_by('A.layout_id'); $this->db->where('A.status','Approved'); $query = $this->db->get(); $result= $query->result(); $array = array(); foreach ($result as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.layout_id',$value->layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_id'); $this->db->where('A.status','Approved'); $query = $this->db->get(); $result= $query->num_rows(); $data['total_site'] = $result; $data['layout_name'] = $value->layout_name; array_push($array,$data); } return $array; } public function get_dashboard_booking_layout_list($id) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $array = array(); if(!empty($res)) { $customer_id = array(); foreach ($res as $key => $values) { array_push($customer_id,$values->customer_name_id); } $this->db->select('A.*,H.layout_name'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_land_owner E','E.id = A.layout_id'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where_not_in('A.customer_id',$customer_id); $this->db->group_by('A.layout_id'); $this->db->order_by('H.id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.layout_id',$value->layout_id); $this->db->where_not_in('A.customer_id',$customer_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result2 = $query->num_rows(); $data['total_site'] = $result2; $data['layout_name'] = $value->layout_name; array_push($array,$data); } } else { $this->db->select('A.*,H.layout_name'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_land_owner E','E.id = A.layout_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->group_by('A.layout_id'); $this->db->order_by('H.id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.layout_id',$value->layout_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result2 = $query->num_rows(); $data['total_site'] = $result2; $data['layout_name'] = $value->layout_name; array_push($array,$data); } } return $array; } public function get_leave_employee_names($date) { $current_date = date('Y-m-d'); $this->db->select('A.*,E.full_name'); $this->db->from('mmg_apply_leave A'); $this->db->join('mmg_employees E','E.emp_id = A.employee_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('A.leave_date',$current_date); $query = $this->db->get(); $result = $query->result(); return $result; } public function get_total_customer_upto_booking($date) { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->where('A.delete_status','ACTIVE'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); return $query->result(); } public function get_old_layout_total_customer($date) { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $query = $this->db->get(); return $query->num_rows(); } public function get_booking_layout_total_customer($date) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $customer_id = array(); foreach ($res as $key => $value) { array_push($customer_id,$value->customer_name_id); } $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where_not_in('A.customer_id',$customer_id); $this->db->group_by('A.customer_id'); $query = $this->db->get(); return $query->num_rows(); } else { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); return $query->num_rows(); } } public function get_saled_customer($date) { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $query = $this->db->get(); $res= $query->result(); if(!empty($res)) { $total = 0; foreach ($res as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); if(!empty($value->customer_id)) { $this->db->where('A.customer_name_id !=',$value->customer_id); } $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $total+=$query->num_rows(); } return $total; } else { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); return $query->num_rows(); } } public function get_all_customer($customer_type) { if($customer_type == "All") { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); return $query->result(); } else if($customer_type == "old_layout_customer") { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales B','B.customer_name_id = A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_name_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('H.land_type','Old Layout'); $this->db->group_by('A.id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); return $query->result(); } else if($customer_type == "new_layout_customer") { $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->join('mmg_sales B','B.customer_name_id = A.id'); $this->db->join('mmg_land_owner E','E.id = B.layout_name_id','left'); $this->db->join('mmg_layouts H','H.land_owners = E.id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('H.land_type !=','Old Layout'); $this->db->group_by('A.id'); $this->db->order_by('A.id','DESC'); $query = $this->db->get(); return $query->result(); } } public function get_old_new_layouts($customer_type) { if($customer_type == "new_customer") { $this->db->select('A.*'); $this->db->from('mmg_bookings A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $res= $query->result(); $customer_id = []; foreach ($res as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('A.*'); $this->db->from('mmg_customer A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where_not_in('A.id',$customer_id); $query = $this->db->get(); $res= $query->result(); $array = array(); $data['total_cust']=$query->num_rows(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['name'] = $value->name; array_push($array,$data); } return $array; } else if($customer_type == "layout_customer") { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_id'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->group_by('A.layout_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $data['total_layout']=$query->num_rows(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['layout_name'] = $value->layout_name; array_push($array,$data); } return $array; } else if($customer_type == "booking_layout") { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_name_id); } $this->db->select('E.*'); $this->db->from('mmg_bookings A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_id'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where_not_in('A.customer_id',$customer_id); $this->db->group_by('A.layout_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $data['total_layout']= $query->num_rows(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['layout_name'] = $value->layout_name; array_push($array,$data); } return $array; } else if($customer_type == "saled_layout") { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $this->db->group_by('A.customer_id'); $query = $this->db->get(); $result = $query->result(); $customer_id = []; foreach ($result as $key => $value) { array_push($customer_id,$value->customer_id); } $this->db->select('E.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where_not_in('A.customer_name_id',$customer_id); $this->db->group_by('A.layout_name_id'); $this->db->order_by('E.id','ASC'); $query = $this->db->get(); $res= $query->result(); $array = array(); $data['total_layout']= $query->num_rows(); foreach ($res as $key => $value) { $data['id'] = $value->id; $data['layout_name'] = $value->layout_name; array_push($array,$data); } return $array; } } public function get_registration_done_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status !=','Approved'); $this->db->order_by('E.id','DESC'); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); $array = array(); $site_id = array(); foreach ($result as $key => $values) { array_push($site_id,$values->site_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); if(!empty($site_id)) { $this->db->where_in('J.site_no_id',$site_id); } $this->db->order_by('M.id','DESC'); $this->db->where('A.created_by',$id); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['saledeed_id'] = $value->saledeed_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } else { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status !=','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); $site_id = array(); foreach ($result as $key => $values) { array_push($site_id,$values->site_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,M.id as saledeed_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); if(!empty($site_id)) { $this->db->where_in('J.site_no_id',$site_id); } $this->db->order_by('M.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['saledeed_id'] = $value->saledeed_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } else { $this->db->select('E.*'); $this->db->from('mmg_saledeed_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status !=','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array = array(); $site_id = array(); foreach ($result as $key => $values) { array_push($site_id,$values->site_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,J.created_on,J.saledeed_charge,J.remaining_payment,J.stamp_duty_amount,J.doc_charge_amount,J.grand_total,J.status,H.layout_name,K.site_no,L.site_type,J.site_no_id,J.layout_name_id,M.id as saledeed_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_sales J','J.customer_name_id=A.id','left'); $this->db->join('mmg_login I','I.id=J.created_by','left'); $this->db->join('mmg_land_owner H','H.id=J.layout_name_id','left'); $this->db->join('mmg_sites K','K.id=J.site_no_id','left'); $this->db->join('mmg_bookings L','L.customer_id=A.id','left'); $this->db->join('mmg_saledeed_details M','M.site_id=J.site_no_id','left'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.progress','Sales Final Costing'); $this->db->where('J.status','Approved'); if(!empty($site_id)) { $this->db->where_in('J.site_no_id',$site_id); } $this->db->order_by('M.id','DESC'); $this->db->group_by('J.site_no_id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $data['saledeed_id'] = $value->saledeed_id; $data['site_id'] = $value->site_no_id; $data['layout_id'] = $value->layout_name_id; $data['id'] = $value->id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['saledeed_charge'] = $value->saledeed_charge; $data['remaining_payment'] = $value->remaining_payment; $data['stamp_duty_amount'] = $value->stamp_duty_amount; $data['doc_charge_amount'] = $value->doc_charge_amount; $data['grand_total'] = $value->grand_total; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $data['status'] = $value->status; $datetime = new DateTime($value->created_on); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_on); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; array_push($array, $data); } return $array; } } } public function get_dashboard_sales_list($id) { $this->db->select('A.*'); $this->db->from('mmg_saledeed_details A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.status','Approved'); $query = $this->db->get(); $res= $query->result(); $array = array(); if(!empty($res)) { foreach ($res as $key => $values) { $this->db->select('A.*,H.layout_name'); $this->db->from('mmg_sales A'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('A.customer_name_id !=',$values->customer_id); $this->db->group_by('A.layout_name_id','A.customer_name_id'); $this->db->order_by('H.id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.layout_name_id',$value->layout_name_id); $this->db->where('A.customer_name_id !=',$values->customer_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $result2 = $query->num_rows(); $data['total_site'] = $result2; $data['layout_name'] = $value->layout_name; //print_r($data); array_push($array,$data); } //die(); } } else { $this->db->select('A.*,H.layout_name'); $this->db->from('mmg_sales A'); $this->db->join('mmg_land_owner E','E.id = A.layout_name_id'); $this->db->join('mmg_layouts H','H.land_owners = E.id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->group_by('A.layout_name_id'); $this->db->order_by('H.id'); $query = $this->db->get(); $result = $query->result(); foreach ($result as $key => $value) { $this->db->select('A.*'); $this->db->from('mmg_sales A'); $this->db->join('mmg_customer B','B.id = A.customer_name_id'); $this->db->where('A.layout_name_id',$value->layout_name_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->group_by('A.customer_name_id'); $query = $this->db->get(); $result2 = $query->num_rows(); $data['total_site'] = $result2; $data['layout_name'] = $value->layout_name; array_push($array,$data); } } return $array; } public function get_reminder_site_visit($date) { $current_date = date('Y-m-d'); $date_split= explode('-', $current_date); $y = $date_split[0]; $m = $date_split[1]; $d = $date_split[2]+1; $actual_date = $y.'-'.$m.'-'.$d; $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.follow_date',$actual_date); $query = $this->db->get(); $data['reminder_site_visit'] = $query->num_rows(); return $data; } public function get_reminder_registration($date) { $current_date = date('Y-m-d'); $date_split= explode('-', $current_date); $y = $date_split[0]; $m = $date_split[1]; $d = $date_split[2]+1; $actual_date = $y.'-'.$m.'-'.$d; $this->db->select('A.*'); $this->db->from('mmg_booking_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.follow_date',$actual_date); $query = $this->db->get(); $data['reminder_registration'] = $query->num_rows(); return $data; } public function get_send_reminder_site_visit($date) { $current_date = date('Y-m-d'); $date_split= explode('-', $current_date); $y = $date_split[0]; $m = $date_split[1]; $d = $date_split[2]+1; $actual_date = $y.'-'.$m.'-'.$d; $this->db->select('A.*'); $this->db->from('mmg_customer_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.follow_date',$actual_date); $query = $this->db->get(); return $query->result(); } public function get_send_reminder_registration($date) { $current_date = date('Y-m-d'); $date_split= explode('-', $current_date); $y = $date_split[0]; $m = $date_split[1]; $d = $date_split[2]+1; $actual_date = $y.'-'.$m.'-'.$d; $this->db->select('A.*'); $this->db->from('mmg_booking_followup A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.follow_date',$actual_date); $query = $this->db->get(); return $query->result(); } public function get_loan_progress_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('E.*'); $this->db->from('mmg_customer_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array3 = array(); foreach ($result as $key => $value) { array_push($array3,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); if(!empty($array2)) { $this->db->where_not_in('A.id',$array2); } if(!empty($array3)) { $this->db->where_not_in('A.id',$array3); } $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('E.*'); $this->db->from('mmg_customer_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array3 = array(); foreach ($result as $key => $value) { array_push($array3,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); if(!empty($array2)) { $this->db->where_not_in('A.id',$array2); } if(!empty($array3)) { $this->db->where_not_in('A.id',$array3); } $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('E.*'); $this->db->from('mmg_customer_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array3 = array(); foreach ($result as $key => $value) { array_push($array3,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); if(!empty($array2)) { $this->db->where_not_in('A.id',$array2); } if(!empty($array3)) { $this->db->where_not_in('A.id',$array3); } $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } return $array; } } public function edit_saleagreement_details($site_id) { $this->db->select('A.*,E.north,E.south,E.west,E.east,E.site_no,E.east_west,E.north_south,E.sq_mt,F.id_no,G.layout_name as layout,B.name as customer_name,F.address as booking_address,F.id_name'); $this->db->select('A.*'); $this->db->from('mmg_customer_agreement_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_sites E','E.id = A.site_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->join('mmg_land_owner G','G.id =F.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.site_id',$site_id); $query=$this->db->get(); $res= $query->row(); if(!empty($res)) { $this->db->select('A.*,E.north,E.south,E.west,E.east,E.site_no,E.east_west,E.north_south,E.sq_mt,F.id_no,G.layout_name as layout,B.name as customer_name,F.address as booking_address,F.id_name'); $this->db->select('A.*'); $this->db->from('mmg_customer_agreement_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_sites E','E.id = A.site_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->join('mmg_land_owner G','G.id =F.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.site_id',$site_id); $query=$this->db->get(); return $query->row(); } else { $this->db->select('A.*,E.north,E.south,E.west,E.east,E.site_no,E.east_west,E.north_south,E.sq_mt,F.id_no,G.layout_name as layout,B.name as customer_name,F.address as booking_address,F.id_name'); $this->db->select('A.*'); $this->db->from('mmg_bank_agreement_details A'); $this->db->join('mmg_customer B','B.id = A.customer_id'); $this->db->join('mmg_sites E','E.id = A.site_id'); $this->db->join('mmg_bookings F','F.customer_id = B.id'); $this->db->join('mmg_land_owner G','G.id =F.layout_id'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('F.delete_status','ACTIVE'); $this->db->where('A.site_id',$site_id); $query=$this->db->get(); return $query->row(); } } public function get_approved_loan_progress_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.progress,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_sale_agreement_details L','L.site_id=H.site_number','left'); $this->db->where('L.status','Approved'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $this->db->where('A.created_by',$id); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.progress,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_sale_agreement_details L','L.site_id=H.site_number','left'); $this->db->where('L.status','Approved'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,G.progress,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_sale_agreement_details L','L.site_id=H.site_number','left'); $this->db->where('L.status','Approved'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->order_by('G.id','DESC'); $this->db->group_by('H.site_number'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; //$data['date'] =$value->created; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } return $array; } } public function get_salary_slip($emp_id,$months,$year,$date) { $this->db->select('A.*,B.full_name,B.cl,B.ml'); $this->db->from('mmg_employee_attendance A'); $this->db->join('mmg_employees B','B.emp_id = A.emp_id'); $this->db->where('A.emp_id',$emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('B.delete_status','ACTIVE'); $this->db->where('B.branch','MMG'); $this->db->group_by('A.entry_date'); $query=$this->db->get(); $res1= $query->result(); $total = 0; $total_minutes = 0; foreach ($res1 as $key => $value) { $entry = $value->entry_date; $entry_data = explode("/", $entry); $entry_month = $entry_data[1]; $entry_year = $entry_data[2]; if($entry_month == $months && $entry_year == $year) { $select = "select A.*,B.employee_id,B.full_name"; $from = " from mmg_employee_attendance A JOIN mmg_employees B ON A.emp_id = B.emp_id"; $where = " where "; $where .= " A.delete_status ='ACTIVE' and B.delete_status = 'ACTIVE'"; $where .= " and A.entry_date='$value->entry_date'"; $where .= " and A.emp_id='$value->emp_id'"; $where .= " order by A.id ASC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res1= $result->row(); if(!empty($res1->entry_time)) { $entry_time=$res1->entry_time; } else { $entry_time = '00:00'; } $select = "select A.*"; $from = " from mmg_employee_attendance A"; $where = " where "; $where .= " A.delete_status ='ACTIVE'"; $where .= " and A.entry_date='$value->entry_date'"; $where .= " and A.emp_id='$value->emp_id'"; $where .= " order by A.id DESC"; $where .= " limit 1"; $sql = $select.$from.$where; $result = $this->db->query($sql); $res2= $result->row(); $datetime = new DateTime($date); $date = $datetime->format('H:i'); $time= date('h:ia', strtotime($date)); if(!empty($res2->exit_time)) { $exit_time = $res2->exit_time; $logout_time = $res2->exit_time; } else { $exit_time = $time; $logout_time = '00:00'; } $time1 = new DateTime($entry_time); $time2 = new DateTime($exit_time); $timediff = $time1->diff($time2); $hrs = $timediff->h; $min = $timediff->i; $sec = $timediff->s; $total_working = $hrs.':'.$min; //$total=strtotime($total)+strtotime($total_working); $total+=$hrs; $total_minutes+=$min; } } $price = ($total_minutes)/60; $total_hrs = $price+$total; $d=cal_days_in_month(CAL_GREGORIAN,$months,$year); $working_days = round($total_hrs/8); $total_Days = $working_days+4; if($total_Days == $d) { $data['total_days'] = $total_Days; $data['extra_days'] = 0; } else if($total_Days > $d) { $data['total_days'] = $d; $data['extra_days'] = $total_Days-$d; } else { $data['total_days'] = $total_Days; $data['extra_days'] = 0; } $data['actual_days']= $d; $this->db->select('D.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_apply_leave D','D.employee_id = A.emp_id'); $this->db->where('A.emp_id',$emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query=$this->db->get(); $res1= $query->result(); $total_taking_cl=0; foreach ($res1 as $key => $value) { $entry = $value->leave_date; $entry_data = explode("-", $entry); $entry_month = $entry_data[1]; $entry_year = $entry_data[0]; $id = $value->id; if($entry_month == $months && $entry_year == $year) { $this->db->select('D.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_apply_leave D','D.employee_id = A.emp_id'); $this->db->where('D.id',$id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query=$this->db->get(); $total_taking_cl+= $query->num_rows(); } } $this->db->select('A.*'); $this->db->from('mmg_employees A'); $this->db->join('mmg_apply_leave D','D.employee_id = A.emp_id'); $this->db->where('A.emp_id',$emp_id); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('D.delete_status','ACTIVE'); $query=$this->db->get(); $res2= $query->row(); if(!empty($res2)) { $total_cl = $res2->cl+$res2->ml; } else { $total_cl = 0; } $data['remain_el'] = $total_cl-$total_taking_cl; if($total_cl == $total_taking_cl) { $data['lop'] = 0; } else if($total_cl < $total_taking_cl) { $data['lop'] = $total_taking_cl-$total_cl; } else { $data['lop'] = 0; } return $data; } public function customer_website() { $this->db->select('A.*'); $this->db->from('mmg_website_customer A'); $this->db->where('A.status !=','website'); $this->db->order_by('A.id',"DESC"); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $values) { $data['id'] = $values->id; $data['name'] = $values->name; $follow_created_at = new DateTime($values->created_on); $date2 = $follow_created_at->format('d-m-Y'); $data['created_on'] = date('d-m-Y', strtotime($date2)); $datetime = new DateTime($values->created_on); $date = $datetime->format('H:i:s'); $data['created_time'] = date('h:i:s', strtotime($date)); array_push($array,$data); } return $array; } public function customer_facebook() { $this->db->select('A.*'); $this->db->from('mmg_facebook_leads A'); $this->db->where('A.status !=','website'); $this->db->order_by('A.id',"DESC"); $query=$this->db->get(); $res= $query->result(); $array = array(); foreach ($res as $key => $values) { $data['id'] = $values->id; $data['name'] = $values->name; $data['ads_id'] = $values->ads_id; $data['site_dimension'] = $values->site_dimension; $data['bedroom'] = $values->bedroom; $follow_created_at = new DateTime($values->created_at); $date2 = $follow_created_at->format('d-m-Y'); $data['created_on'] = date('d-m-Y', strtotime($date2)); $datetime = new DateTime($values->created_at); $date = $datetime->format('H:i:s'); $data['created_time'] = date('h:i:s', strtotime($date)); array_push($array,$data); } return $array; } public function get_customer_sale_agreement_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_customer_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array3 = array(); foreach ($result as $key => $value) { array_push($array3,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array3); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('E.*'); $this->db->from('mmg_customer_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array3 = array(); foreach ($result as $key => $value) { array_push($array3,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array3); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_customer_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array3 = array(); foreach ($result as $key => $value) { array_push($array3,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array3); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } return $array; } } public function get_bank_sale_agreement_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status',''); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } return $array; } } public function get_approved_bank_sale_agreement_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } return $array; } } public function get_approved_customer_sale_agreement_list($id) { $this->db->select('A.*'); $this->db->from('mmg_login A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$id); $query=$this->db->get(); $row= $query->row(); $array = array(); if(!empty($row)) { $this->db->select('A.*'); $this->db->from('mmg_department A'); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('A.id',$row->department); $query=$this->db->get(); $row1= $query->row(); if(!empty($row1)) { $dept_name = $row1->dept_name; if($dept_name == "Channel Partner") { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } } else { $this->db->select('E.*'); $this->db->from('mmg_bank_agreement_details E'); $this->db->where('E.delete_status','ACTIVE'); $this->db->where('E.status','Approved'); $this->db->order_by('E.id','DESC'); $query = $this->db->get(); $result = $query->result(); $array2 = array(); foreach ($result as $key => $value) { array_push($array2,$value->customer_id); } $this->db->select('A.*,C.reference_type,D.first_name,E.dept_name,I.name as created_by,G.created_at,G.created_time,H.site_type,J.layout_name,K.site_no,H.site_number,H.layout_id,G.id as booking_follow_id'); $this->db->from('mmg_customer A'); $this->db->join('mmg_booking_followup G','G.customer_id=A.id'); $this->db->join('mmg_sales_followup M','M.customer_id=A.id','left'); $this->db->join('mmg_reference C','C.id=A.ref_type','left'); $this->db->join('mmg_employees D','D.emp_id=G.emp_assigned','left'); $this->db->join('mmg_department E','E.id=G.emp_department','left'); $this->db->join('mmg_login I','I.id=G.created_by','left'); $this->db->join('mmg_bookings H','H.site_number=G.site_id','left'); $this->db->join('mmg_land_owner J','J.id=H.layout_id','left'); $this->db->join('mmg_sites K','K.id=H.site_number','left'); $this->db->join('mmg_layouts N','N.land_owners=J.id','left'); $this->db->where('M.progress','Loan Followup '); $this->db->where('A.delete_status','ACTIVE'); $this->db->where('G.delete_status','ACTIVE'); $this->db->where('H.delete_status','ACTIVE'); $this->db->where('N.layout_status','PROCESSING'); $this->db->where_in('A.id',$array2); $this->db->order_by('M.id','DESC'); $this->db->group_by('G.site_id'); $query = $this->db->get(); $result = $query->result(); } foreach ($result as $key => $value) { $data['booking_follow_id'] = $value->booking_follow_id; $data['id'] = $value->id; $data['layout_id'] = $value->layout_id; $data['name'] = $value->name; $data['phone'] = $value->phone; $data['email'] = $value->email; $data['address'] = $value->address; $data['nri_no'] = $value->nri_no; $data['reference_type'] = $value->reference_type; $data['first_name'] = $value->first_name; $data['dept_name'] = $value->dept_name; $data['created_by'] = $value->created_by; $data['site_type'] = $value->site_type; $data['layout_name'] = $value->layout_name; $data['site_no'] = $value->site_no; $datetime = new DateTime($value->created_time); $date = $datetime->format('H:i'); $data['created_time'] = date('h:i', strtotime($date)); $datetime = new DateTime($value->created_at); $date = $datetime->format('Y-m-d'); $data['created_date'] = date('Y-m-d', strtotime($date)); $ref_person = $value->ref_person; if($ref_person != '') { if($value->reference_type == 'Old Customer') { $this->db->select('D.name'); $this->db->from('mmg_customer D'); $this->db->where('D.id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); $data['ref_person'] = $reference->name; } else if($value->reference_type == 'Staff' || $value->reference_type == 'Channel Partner') { $this->db->select('D.first_name'); $this->db->from('mmg_employees D'); $this->db->where('D.emp_id',$value->ref_person); $this->db->where('D.delete_status','ACTIVE'); $query = $this->db->get(); $reference = $query->row(); if(!empty($reference->first_name)) { $data['ref_person'] = $reference->first_name; } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } } else { $data['ref_person'] = ''; } $data['ref_site_number'] = $value->ref_site_number; if($data['ref_site_number'] != '') { $this->db->select('E.layout_name'); $this->db->from('mmg_land_owner E'); $this->db->where('E.id',$value->ref_layout_id); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $layout = $query->row(); $data['ref_layout'] = $layout->layout_name; } else { $data['ref_layout'] = ''; } if($data['ref_site_number'] != '') { $this->db->select('E.site_no'); $this->db->from('mmg_sites E'); $this->db->where('E.id',$value->ref_site_number); $this->db->where('E.delete_status','ACTIVE'); $query = $this->db->get(); $site = $query->row(); $data['ref_site_number'] = $site->site_no; } else { $data['ref_site_number'] = ''; } $data['remarks'] = $value->remarks; $data['site_id'] = $value->site_number; array_push($array, $data); } return $array; } } } ?>