Current File : /home/inlingua/public_html/sensoriumpsychologists.com/backup/screening/franchise/reports.php
<?php
require_once("../franchise_back/database_func.php");
class reports
{
	private $franchise_id;
	
	private $pages,$per_page,$page_no,$sort_by,$sort_order;
	private $application_date_from,$application_date_to,$registration_date_from,$registration_date_to;
	public function __construct()
	{
		$this->per_page="50";
		$this->page_no="0";
		$this->sort_by="";
		$this->sort_order="ASC";
		$this->application_date_from="0000-00-00";
		$this->application_date_to="0000-00-00";
		$this->registration_date_from="0000-00-00";
		$this->registration_date_to="0000-00-00";
	}
	public function set_value($variable_name,$new_value)
	{
		switch($variable_name)
		{
			case 'franchise_id':$this->franchise_id=$new_value;break;
			case 'per_page':$this->per_page=$new_value;break;
			case 'page_no':$this->page_no=$new_value;break;
			case 'sort_by':$this->sort_by=$new_value;break;
			case 'sort_order':$this->sort_order=$new_value;break;
			
			case 'application_date_from':$this->application_date_from=$new_value;break;
			case 'application_date_to':$this->application_date_to=$new_value;break;
			case 'registration_date_from':$this->registration_date_from=$new_value;break;
			case 'registration_date_to':$this->registration_date_to=$new_value;break;
		}
	}
	public function get_value($variable_name)
	{
		$to_return="";
		switch($variable_name)
		{
			case 'sort_by':$to_return=$this->sort_by;break;
			case 'sort_order':$to_return=$this->sort_order;break;
			case 'per_page':$to_return=$this->per_page;break;
			case 'page_no':$to_return=$this->page_no;break;
			
			case 'application_date_from':$to_return=$this->application_date_from;break;
			case 'application_date_to':$to_return=$this->application_date_to;break;
			case 'registration_date_from':$to_return=$this->registration_date_from;break;
			case 'registration_date_to':$to_return=$this->registration_date_to;break;
		}
		return $to_return;
	}
	public function pagination()
	{
		if($this->pages>1)
		{
			echo("<tr>");
			echo("<td>Page : ");
			for($i=1;$i<=$this->pages;$i++)
			{
				$j=$i-1;
				if($this->page_no==$j)
				{
					echo(" ".$i." ");
				}
				else
				{
					echo(" <a href=\"javascript:submit_form_page_no('".$j."')\">".$i."</a> ");
				}
			}
		}
		echo("</td></tr>");
	}
	public function all_active_children_report_between()
	{
		$sort_by=$this->sort_by;
		$sort_order=$this->sort_order;
		$page_no=$this->page_no;
		$per_page=$this->per_page;
		$franchise_id=$this->franchise_id;
		$registration_date_from=$this->registration_date_from;
		$registration_date_to=$this->registration_date_to;
		
		$total=0;
		
		$start=$per_page*$page_no;
		$sno=$per_page*$page_no+1;
		
		$mysql_obj=new mysql_functions_class;
		
		$mysql_obj->open_connection();
		$sort_by=$mysql_obj->real_escape($sort_by);
		$sort_order=$mysql_obj->real_escape($sort_order);
		$per_page=$mysql_obj->real_escape($per_page);
		$page_no=$mysql_obj->real_escape($page_no);
		$registration_date_from=$mysql_obj->real_escape($registration_date_from);
		$registration_date_to=$mysql_obj->real_escape($registration_date_to);
		
		if($sort_by=="")
		{
			$sort_by="a.name";
		}
		
		$prepared_statement="SELECT SQL_CALC_FOUND_ROWS a.* FROM shristi_child_details a WHERE a.franchise_id='$franchise_id' AND a.status!='applied' AND a.status='active'";
		if($registration_date_from!="0000-00-00")
		{
			$prepared_statement.=" AND registration_date!='0000-00-00' AND registration_date>='$registration_date_from' ";
		}
		if($registration_date_to!="0000-00-00")
		{
			$prepared_statement.=" AND registration_date!='0000-00-00' AND registration_date<='$registration_date_to' ";
		}
		
		$prepared_statement.=" ORDER BY $sort_by $sort_order LIMIT $start,$per_page";
		$res=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$prepared_statement="SELECT FOUND_ROWS() AS total";
		$res_total=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$detail_total=$res_total->fetch_assoc();
		$total=$detail_total['total'];
		
		$mysql_obj->close_connection();
			
		$this->total=$total;
		
		$pages_1=$total%$per_page;
		$pages=(int)($total/$per_page);
		if($pages_1>0)
		{
			$pages++;
		}
		$this->pages=$pages;
		while($detail=$res->fetch_assoc())
		{
			echo("<tr valign=\"top\">");
			echo("<td>".$sno."</td>");
			echo("<td><a href=\"view_child.php?ref_no=".$detail['table_id']."\">".$detail['registration_no']."<a/></td>");
			
			echo("<td>".$detail['name']."</td>");
			echo("<td>".$detail['age']." yrs</td>");
			echo("<td>".$detail['gender']."</td>");
			echo("<td>");
			switch($detail['education'])
			{
				case '1' :echo("1st");break;
				case '2' :echo("2nd");break;
				case '3' :echo("3rd");break;
				case '4' :echo("4th");break;
				case '5' :echo("5th");break;
				case '6' :echo("6th");break;
				case '7' :echo("7th");break;
				case '8' :echo("8th");break;
				case '9' :echo("9th");break;
				case '10' :echo("10th");break;
			}
			echo(" std</td>");
			echo("<td>");
			$dob=$detail['registration_date'];
			if($dob!="0000-00-00")
			{
				$date_obj = new DateTime($dob);
				$dob=$date_obj->format('d-M-Y');
				echo($dob);
			}
			echo("</td>");
			echo("<td>".$detail['status']."</td>");
			
			echo("<td><a href=\"student_details.php?ref_no=".$detail['table_id']."\">".'View Child'."<a/></td>");
			echo("</tr>");
			$sno++;
		}
	}
	public function all_pending_screening_children_report_between()
	{
		$sort_by=$this->sort_by;
		$sort_order=$this->sort_order;
		$page_no=$this->page_no;
		$per_page=$this->per_page;
		$franchise_id=$this->franchise_id;
		$application_date_from=$this->application_date_from;
		$application_date_to=$this->application_date_to;
		
		$total=0;
		
		$start=$per_page*$page_no;
		$sno=$per_page*$page_no+1;
		
		$mysql_obj=new mysql_functions_class;
		
		$mysql_obj->open_connection();
		$sort_by=$mysql_obj->real_escape($sort_by);
		$sort_order=$mysql_obj->real_escape($sort_order);
		$per_page=$mysql_obj->real_escape($per_page);
		$page_no=$mysql_obj->real_escape($page_no);
		$application_date_from=$mysql_obj->real_escape($application_date_from);
		$application_date_to=$mysql_obj->real_escape($application_date_to);
		
		if($sort_by=="")
		{
			$sort_by="a.name";
		}
		
		$prepared_statement="SELECT SQL_CALC_FOUND_ROWS a.*,DATEDIFF(a.next_end_date,CURDATE()) AS days_left FROM shristi_child_details a LEFT JOIN shristi_questionnaires_permanent_answers b ON b.ref_no=a.table_id WHERE a.franchise_id='$franchise_id' AND a.status='active' AND DATEDIFF(a.next_end_date,CURDATE())>=0 AND DATEDIFF(a.next_end_date,CURDATE())<=30 AND b.ref_no IS null ";
		
		if($application_date_from!="0000-00-00")
		{
			$prepared_statement.=" AND DATE(created_date)!='0000-00-00' AND DATE(created_date)>='$application_date_from' ";
		}
		if($application_date_to!="0000-00-00")
		{
			$prepared_statement.=" AND DATE(created_date)!='0000-00-00' AND DATE(created_date)<='$application_date_to' ";
		}
		
		$prepared_statement.=" ORDER BY $sort_by $sort_order LIMIT $start,$per_page";
		$res=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$prepared_statement="SELECT FOUND_ROWS() AS total";
		$res_total=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$detail_total=$res_total->fetch_assoc();
		$total=$detail_total['total'];
		
		$mysql_obj->close_connection();
			
		$this->total=$total;
		
		$pages_1=$total%$per_page;
		$pages=(int)($total/$per_page);
		if($pages_1>0)
		{
			$pages++;
		}
		$this->pages=$pages;
		while($detail=$res->fetch_assoc())
		{
			echo("<tr valign=\"top\">");
			echo("<td>".$sno."</td>");
			
			echo("<td><a href=\"view_child.php?ref_no=".$detail['table_id']."\">".$detail['registration_no']."<a/></td>");
			echo("<td>".$detail['name']."</td>");
			echo("<td>".$detail['age']." yrs</td>");
			echo("<td>".$detail['gender']."</td>");
			echo("<td>");
			switch($detail['education'])
			{
				case '1' :echo("1st");break;
				case '2' :echo("2nd");break;
				case '3' :echo("3rd");break;
				case '4' :echo("4th");break;
				case '5' :echo("5th");break;
				case '6' :echo("6th");break;
				case '7' :echo("7th");break;
				case '8' :echo("8th");break;
				case '9' :echo("9th");break;
				case '10' :echo("10th");break;
			}
			echo(" std</td>");
			echo("<td>");
			$dob=date('Y-m-d', strtotime($detail['created_date']));
			if($dob!="0000-00-00")
			{
				$date_obj = new DateTime($dob);
				$dob=$date_obj->format('d-M-Y');
				echo($dob);
			}
			echo("</td>");
			echo("<td>".$detail['days_left']."</td>");
			echo("<td>".$detail['status']."</td>");
			echo("</tr>");
			$sno++;
		}
	}
	public function all_pending_children_report_between()
	{
		$sort_by=$this->sort_by;
		$sort_order=$this->sort_order;
		$page_no=$this->page_no;
		$per_page=$this->per_page;
		$franchise_id=$this->franchise_id;
		$application_date_from=$this->application_date_from;
		$application_date_to=$this->application_date_to;
		
		$total=0;
		
		$start=$per_page*$page_no;
		$sno=$per_page*$page_no+1;
		
		$mysql_obj=new mysql_functions_class;
		
		$mysql_obj->open_connection();
		$sort_by=$mysql_obj->real_escape($sort_by);
		$sort_order=$mysql_obj->real_escape($sort_order);
		$per_page=$mysql_obj->real_escape($per_page);
		$page_no=$mysql_obj->real_escape($page_no);
		$application_date_from=$mysql_obj->real_escape($application_date_from);
		$application_date_to=$mysql_obj->real_escape($application_date_to);
		
		if($sort_by=="")
		{
			$sort_by="a.name";
		}
		
		$prepared_statement="SELECT SQL_CALC_FOUND_ROWS a.* FROM shristi_child_details a WHERE a.franchise_id='$franchise_id' AND a.status='active'";
		if($application_date_from!="0000-00-00")
		{
			$prepared_statement.=" AND DATE(created_date)!='0000-00-00' AND DATE(created_date)>='$application_date_from' ";
		}
		if($application_date_to!="0000-00-00")
		{
			$prepared_statement.=" AND DATE(created_date)!='0000-00-00' AND DATE(created_date)<='$application_date_to' ";
		}
		
		$prepared_statement.=" ORDER BY $sort_by $sort_order LIMIT $start,$per_page";
		$res=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$prepared_statement="SELECT FOUND_ROWS() AS total";
		$res_total=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$detail_total=$res_total->fetch_assoc();
		$total=$detail_total['total'];
		
		$mysql_obj->close_connection();
			
		$this->total=$total;
		
		$pages_1=$total%$per_page;
		$pages=(int)($total/$per_page);
		if($pages_1>0)
		{
			$pages++;
		}
		$this->pages=$pages;
		while($detail=$res->fetch_assoc())
		{
			echo("<tr valign=\"top\">");
			echo("<td>".$sno."</td>");
			
			echo("<td><a href=\"view_child.php?ref_no=".$detail['table_id']."\">".$detail['registration_no']."<a/></td>");
			echo("<td>".$detail['name']."</td>");
			echo("<td>".$detail['age']." yrs</td>");
			echo("<td>".$detail['gender']."</td>");
			echo("<td>");
			switch($detail['education'])
			{
				case '1' :echo("1st");break;
				case '2' :echo("2nd");break;
				case '3' :echo("3rd");break;
				case '4' :echo("4th");break;
				case '5' :echo("5th");break;
				case '6' :echo("6th");break;
				case '7' :echo("7th");break;
				case '8' :echo("8th");break;
				case '9' :echo("9th");break;
				case '10' :echo("10th");break;
			}
			echo(" std</td>");
			echo("<td>");
			$dob=date('Y-m-d', strtotime($detail['created_date']));
			if($dob!="0000-00-00")
			{
				$date_obj = new DateTime($dob);
				$dob=$date_obj->format('d-M-Y');
				echo($dob);
			}
			echo("</td>");
			echo("<td>".$detail['status']."</td>");
			echo("</tr>");
			$sno++;
		}
	}
	public function all_applied_children_report_between()
	{
		$sort_by=$this->sort_by;
		$sort_order=$this->sort_order;
		$page_no=$this->page_no;
		$per_page=$this->per_page;
		$franchise_id=$this->franchise_id;
		$application_date_from=$this->application_date_from;
		$application_date_to=$this->application_date_to;
		
		$total=0;
		
		$start=$per_page*$page_no;
		$sno=$per_page*$page_no+1;
		
		$mysql_obj=new mysql_functions_class;
		
		$mysql_obj->open_connection();
		$sort_by=$mysql_obj->real_escape($sort_by);
		$sort_order=$mysql_obj->real_escape($sort_order);
		$per_page=$mysql_obj->real_escape($per_page);
		$page_no=$mysql_obj->real_escape($page_no);
		$application_date_from=$mysql_obj->real_escape($application_date_from);
		$application_date_to=$mysql_obj->real_escape($application_date_to);
		
		if($sort_by=="")
		{
			$sort_by="a.name";
		}
		
		$prepared_statement="SELECT SQL_CALC_FOUND_ROWS a.*,b.table_id AS payment_no FROM shristi_child_details a INNER JOIN shristi_students_payments b ON b.student_id=a.table_id WHERE a.franchise_id='$franchise_id' AND a.status='applied' AND b.type='initial'";
		if($application_date_from!="0000-00-00")
		{
			$prepared_statement.=" AND DATE(created_date)!='0000-00-00' AND DATE(created_date)>='$application_date_from' ";
		}
		if($application_date_to!="0000-00-00")
		{
			$prepared_statement.=" AND DATE(created_date)!='0000-00-00' AND DATE(created_date)<='$application_date_to' ";
		}
		
		$prepared_statement.=" ORDER BY $sort_by $sort_order LIMIT $start,$per_page";
		$res=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$prepared_statement="SELECT FOUND_ROWS() AS total";
		$res_total=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$detail_total=$res_total->fetch_assoc();
		$total=$detail_total['total'];
		
		$mysql_obj->close_connection();
			
		$this->total=$total;
		
		$pages_1=$total%$per_page;
		$pages=(int)($total/$per_page);
		if($pages_1>0)
		{
			$pages++;
		}
		$this->pages=$pages;
		while($detail=$res->fetch_assoc())
		{
			echo("<tr valign=\"top\">");
			echo("<td>".$sno."</td>");
			
			echo("<td>".$detail['registration_no']."</td>");
			echo("<td>".$detail['name']."</td>");
			echo("<td>".$detail['age']." yrs</td>");
			echo("<td>".$detail['gender']."</td>");
			echo("<td>");
			switch($detail['education'])
			{
				case '1' :echo("1st");break;
				case '2' :echo("2nd");break;
				case '3' :echo("3rd");break;
				case '4' :echo("4th");break;
				case '5' :echo("5th");break;
				case '6' :echo("6th");break;
				case '7' :echo("7th");break;
				case '8' :echo("8th");break;
				case '9' :echo("9th");break;
				case '10' :echo("10th");break;
			}
			echo(" std</td>");
			echo("<td>");
			$dob=date('Y-m-d', strtotime($detail['created_date']));
			if($dob!="0000-00-00")
			{
				$date_obj = new DateTime($dob);
				$dob=$date_obj->format('d-M-Y');
				echo($dob);
			}
			echo("</td>");
			echo("<td><a href=\"student_initial_fees_payment.php?payment_no=".$detail['payment_no']."\">Pay Now</a>
			<a href=\"student_update.php?student_id=".$detail['table_id']."\">Update Status</a>
			</td>");
			echo("</tr>");
			$sno++;
		}
	}
	public function ewallet_transaction_report_between($franchise_id)
	{
		$sort_by=$this->sort_by;
		$sort_order=$this->sort_order;
		$page_no=$this->page_no;
		$per_page=$this->per_page;
		
		$total=0;
		
		$start=$per_page*$page_no;
		$sno=$per_page*$page_no+1;
		
		if($sort_by=="")
		{
			$sort_by="2";
		}
		else
		{
			echo("Error : Invalid sort_by...!!!");
			exit();
		}
		
		$mysql_obj=new mysql_functions_class;
		
		$mysql_obj->open_connection();
		$sort_by=$mysql_obj->real_escape($sort_by);
		$sort_order=$mysql_obj->real_escape($sort_order);
		$per_page=$mysql_obj->real_escape($per_page);
		$page_no=$mysql_obj->real_escape($page_no);
		
		//,@type:='retail'
		$prepared_statement="SELECT SQL_CALC_FOUND_ROWS * FROM ( SELECT a.table_id AS ref_no,a.payment_cleared_on AS transaction_date,@type:'paid_to_company',a.debit AS debit,a.credit AS credit,a.payment_mode,a.payment_no,a.payment_mode,a.student_id FROM shristi_franchise_payments a WHERE a.franchise_id='$franchise_id' AND a.payment_cleared_on!='0000-00-00' UNION ALL SELECT a.invoice_no AS ref_no,a.payment_cleared_on AS transaction_date,@type:='retail_payment' AS type,null AS debit,a.amount AS credit FROM pss_retail_invoices_payments a INNER JOIN pss_retail_invoices b ON b.table_id=a.invoice_no WHERE b.branch='$branch' AND b.buyer='$profile_id' UNION ALL SELECT a.invoice_no_branch AS ref_no,a.invoice_date AS transaction_date,@type:='tax_invoice' AS type,a.total_bill AS debit,null AS credit FROM pss_tax_invoices a WHERE a.branch='$branch' AND a.buyer='$profile_id' UNION ALL SELECT a.invoice_no AS ref_no,a.payment_cleared_on AS transaction_date,@type:='tax_payment' AS type,null AS debit,a.amount AS credit FROM pss_tax_invoices_payments a INNER JOIN pss_tax_invoices b ON b.table_id=a.invoice_no WHERE b.branch='$branch' AND b.buyer='$profile_id' UNION ALL SELECT a.invoice_no_branch AS ref_no,a.invoice_date AS transaction_date,@type:='challan' AS type,a.total_bill AS debit,null AS credit FROM pss_challan_invoices a WHERE a.branch='$branch' AND a.buyer='$profile_id' UNION ALL SELECT a.invoice_no AS ref_no,a.payment_cleared_on AS transaction_date,@type:='challan_payment' AS type,null AS debit,a.amount AS credit FROM pss_challan_invoices_payments a INNER JOIN pss_challan_invoices b ON b.table_id=a.invoice_no WHERE b.branch='$branch' AND b.buyer='$profile_id') temp_table";
		
		$prepared_statement.=" WHERE transaction_date!='0000-00-00' ";
		$prepared_statement.=" ORDER BY $sort_by LIMIT $start,$per_page";
		
		$res=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$prepared_statement="SELECT FOUND_ROWS() AS total";
		$res_total=$mysql_obj->simply_run_statement_passed($prepared_statement);
		$mysql_obj->close_connection();
		
		$detail_total=$res_total->fetch_assoc();
		$total=$detail_total['total'];
			
		$this->total=$total;
		
		$pages_1=$total%$per_page;
		$pages=(int)($total/$per_page);
		if($pages_1>0)
		{
			$pages++;
		}
		$this->pages=$pages;
		while($detail=$res->fetch_assoc())
		{
			$type_2="";
			echo("<tr valign=\"top\">");
			echo("<td>".$sno."</td>");
			echo("<td>");
			$dob=$detail['transaction_date'];
			if($dob!="0000-00-00")
			{
				$date_obj = new DateTime($dob);
				$dob=$date_obj->format('d-M-Y');
				echo($dob);
			}
			echo("</td>");
			echo("<td>");
			if($detail['type']=="retail_invoice")
			{
				echo("Invoice No : ".$detail['ref_no']);
				$type_2="Retail Invoice";
			}
			else if($detail['type']=="retail_payment")
			{
				echo("Payment Against Retail Invoice No : ".$detail['ref_no']);
				$type_2="Payment";
			}
			if($detail['type']=="tax_invoice")
			{
				echo("Invoice No : ".$detail['ref_no']);
				$type_2="Tax Invoice";
			}
			else if($detail['type']=="tax_payment")
			{
				echo("Payment Against Tax Invoice No : ".$detail['ref_no']);
				$type_2="Payment";
			}
			if($detail['type']=="challan")
			{
				echo("Challan No : ".$detail['ref_no']);
				$type_2="Challan";
			}
			else if($detail['type']=="challan_payment")
			{
				echo("Payment Against Challan No : ".$detail['ref_no']);
				$type_2="Payment";
			}
			echo("</td>");
			echo("<td>".$type_2."</td>");
			echo("<td align=\"right\">".$detail['debit']."</td>");
			echo("<td align=\"right\">".$detail['credit']."</td>");
			echo("</tr>");
			$sno++;
		}
	}
}
?>