0xV3NOMx
Linux ip-172-26-7-228 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64



Your IP : 3.138.105.128


Current Path : /proc/thread-self/root/var/www/html/univadmin_bkp/univadmin/Reports/
Upload File :
Current File : //proc/thread-self/root/var/www/html/univadmin_bkp/univadmin/Reports/report_candidate_list.php

<?php
function generateCandidateListReport($aobj_context)
{	
	session_start();
	
    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);  
    
	//echo $college_code; 
	$college_code = $aobj_context->mobj_data["college_code"];  
	$degree_code = $aobj_context->mobj_data["degree_code"]; 
	$search_field = $aobj_context->mobj_data["search_field"]; 
	
	$RegNo_start = substr("00000000".$aobj_context->mobj_data["streg"],-8); 
	$RegNo_end = substr("ZZZZZZZZ".$aobj_context->mobj_data["edreg"],-8); 
	
	$main_src_obj=(explode("/",$_SERVER["REQUEST_URI"]));
	$main_src=$main_src_obj[1];
	$pdf_writer_class=$aobj_context->main_src."/maya-pdf/fpdf.php";
	$root_pdf_file_download=$aobj_context->main_src."/Report_details/output/report_candidate_list.pdf";

	include($pdf_writer_class);
   /*  if($active_field === 'T')
	{	 */
		$pdf= new FPDF('L'); //Landscape
		$pdf->WhichReport = 'ReportCandidateList';
	/* }
	else
	{
		$pdf= new FPDF(); //A4
		$pdf->WhichReport = 'ReportCandidateNonActList';
	} */
	$pdf->SetFont('Times','B',16);
	$pdf->SetMargins(5,12);		
	$pdf->AliasNbPages();
	//$pdf->SetAutoPageBreak('on' , 10);
//header	
	$page_header_university = "select FUNIVNAME,FTOWN, FUNIVADD1, date_format(now(),'%d/%m/%Y') as date from control";
	$lobj_page_header_university = $aobj_context->pobj_db->GetRow($page_header_university);
	
	$page_header_college ="select concat('[',FCOLLCODE,']  ',FCOLLNAME,', ',FTOWN) as college_name
							from college where FCOLLCODE='{$college_code}'";
	$lobj_page_header_college = $aobj_context->pobj_db->GetRow($page_header_college); 

	$page_header_degree = "select date_add(date_add(now(),INTERVAL 13 hour),interval 30 minute) as now_date,concat('[',FDEGREE,'] - ', FDESCPN,space(2),'-',space(2),FEXAMDATE) as Degree_name, FADYEAR  
							from degree where FDEGREE = '{$degree_code}' ";
	$lobj_page_header_degree = $aobj_context->pobj_db->GetRow($page_header_degree);
	 

	$page_header_REGROLL = "select FREGROLL from control";
		$lobj_page_header_REGROLL = $aobj_context->pobj_db->GetRow($page_header_REGROLL);

	$pdf->aobj_context =$aobj_context ;
	$pdf->date_time = 'ReportCandidateList';
	$pdf->WhichReport = 'ReportCandidateList';
	$pdf->FUNIVNAME = $lobj_page_header_university['FUNIVNAME'].', '.$lobj_page_header_university['FTOWN'];
	$pdf->FUNIVADD1 = $lobj_page_header_university['FUNIVADD1'];
	// FUNIVADD1
	$pdf->FTOWN = '';
	$pdf->date_1 = $lobj_page_header_university['date'];
	$pdf->college_name = $lobj_page_header_college['college_name'];
	$pdf->Degree_name = $lobj_page_header_degree['Degree_name'];
	$pdf->date_time = $lobj_page_header_degree['now_date'];
	$pdf->REGROLL=$lobj_page_header_REGROLL['FREGROLL'];
	$pdf->RFROM= $RegNo_start;
	$pdf->RTO= $RegNo_end;
	$pdf->head_cnt=0;;
//end header		

	$pdf->AddPage();	PrintFooter($pdf);		
	$pdf->SetFont('Times','B',9);	
// body
	$get_fee_paid_REC_DATE ="select FREGNO,
	if(date_format(FRECPTDATEA,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEA,'%d/%m/%y')) as FdateA, FRECPTNOA,
	if(date_format(FRECPTDATEB,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEB,'%d/%m/%y')) as FdateB, FRECPTNOB,
	if(date_format(FRECPTDATEC,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEC,'%d/%m/%y')) as FdateC, FRECPTNOC,
	 if(date_format(FRECPTDATED,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATED,'%d/%m/%y'))as FdateD, FRECPTNOD,    
	if(date_format(FRECPTDATEE,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEE,'%d/%m/%y')) as FdateE, FRECPTNOE, 
	if(date_format(FRECPTDATEF,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEF,'%d/%m/%y')) as FdateF, FRECPTNOF, 
	if(date_format(FRECPTDATEG,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEG,'%d/%m/%y')) as FdateG, FRECPTNOG,
	if(date_format(FRECPTDATEH,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEH,'%d/%m/%y'))as FdateH, FRECPTNOH,
	if(date_format(FRECPTDATEI,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEI,'%d/%m/%y')) as FdateI, FRECPTNOI,
	if(date_format(FRECPTDATEJ,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEJ,'%d/%m/%y'))as FdateJ, FRECPTNOJ    
	from candsum
	WHERE  fdegree='{$degree_code}'
	and FREGNO>='{$RegNo_start}' and FREGNO<='{$RegNo_end}' 
	and  FCOLLCODE='{$college_code}' and frecptdate is not null";
	$lobj_get_fee_paid_REC_DATE = $aobj_context->mobj_db->GetAll($get_fee_paid_REC_DATE);
	  
    $rec_date_array=array();	
	foreach($lobj_get_fee_paid_REC_DATE as $key => $value)
	{
		$rec_date_array[$value['FREGNO']]['A']['Date'] = $value['FdateA'];
		$rec_date_array[$value['FREGNO']]['A']['Rec'] = $value['FRECPTNOA'];
		
		$rec_date_array[$value['FREGNO']]['B']['Date'] = $value['FdateB'];
		$rec_date_array[$value['FREGNO']]['B']['Rec'] = $value['FRECPTNOB'];
		
		$rec_date_array[$value['FREGNO']]['C']['Date'] = $value['FdateC'];
		$rec_date_array[$value['FREGNO']]['C']['Rec'] = $value['FRECPTNOC'];
		
		$rec_date_array[$value['FREGNO']]['D']['Date'] = $value['FdateD'];
		$rec_date_array[$value['FREGNO']]['D']['Rec'] = $value['FRECPTNOD'];
		
		$rec_date_array[$value['FREGNO']]['E']['Date'] = $value['FdateE'];
		$rec_date_array[$value['FREGNO']]['E']['Rec'] = $value['FRECPTNOE'];
		
		$rec_date_array[$value['FREGNO']]['F']['Date'] = $value['FdateF'];
		$rec_date_array[$value['FREGNO']]['F']['Rec'] = $value['FRECPTNOF'];
		
		$rec_date_array[$value['FREGNO']]['G']['Date'] = $value['FdateG'];
		$rec_date_array[$value['FREGNO']]['G']['Rec'] = $value['FRECPTNOG'];
		
		$rec_date_array[$value['FREGNO']]['H']['Date'] = $value['FdateH'];
		$rec_date_array[$value['FREGNO']]['H']['Rec'] = $value['FRECPTNOH'];
		
		$rec_date_array[$value['FREGNO']]['I']['Date'] = $value['FdateI'];
		$rec_date_array[$value['FREGNO']]['I']['Rec'] = $value['FRECPTNOI'];
		
		$rec_date_array[$value['FREGNO']]['J']['Date'] = $value['FdateJ'];
		$rec_date_array[$value['FREGNO']]['J']['Rec'] = $value['FRECPTNOJ'];
	}
		$fee_cond=" ifnull(cs.ftotalfee,0) > 0 ";
		if($all_data=="Yes")
		$fee_cond="";

		$get_candidate_data = "  select a.*,b.FEXAMNAME,b.Fee_ShortName,b.fee  ,format(b.total_fee,0) as total_fee 
		from (SELECT s.FSLNO,s.FNAME,s.FFATNAME,s.FMOTNAME,
		if(date_format(s.FDOB,'%d/%m/%y')='00/00/00','',date_format(s.FDOB,'%d/%m/%y'))
		as FDOB,
		s.FSEX,cs.FCATEGORY as FCASTE,cd.FDEGREE, cd.FEXAMNO,cd.FCOLLCODE, cd.FREGNO, format(cs.FTOTALFEE,0) AS FTOTALFEE, 
		GROUP_CONCAT(distinct {$search_field} order by cd.FSUBCODE separator '|') as subjects 
		from canddet cd inner join student s on s.FREGNO=cd.FREGNO 
		and s.FDEGREE=cd.FDEGREE 
		and s.FCOLLCODE=cd.FCOLLCODE 
		and ifnull(cd.FPASSMTH,'')=''
		INNER JOIN subject sub on sub.FDEGREE=cd.FDEGREE and sub.FEXAMNO=cd.FEXAMNO and sub.FSUBCODE=cd.FSUBCODE
		inner join candsum cs on 
		cs.FDEGREE=cd.FDEGREE  and cs.FCOLLCODE=cd.FCOLLCODE and
		cs.FREGNO=cd.FREGNO and ifnull(cs.ftotalfee,0) > 0
		WHERE   cd.fregno>='{$RegNo_start}' and cd.fregno<='{$RegNo_end}' 
		and cd.fdegree='{$degree_code}' and  cd.FCOLLCODE='{$college_code}'
		and cd.fpresent = 'P' GROUP BY cd.FDEGREE,cd.FEXAMNO, 
		cd.FCOLLCODE,cd.FREGNO ORDER BY cd.FREGNO) a left join 
		(select sf.FDEGREE,sf.FEXAMNO,sf.FCOLLCODE,sf.FREGNO,deg.FEXAMNAME, 
		GROUP_CONCAT(mf.FSHORTNAME order by mf.FFEECODE) as Fee_ShortName,
		GROUP_CONCAT(if(ROUND(sf.FAMOUNT,0)=0,'',ROUND(sf.FAMOUNT,0)) order by sf.FFEECODE separator '|') as fee,
		sum(FAMOUNT) as total_fee
		from masfee mf left join studfee sf on sf.FFEECODE=mf.FFEECODE inner join degree deg on 
		deg.FDEGREE=sf.FDEGREE and deg.FEXAMNO=sf.FEXAMNO
		where sf.fregno>='{$RegNo_start}' and sf.fregno<='{$RegNo_end}' and sf.fdegree='{$degree_code}' 
		and  sf.FCOLLCODE='{$college_code}'			
		group by FDEGREE,FEXAMNO,FCOLLCODE,FREGNO having sum(FAMOUNT) > 0) b on
		a.FDEGREE=b.FDEGREE and a.FEXAMNO=b.FEXAMNO and a.FCOLLCODE=b.FCOLLCODE and a.FREGNO=b.FREGNO 
		where b.fexamname is not null order by a.FREGNO,FEXAMNO"; //FPRESENT='P'
     //echo $get_candidate_data; 
		//var_dump($get_candidate_data);
	$lobj_get_candidate_data = $aobj_context->pobj_db->GetAll($get_candidate_data);   
	// echo "<pre>".$get_candidate_data;die();
	$final_arr=array();
	$for_page_break=array();
	$k=0;	
	$full_fee_arr=array();
	$unique_fee_arr=array();
	$grand_total=0;
	
	//var_dump($pdf->Degree_name);die();

	//$pdf->Cell(20,5,"Degree".$pdf->Degree_name,'1',1,'C');
	foreach($lobj_get_candidate_data as  $sk=>$sv)
	{
		$reg_no=$sv['FREGNO'];
		$fslno=$sv['FSLNO'];
		$fname=$sv['FNAME'];
		$fatname=$sv['FFATNAME'];
		$mname=$sv['FMOTNAME'];		
		$dob=$sv['FDOB'];
		$fsex=$sv['FSEX'];
		$fcaste=$sv['FCASTE'];
		$fdegree=$sv['FDEGREE'];
		$fexam=$sv['FEXAMNO'];
		$total_fee=$sv['FTOTALFEE'];
		$subjects=$sv['subjects'];
		$exam_name=$sv['FEXAMNAME'];
		$fee_shortname=$sv['Fee_ShortName'];
		$fee=$sv[fee];
		$explode_fee_short_name_arr=explode(",",$fee_shortname);
		$explode_fee_arr=explode("|",$fee);
		
		foreach($explode_fee_short_name_arr as $ffk=>$ffv)
		{
			$full_fee_arr[$reg_no][$ffv]+=$explode_fee_arr[$ffk];
			$grand_total+=$explode_fee_arr[$ffk];
			if(!in_array($ffv,$unique_fee_arr))
			array_push($unique_fee_arr,$ffv);
		}
		
		//$total_fee=$sv[total_fee];
		$student_exams_arr[$reg_no][$k]=$fexam;$k++;
		$final_arr[$reg_no]['reg_no']=$reg_no;
		$final_arr[$reg_no]['fslno']=$fslno;
		$final_arr[$reg_no]['fname']=$fname;
		$final_arr[$reg_no]['fatname']=$fatname;
		$final_arr[$reg_no]['mname']=$mname;
		$final_arr[$reg_no]['dob']=$dob;
		$final_arr[$reg_no]['fsex']=$fsex;
		$final_arr[$reg_no]['fcaste']=$fcaste;
		$final_arr[$reg_no]['fee_shortname']=$fee_shortname;
		$final_arr[$reg_no]['fee']=$fee;
		$final_arr[$reg_no]['total_fee']=$total_fee;
		$final_arr[$reg_no]['fexam'][$fexam]['exam_name']=$exam_name;
		$final_arr[$reg_no]['fexam'][$fexam]['fee']=$fee;
		$final_arr[$reg_no]['fexam'][$fexam]['subjects']=$subjects;
		$final_arr[$reg_no]['exam_name']=$exam_name;		 	
		
	}
  
	 
	foreach($student_exams_arr as $skk=>$svv)
	{
		$for_page_break[$skk]=count($svv)+2;
	}
	 
	$line_counter=0;
	$arr_w = array(12,25,110,35,63,10,20,45,12,18);
	$arr_h = array(5,6);	 
	$sl_no=1;
	$grand_tot_arr=array();
	$page_tot_arr=array();
	$footer_student_fee_arr=array();
 
	foreach($final_arr as $stdk=>$stdv)
	{
		$reg_no=$stdv['reg_no'];									   		  	 	
		$fslno=$stdv['fslno'];
		$fname=$stdv['fname'];
		$fatname=$stdv['fatname'];
		$mname=$stdv['mname'];
		$dob=$stdv['dob'];
		$fsex=$stdv['fsex'];
		$fcaste=$stdv['fcaste'];						
		$total_fee=$stdv['total_fee'];						
		
		
		if(($line_counter+($for_page_break[$reg_no])) >= 20)
		{	 
		//echo $line_counter+($for_page_break[$reg_no]); die();
			$pdf->ln(1);
			$sum_arr=array();
			foreach($footer_student_fee_arr as $sk=>$sv)
			{
				foreach($unique_fee_arr as $ak=>$av)
				{
				 $sum_arr[$av]+=$full_fee_arr[$sv][$av];
				}
			}
			 
			foreach($sum_arr as $ak=>$av)
			{
				$pdf->Cell(20,5,$ak,'1',0,'C');
			}
			$pdf->Cell(20,5,"Total",'1',1,'C');
			$tot=0;
			foreach($sum_arr as $ak=>$av)
			{
				$pdf->Cell(20,5,$av,'1',0,'C');
				$tot+=$av;
			}
			$pdf->Cell(20,5,$tot,'1',1,'C');
			$footer_student_fee_arr=array();
				
			$pdf->AddPage();PrintFooter($pdf);		
			$line_counter=0;		 
		} 
		
			//$pdf->Ln(1);	
			$line_counter += 1;			
			$pdf->SetFont('Times','B',9);	
			$pdf->Cell($arr_w[0],$arr_h[1],$sl_no,'LRT',0,'C');
			$pdf->Cell($arr_w[1],$arr_h[1],$reg_no,'LRT',0,'C');		
			array_push($footer_student_fee_arr,$reg_no);
			$pdf->Cell($arr_w[2],$arr_h[1],$fname,'1',0,'L');		
			$pdf->SetFont('Times','',9);		
			$pdf->Cell($arr_w[4]-3,$arr_h[1],'Fat.:   '.$fatname,'1',0,'L');		
			$pdf->Cell($arr_w[4]+12+3,$arr_h[1],'Mot.:   '.$mname,'1',1,'L');	
			$pdf->Cell($arr_w[0],$arr_h[1],'','LR',0,'C');
			$pdf->Cell($arr_w[1],$arr_h[1],'','LR',0,'L');		
			$pdf->Cell($arr_w[3],$arr_h[1],'DOB.:   '.$dob,'1',0,'L');
			$pdf->Cell($arr_w[6],$arr_h[1],'Gen.:   '.$fsex,'1',0,'L');		
			$pdf->Cell($arr_w[6],$arr_h[1],'Grp.:   '.$fcaste,'1',0,'L');
			$pdf->SetFont('Times','B',9);
			$pdf->Cell($arr_w[7]-$arr_w[5],$arr_h[1],'Total Fee:  '.$total_fee,'1',0,'C');
			$pdf->SetFont('Times','',9);
			//Fee Short Name Details
			
			$fee_shortname=$stdv[fee_shortname];						
			$free_name_array = explode(",",$fee_shortname);
			//echo "<pre>";print_r($free_name_array);die();
			/* if(empty($free_name_array))
			{
			$free_name_array[0]="";
			$free_name_array[1]="";
			$free_name_array[2]="";
			}
			 */

			for($m=0; $m<count($free_name_array); $m++)

			{				
				if(($m) <= 7)
				{
					$pdf->Cell($arr_w[8],$arr_h[1],$free_name_array[$m],'1',0,'C');			
				}
				else
				{
//					$pdf->Cell($arr_w[8],$arr_h[1],'Others','1',0,'C');							
					break;
				}	
			}
			$diff=8-count($free_name_array);
			if($diff>0)//writing empty if it comes less than 8
			{
				for($d=0;$d<$diff;$d++)
				$pdf->Cell($arr_w[8],$arr_h[1],"",'1',0,'C');			
			}	
			
			$pdf->Cell($arr_w[8],$arr_h[1],'Total','1',0,'C');	
			$pdf->SetFont('Times','',9);			
			$pdf->Cell($arr_w[8],$arr_h[1],'Date','1',0,'C');
			$pdf->Cell($arr_w[6]-2,$arr_h[1],'Rec. No.','1',1,'C');												
			$line_counter++;
		    //Exam Fee Details
			//echo "<pre>";
			
			$fexam_arr = $stdv[fexam];//print_r($fexam_arr);die();
				 
			foreach($fexam_arr as $ek=>$ev)
			{
				$line_counter++;
				 $exam_no=$ek;					 			
				 $exam_name=$ev['exam_name'];					 			
				 $pdf->Cell(($arr_w[0]+$arr_w[1]),$arr_h[1],$exam_name,'1',0,'L');	 	
				
				 $subjects=$ev[subjects];	
				 $subject_array = explode("|",$subjects);				 
				 $remeber_cell=0;
				for($m=0;$m<count($subject_array);$m++)
				{								
					$pdf->Cell($arr_w[5],$arr_h[1],$subject_array[$m],'1',0,'C');					
					$remeber_cell++;
				}
				for($j=$remeber_cell; $j<11; $j++)
				{
					 $pdf->Cell($arr_w[5],$arr_h[1],'','1',0,'C');
				}
				
				$fee=$ev[fee];				
				$free_array = explode("|",$fee);			
				$other_sum=0;
				$other_flag=0;	
				$total_exam_fee=0;
				$remeberfee_cell = 0;
				$diff = 0;
				//var_dump(count($free_array));
				for($m=0; $m<count($free_array); $m++)
				{		
					if(($m) <= 7)
					{
						//var_dump($free_array[$m]);
						$pdf->Cell($arr_w[8],$arr_h[1],$free_array[$m],'1',0,'C');	
						$grand_tot_arr[$free_name_array[$m]]+=$free_array[$m];
						$page_tot_arr[$free_name_array[$m]]+=$free_array[$m]; 
							$total_exam_fee+=$free_array[$m];
						$other_flag=0;	
						$other_sum=0;
						$remeberfee_cell++;
					}	
					else
					{
						$other_sum += $free_array[$m];
						$total_exam_fee+=$free_array[$m];						
						$other_flag=1;
					}
				}
			
			//var_dump($free_name_array);

			if($other_flag)
				$pdf->Cell($arr_w[8],$arr_h[1],$other_sum,'1',0,'C');	

				$diff=8-count($free_array);
				if($diff>0)//writing empty if it comes less than 8
				{
					for($d=0;$d<$diff;$d++)
					$pdf->Cell($arr_w[8],$arr_h[1],"",'1',0,'C');			
				}	
				//var_dump(count($free_name_array));
				//var_dump($diff);	
				
				$pdf->Cell($arr_w[8],$arr_h[1],$total_exam_fee,'1',0,'C');								
				$pdf->Cell($arr_w[8],$arr_h[1],$rec_date_array[$reg_no][$exam_no]['Date'],'1',0,'C');
				$pdf->Cell($arr_w[6]-2,$arr_h[1],$rec_date_array[$reg_no][$exam_no]['Rec'] ,'1',1,'C');				
			}	 	

			$sl_no++; 	
			$sum_arr=array();
			foreach($footer_student_fee_arr as $sk=>$sv)
			{
				foreach($unique_fee_arr as $ak=>$av)
				{
					$sum_arr[$av]+=$full_fee_arr[$sv][$av];
				}
			}
 
			  
	}
			$pdf->ln(2);;
			foreach($sum_arr as $ak=>$av)
			{
			$pdf->Cell(20,5,$ak,'1',0,'C');
			}
			$pdf->Cell(20,5,"Total",'1',1,'C');
			$tot=0;
			foreach($sum_arr as $ak=>$av)
			{
			$pdf->Cell(20,5,$av,'1',0,'C');
			$tot+=$av;
			}
			$pdf->Cell(20,5,$tot,'1',1,'C');

		$pdf->ln(5);	 	
		$pdf->SetFont('Times','B',9);		
		$pdf->Cell(35,5,"Grand Total",'0',1,'L');
		$s=0;		 
		foreach($grand_tot_arr as $ak=>$av)
		{
			$pdf->Cell(15,5,$ak,'1',0,'C');	 	
		}
		$pdf->Cell(15,5,"Total",'1',1,'C');	
		foreach($grand_tot_arr as $ak=>$av)
		{
			$pdf->Cell(15,5,$av,'1',0,'C');	 
			$s+=$av;				
		}
		$pdf->Cell(15,5,$s,'1',1,'C');	
			
			
		$pdf->ln(5);;
		$pdf->SetFont('Times','B',12);
		$pdf->Cell(210,5,"Grand Total Rs {$grand_total}/",'0',1,'L');

		$pdf->Ln(20);
		$pdf->Cell(20,4,"Date :",'0',0,'C');
		$pdf->Cell(250,4,"Signature of the principal(With seal)",'0',1,'R');
		PrintFooter($pdf);
		
		$pdf->Output("Candidate List.pdf","D");		
}


function PrintFooter($pdf)
{
		$new_x=$pdf->GetX();
		$new_y=$pdf->GetY();
		$ip=$_SERVER["REMOTE_ADDR"];
		$pdf->SetY(-17);
		$pdf->SetFont('Times','B',8);

		$pdf->Cell(140,6,'Printed   : IP Address : '.$ip.", Date : ".$pdf->date_time,'0',0,'L');
		$pdf->SetXY($new_x,$new_y); 
}	
?>