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.137.221.252
<?php
$main_src = substr($_SERVER['SCRIPT_FILENAME'], 0, strlen($_SERVER['SCRIPT_FILENAME']) - 7);
$pdf_writer_class = $main_src . "/tarka_pdf_latest/fpdf.php";
require_once $pdf_writer_class;
ini_set('max_execution_time', 0);
class ExamApplicationFeeSummary extends FPDF
{
public function DefaultConstructor($aobj_context)
{
include_once $aobj_context->main_src . "/src/format.php";
$this->aobj_context = $aobj_context;
$this->pdf = new FPDF();
$this->pdf = $this;
session_start();
$this->ip = $_SERVER["REMOTE_ADDR"];
$get_date = "select date_add(date_add(now(),INTERVAL 13 hour),interval 30 minute) as now_date";
$obj = $this->aobj_context->pobj_db->GetRow($get_date);
$this->current_date = $obj['now_date'];
$this->cntr_from = substr("0000000000" . $aobj_context->mobj_data["cntr_from"], -4);
$this->cntr_to = substr("ZZZZZZZZZZ" . $aobj_context->mobj_data["cntr_end"], -4);
$this->degree_from = substr("0000000000" . $aobj_context->mobj_data["degree_from"], -5);
$this->degree_to = substr("ZZZZZZZZZZ" . $aobj_context->mobj_data["degree_to"], -5);
$this->examno_from = $aobj_context->mobj_data["examno_from"];
$examnoStr = strtoupper($this->examno_from);
$splitexamno = str_split($examnoStr);
$this->examno = implode(",", $splitexamno);
// var_dump($this->examno);
// $arrr = array();
// foreach($splitexamno as $key => $value){
// }
$this->exam_type = $aobj_context->mobj_data["exam_type"];
$this->exam_year = $aobj_context->mobj_data["exam_year"];
$this->univcode = $aobj_context->mobj_data["univcode"];
$this->Degree = $aobj_context->mobj_data["Degree"];
$this->Screentype = $aobj_context->mobj_data["Screentype"];
$query = "select fdeggrp, fdescpn, fexamdate from deggrp where fdeggrp = '{$this->Degree}'";
$this->deggrp = $this->aobj_context->pobj_db->GetRow($query);
}
public function Header()
{
$this->pdf->SetTitle("Exam App. Fee Summary Report");
$img_path = $this->aobj_context->main_src . "/img/{$this->univcode}_logo.jpg";
if (!empty($this->pdf_logo_path) && file_exists($img_path)) {
$this->pdf->Image($img_path, 70, 8, 30);
}
$this->pdf->SetFont('Times', 'B', 15);
$this->pdf->cell(0, 7, "" . $this->FUNIVNAME, "0", 1, "C");
$this->pdf->SetFont('Times', '', 8);
$this->pdf->cell(0, 4, $this->s_state, "0", 0, "C");
$this->pdf->SetFont('Times', '', 10);
$this->pdf->Cell(-20, 4, "Page {$this->pdf->PageNo()}/{nb}", 0, 1, 'C');
$this->pdf->SetFont('Times', 'B', 10);
$this->pdf->cell(0, 5, "Exam Application Fee Summary", "0", 1, "C");
//$this->pdf->cell(0,5,$this->ReportType,"0",1,"C");
$this->pdf->cell(0, 5, $this->Degree.' - '.$this->deggrp['fdescpn'].' - '.$this->deggrp['fexamdate'].' Examination', "0", 1, "C");
$this->pdf->cell(0, 5, "College Code Range :" . " " . $this->cntr_from . " " . "to" . " " . $this->cntr_to, "0", 1, "C");
$this->pdf->cell(0, 5, "Degree Range :" . " " . $this->degree_from . " " . "to" . " " . $this->degree_to, "0", 1, "C");
// $this->pdf->cell(0, 5, "Exam Year/ Type:" . " " . $this->exam_year . '/' . $this->exam_type, "0", 1, "C");
$this->pdf->cell(0, 5, "Exam No. :" . " " . $this->examno, "0", 1, "C");
}
public function Footer()
{
$this->SetY(-15);
$this->pdf->SetFont('Times', 'B', 8);
$new_y = $this->pdf->GetY();
$this->pdf->Line(8, $new_y, 290, $new_y);
$this->pdf->Ln(2);
$this->Cell(180, 6, 'Printed : IP Address : ' . $this->ip . " Date " . $this->current_date, '0', 0, 'L');
}
public function formcolldata()
{
$get_coll_name = "select FUNIVNAME as 'FUNIVNAME',
FUNIVADD1 as 'state', pdf_logo_path From control";
$lobj_get_coll_name = $this->aobj_context->pobj_db->GetRow($get_coll_name);
$this->FUNIVNAME = $lobj_get_coll_name['FUNIVNAME'];
$this->s_state = $lobj_get_coll_name['state'];
$this->f_year = $lobj_get_coll_name['f_year'];
$this->pdf_logo_path = $lobj_get_coll_name['pdf_logo_path'];
}
public function formdata()
{
//==queries for particular screen type==//
//arr of ffreshexam A to H
// $examnoarr = "ABCDEFGH";
$examnoStr = strtoupper($this->examno_from);
$splitexamno = str_split($examnoStr);
// var_dump($splitexamno);
$examno = implode("','", $splitexamno);
// var_dump($examno);
$lobj_fee_data = "SELECT cs.fcollcode,d.fdegree,CONCAT(cs.fcollcode,'-',fcollname,', ',ftown)
AS college_name,d.fdeggrp, SUM( cs.ftotalfee ) AS amount,
SUM(CASE WHEN ca.fconstype='0123456789' THEN cs.ftotalfee ELSE 0 END) AS normal_income,
SUM(CASE WHEN ca.fconstype!='0123456789' THEN cs.ftotalfee ELSE 0 END) AS low_income,
SUM(CASE WHEN ca.fconstype='0123456789' THEN 1 ELSE 0 END) AS normal_app ,
SUM(CASE WHEN ca.fconstype !='0123456789' THEN 1 ELSE 0 END) AS low_app
FROM appcandsum cs INNER JOIN college c ON cs.fcollcode = c.fcollcode
INNER JOIN degree d ON d.fdegree=cs.fdegree AND d.fexamno=cs.fexamno
INNER JOIN candsum ca ON cs.fcollcode = ca.fcollcode AND cs.fdegree=ca.fdegree AND cs.fregno=ca.fregno
AND cs.fexamno=ca.fexamno
WHERE IFNULL(fackdate,'') <> '' and cs.fcollcode>='{$this->cntr_from}' and
cs.fcollcode<='{$this->cntr_to}' and d.fdegree>='{$this->degree_from}' and
d.fdegree<='{$this->degree_to}' and d.fdeggrp='{$this->Degree}' and cs.ffreshexam IN ('{$examno}')
GROUP BY fcollcode order by fcollcode";
// var_dump($lobj_fee_data);
// die();
// var_dump($lobj_fee_data);
//==build report==//
$lobj_get_fee_data = $this->aobj_context->pobj_db->GetAll($lobj_fee_data);
// var_dump($lobj_get_fee_data);
$this->pdf->SetMargins(15,6);
$this->pdf->AddPage('L');
//$this->pdf->SetFillColor(248, 248 ,255);
$this->pdf->SetFont('Times', 'B', 10);
$this->pdf->Cell(10, 6, "Sl.", "LRT", 0, "C");
$this->pdf->Cell(160, 6, "College Name", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Total App.", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Normal Fee", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Total App.", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Cons. Fee", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Total", "LRT", 1, "C");
$this->pdf->SetFont('Times', 'B', 10);
$this->pdf->Cell(10, 4, "No.", "LRB", 0, "C");
$this->pdf->Cell(160, 4, "", "LRB", 0, "C");
$this->pdf->Cell(20, 4, "Normal Fee", "LRB", 0, "C");
$this->pdf->Cell(20, 4, "Amount", "LRB", 0, "C");
$this->pdf->Cell(20, 4, "Cons. Fee", "LRB", 0, "C");
$this->pdf->Cell(20, 4, "Amount", "LRB", 0, "C");
$this->pdf->Cell(20, 4, "Amount", "LRB", 1, "C");
$sl_no = 0;
$total = 0;
$normal_income_total = 0;
$low_income_total = 0;
$normal_app = 0;
$low_app = 0;
foreach ($lobj_get_fee_data as $key => $value) {
$sl_no++;
$name1 = substr($value['college_name'], 0, 100);
//var_dump($name1);
$name2 = substr($value['college_name'], 100);
//var_dump($name2);
$amount = moneyFormatIndia((int) $value['amount']);
$normal_income = moneyFormatIndia((int) $value['normal_income']);
$low_income = moneyFormatIndia((int) $value['low_income']);
$this->pdf->SetFont('Times', '', 10);
if (empty($name2)) {
$this->pdf->Cell(10, 6, $sl_no, "1", 0, "C");
$this->pdf->Cell(160, 6, $name1, "1", 0, "L");
$this->pdf->Cell(20, 6, $value['normal_app'], "1", 0, "R");
$this->pdf->Cell(20, 6, $normal_income, "1", 0, "R");
$this->pdf->Cell(20, 6, $value['low_app'], "1", 0, "R");
$this->pdf->Cell(20, 6, $low_income, "1", 0, "R");
$this->pdf->Cell(20, 6, $amount, "1", 1, "R");
} else {
$this->pdf->Cell(10, 6, $sl_no, "LRT", 0, "C");
$this->pdf->Cell(160, 6, $name1, "LRT", 0, "L");
$this->pdf->Cell(20, 6, $value['normal_app'], "LRT", 0, "R");
$this->pdf->Cell(20, 6, $normal_income, "LRT", 0, "R");
$this->pdf->Cell(20, 6, $value['low_app'], "LRT", 0, "R");
$this->pdf->Cell(20, 6, $low_income, "LRT", 0, "R");
$this->pdf->Cell(20, 6, $amount, "LRT", 1, "R");
$this->pdf->Cell(10, 6, "", "LRB", 0, "C");
$this->pdf->Cell(160, 6, $name2, "LRB", 0, "L");
$this->pdf->Cell(20, 6, "", "LRB", 0, "L");
$this->pdf->Cell(20, 6, "", "LRB", 0, "L");
$this->pdf->Cell(20, 6, "", "LRB", 0, "L");
$this->pdf->Cell(20, 6, "", "LRB", 0, "L");
$this->pdf->Cell(20, 6, "", "LRB", 1, "L");
}
$total = $total + $value['amount'];
$total1 = moneyFormatIndia((int) $total);
$normal_income_total = $normal_income_total + $value['normal_income'];
$normal_income_total1 = moneyFormatIndia((int) $normal_income_total);
$normal_app = $normal_app + $value['normal_app'];
$low_income_total = $low_income_total + $value['low_income'];
$low_income_total1 = moneyFormatIndia((int) $low_income_total);
$low_app = $low_app + $value['low_app'];
if ($this->pdf->getY() > 180) {
$this->pdf->AddPage('L');
$this->pdf->SetFont('Times', 'B', 10);
/*$this->pdf->Cell(10,6,"Sl. No","1",0,"C");
$this->pdf->Cell(160,6,"College Name","1",0,"C");
$this->pdf->Cell(20,6,"N.F.Tot.App","1",0,"C");
$this->pdf->Cell(20,6,"Normal Fee","1",0,"R");
$this->pdf->Cell(20,6,"L.F.Tot.App","1",0,"R");
$this->pdf->Cell(20,6,"Low Fee","1",0,"R");
$this->pdf->Cell(20,6,"Amount","1",1,"R");*/
$this->pdf->SetFont('Times', 'B', 10);
$this->pdf->Cell(10, 6, "Sl.", "LRT", 0, "C");
$this->pdf->Cell(160, 6, "College Name", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Total App.", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Normal Fee", "LRT", 0, "R");
$this->pdf->Cell(20, 6, "Total App.", "LRT", 0, "C");
$this->pdf->Cell(20, 6, "Low Fee", "LRT", 0, "R");
$this->pdf->Cell(20, 6, "Total", "LRT", 1, "R");
$this->pdf->SetFont('Times', 'B', 10);
$this->pdf->Cell(10, 6, "No.", "LRB", 0, "C");
$this->pdf->Cell(160, 6, "", "LRB", 0, "C");
$this->pdf->Cell(20, 6, "", "LRB", 0, "C");
$this->pdf->Cell(20, 6, "Amount", "LRB", 0, "R");
$this->pdf->Cell(20, 6, "Low Fee", "LRB", 0, "C");
$this->pdf->Cell(20, 6, "Amount", "LRB", 0, "R");
$this->pdf->Cell(20, 6, "Amount", "LRB", 1, "R");
}
}
$this->pdf->SetFont('Times', 'B', 10);
$this->pdf->Cell(10, 6, "", "1", 0, "C");
$this->pdf->Cell(160, 6, "Grand Total", "1", 0, "C");
$this->pdf->Cell(20, 6, $normal_app, "1", 0, "R");
$this->pdf->Cell(20, 6, $normal_income_total1, "1", 0, "R");
$this->pdf->Cell(20, 6, $low_app, "1", 0, "R");
$this->pdf->Cell(20, 6, $low_income_total1, "1", 0, "R");
$this->pdf->Cell(20, 6, $total1, "1", 1, "C");
}
public function SendOutput()
{
$this->pdf->Output("ExamApplicationFeeSummary{$this->Degree}.pdf", "I");
}
}
function examApplicationFeeSummary($aobj_context)
{
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
// var_dump($aobj_context);
$class_obj = new ExamApplicationFeeSummary();
$class_obj->AliasNbPages();
$class_obj->DefaultConstructor($aobj_context);
$class_obj->Header();
$class_obj->formcolldata();
$class_obj->formdata();
$class_obj->SendOutput();
}
function moneyFormatIndia($num)
{
$explrestunits = "";
if (strlen($num) > 3) {
$lastthree = substr($num, strlen($num) - 3, strlen($num));
$restunits = substr($num, 0, strlen($num) - 3); // extracts the last three digits
$restunits = (strlen($restunits) % 2 == 1) ? "0" . $restunits : $restunits; // explodes the remaining digits in 2's formats, adds a zero in the beginning to maintain the 2's grouping.
$expunit = str_split($restunits, 2);
for ($i = 0; $i < sizeof($expunit); $i++) {
// creates each of the 2's group and adds a comma to the end
if ($i == 0) {
$explrestunits .= (int) $expunit[$i] . ","; // if is first value , convert into integer
} else {
$explrestunits .= $expunit[$i] . ",";
}
}
$thecash = $explrestunits . $lastthree;
} else {
$thecash = $num;
}
return $thecash; // writes the final format where $currency is the currency symbol.
}
function numberToRomanRepresentation($number) {
$map = array('M' => 1000, 'CM' => 900, 'D' => 500, 'CD' => 400, 'C' => 100, 'XC' => 90, 'L' => 50, 'XL' => 40, 'X' => 10, 'IX' => 9, 'V' => 5, 'IV' => 4, 'I' => 1);
$returnValue = '';
while ($number > 0) {
foreach ($map as $roman => $int) {
if($number >= $int) {
$number -= $int;
$returnValue .= $roman;
break;
}
}
}
return $returnValue;
}
|