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.218.1.38
<?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("Teacher Work Done 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, 40, 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, ' Valuation Summary', '0', 1, 'C');
$this->SetFont('Times', 'B', 10);
$exmrange = $this->aobj_context->mobj_data["fexamno"];
$examnoStr = strtoupper($exmrange);
$splitexamno = str_split($examnoStr);
$examno = implode(",", $splitexamno);
// var_dump($examno);
// $this->Cell(0, 5, 'Degree Group : ' . $this->aobj_context->deggrp, '0', 1, 'C');
$this->Cell(0, 5, " Degree Group: " . $this->aobj_context->mobj_data["deggrp"], "0", 1, "C");
$this->Cell(0, 5, " Exam No. Range: " . $examno, "0", 0, "C");
// $this->Cell(0, 5, " College Range: " . $this->aobj_context->mobj_data["fcollfrom"] . ' - ' . $this->aobj_context->mobj_data["fcollto"], "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 ReprtObject
{
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["deggrp"];
$get_coll_name = "select fdeggrp,fexamdate as fexamdate
from deggrp where fdeggrp = '{$deggrp}'";
$lobj_get_degree = $this->aobj_context->pobj_db->GetRow($get_coll_name);
$aobj_context->deggrp = $lobj_get_degree['fdeggrp'];
$aobj_context->fexamdate = $lobj_get_degree['fexamdate'];
$this->pdf = new MYPDF('L');
$this->pdf->aobj_context = $aobj_context;
}
public function Header($pdf)
{
$pdf->SetFont('Times', 'B', 10);
$pdf->Cell(10, 4, "Sl.", "LRT", 0, "C");
$pdf->Cell(20, 4, "Date", "LRT", 0, "C");
$pdf->Cell(20, 4, "Qp Code", "LRT", 0, "C");
$pdf->Cell(40, 4, "Valuation", "LT", 0, "C");
//$pdf->Cell(20, 4, "", "RT", 0, "C");
$pdf->Cell(40, 4, "Review", "LT", 0, "C");
//$pdf->Cell(20, 4, "", "RT", 0, "C");
$pdf->Cell(60, 4, "Packet numbers", "LRT", 1, "C");
$pdf->Cell(10, 4, "No.", "LRB", 0, "C");
$pdf->Cell(20, 4, "", "LRB", 0, "C");
$pdf->Cell(20, 4, "", "LRB", 0, "C");
$pdf->Cell(20, 4, "Pkts", "LB", 0, "C");
$pdf->Cell(20, 4, "Scripts", "RB", 0, "C");
$pdf->Cell(20, 4, "Pkts", "LB", 0, "C");
$pdf->Cell(20, 4, "Scripts", "RB", 0, "C");
$pdf->Cell(60, 4, "", "LRB", 1, "C");
}
public function TblHeader($pdf)
{
$pdf->SetFont('Times', 'B', 10);
$pdf->Cell(10, 4, "Sl.", "LRT", 0, "C");
$pdf->Cell(20, 4, "Date", "LRT", 0, "C");
$pdf->Cell(20, 4, "Qp Code", "LRT", 0, "C");
$pdf->Cell(40, 4, "Valuation", "LT", 0, "C");
//$pdf->Cell(20, 4, "", "RT", 0, "C");
$pdf->Cell(40, 4, "Review", "LT", 0, "C");
//$pdf->Cell(20, 4, "", "RT", 0, "C");
$pdf->Cell(60, 4, "Packet numbers", "LRT", 1, "C");
$pdf->Cell(10, 4, "No.", "LRB", 0, "C");
$pdf->Cell(20, 4, "", "LRB", 0, "C");
$pdf->Cell(20, 4, "", "LRB", 0, "C");
$pdf->Cell(20, 4, "Pkts", "LB", 0, "C");
$pdf->Cell(20, 4, "Scripts", "RB", 0, "C");
$pdf->Cell(20, 4, "Pkts", "LB", 0, "C");
$pdf->Cell(20, 4, "Scripts", "RB", 0, "C");
$pdf->Cell(60, 4, "", "LRB", 1, "C");
}
public function Report($data,$type)
{
$pdf = $this->pdf;
$pdf->SetMargins(10, 25);
$pdf->startPageGroup();
$pdf->SetFont('Times', 'B', 10);
$pdf->AddPage("P");
$sl_no = 1;
$pdf->SetFont('Times', '', 10);
$w=array(10,35,155);
$pdf->SetFont('Times', '', 10);
$oldCode = "";
$newCode = "";
$sl_no = 1;
$first = true;
$j = 0;
$A1 = 0;
$A2 = 0;
$A3 = 0;
$A4 = 0;
$A5 = 0;
$last = end($data);
// var_dump($x['fvalcode']);
foreach ($data as $key => $value) {
$newCode = $value['fvalcode'];
if ($newCode != $oldCode) {
$sl_no = 1;
$pdf->SetFont('Times', 'B', 10);
$pdf->Cell(50, $h,'Total', "1", 0, "C");
$pdf->Cell(20, $h, $A1, "1", 0, "C");
$pdf->Cell(20, $h, $A2, "1", 0, "C");
$pdf->Cell(20, $h, $A3, "1", 0, "C");
$pdf->Cell(20, $h, $A4, "1", 0 , "C");
$pdf->Cell(60, $h, $A5, "1", 1, "C");
$A1 = 0;
$A2 = 0;
$A3 = 0;
$A4 = 0;
$A5 = 0;
$pdf->AddPage("P");
$first = false;
$pdf->SetFont('Times', 'B', 12);
$pdf->Ln(10);
$j++;
$pdf->cell(0, 10,'Examiner / Reviewer : ' . $value['fvalcode'].' - '.$value['fteachname'], 0, 1, "C");
$pdf->Ln(1);
$this->Header($pdf);
$pdf->SetFont('Times', '', 10);
}
$x = $pdf->GetX();
$y = $pdf->GetY();
$pdf->SetX($x + 130);
$pdf->MultiCell(60, 7, $value['fpkts'], 1, "L");
$y1 = $pdf->GetY();
$h = $y1 - $y;
$pdf->SetXY($x, $y);
$pdf->Cell(10, $h,$sl_no, "1", 0, "C");
$pdf->Cell(20, $h,$value['fdate'], "1", 0, "C");
$pdf->Cell(20, $h,$value['fqpcode'], "1", 0, "C");
$pdf->Cell(20, $h,$value['fvpktcnt'], "1", 0, "C");
$pdf->Cell(20, $h,$value['fvscriptcnt'], "1", 0, "C");
$pdf->Cell(20, $h,$value['frvpktcnt'], "1", 0, "C");
$pdf->Cell(20, $h,$value['frscriptcnt'], "1", 1, "C");
// $pdf->Cell(60, 7,$value['fpkts'], "1", 1, "C");
// if($type == 'val')
// {
// $pdf->Cell(20, 7,$value['fvpktcnt'], "1", 0, "C");
// $pdf->Cell(20, 7,$value['fvscriptcnt'], "1", 0, "C");
// $pdf->Cell(20, 7,"", "1", 0, "C");
// $pdf->Cell(20, 7,"", "1", 0, "C");
// $pdf->Cell(60, 7,$value['fpkts'], "1", 1, "C");
// }else
// {
// $pdf->Cell(20, 7,"", "1", 0, "C");
// $pdf->Cell(20, 7,"", "1", 0, "C");
// $pdf->Cell(20, 7,$value['fvpktcnt'], "1", 0, "C");
// $pdf->Cell(20, 7,$value['fvscriptcnt'], "1", 0, "C");
// $pdf->Cell(60, 7,"", "1", 1, "C");
// }
$oldCode = $newCode;
$sl_no++;
$A1 += $value['fvpktcnt'];
$A2 += $value['fvscriptcnt'];
$A3 += $value['frvpktcnt'];
$A4 += $value['frscriptcnt'];
$A5 += $value['fvscriptcnt'] + $value['frscriptcnt'];
if($value['fvalcode'] == $last['fvalcode']){
// var_dump($last);
$cnt = count($data);
// var_dump($cnt);
if($cnt == $sl_no -1 ){
$pdf->SetFont('Times', 'B', 10);
$pdf->Cell(50, $h,'Total', "1", 0, "C");
$pdf->Cell(20, $h, $A1, "1", 0, "C");
$pdf->Cell(20, $h, $A2, "1", 0, "C");
$pdf->Cell(20, $h, $A3, "1", 0, "C");
$pdf->Cell(20, $h, $A4, "1", 0 , "C");
$pdf->Cell(60, $h, $A5, "1", 1, "C");
$A1 = 0;
$A2 = 0;
$A3 = 0;
$A4 = 0;
$A5 = 0;
}
}
}
if($this->aobj_context->FUNIVCODE == '027')
{
$pdf->Ln(10);
$pdf->Cell(0, $h,'Sign. of Custodian / Coordinator', "0", 0, "R");
}
}
public function writeReport($data){
$pdf = $this->pdf;
$pdf->SetMargins(7, 30);
$pdf->startPageGroup();
$pdf->AddPage("L");
// var_dump($pdf->getY());
$this->TblHeaderCollWise($pdf);
$sl_no = 1;
foreach($data as $k => $v)
{
if($pdf->GetY()>= 175)
{
$pdf->AddPage();
$this->TblHeaderCollWise($pdf);
}
$x = $pdf->GetX();
$y = $pdf->GetY();
$h = 6;
$pdf->SetX($x + 223);
$pdf->MultiCell(60, $h, $v['fcollcode'] .'-'.$v['fcollname'], "LRTB", "L");
$y1 = $pdf->GetY();
$h = $y1 - $y;
$pdf->SetXY($x, $y);
$pdf->SetX($x + 8);
$pdf->MultiCell(40, $h, $v['fboardname'], "LRTB", "L");
$y1 = $pdf->GetY();
$h = $y1 - $y;
$pdf->SetXY($x, $y);
$pdf->SetX($x + 63);
$pdf->MultiCell(50, $h, $v['fteachname'], "LRTB", "L");
$y1 = $pdf->GetY();
$h = $y1 - $y;
$pdf->SetXY($x, $y);
$pdf->Cell(8, $h, $sl_no, "1", 0, "C");
// $pdf->Cell(30, $h, $v['fboardname'], "1", 0, "L");
$pdf->SetX($x + 48);
$pdf->Cell(15, $h, $v['fteachcode'], "1", 0, "C");
$pdf->SetX($x + 113);
// $pdf->Cell(50, $h, $v['fteachname'], "1", 0, "L");
$pdf->Cell(15, $h, $v['fgender'], "1", 0, "C");
$pdf->Cell(15, $h, $v['fscale'], "1", 0, "C");
$pdf->Cell(20, $h, $v['fmobile'], "1", 0, "C");
$pdf->Cell(60, $h, $v['femail'], "1", 1, "L");
// $pdf->Cell(80, $h, $v['fcollcode'] .'-'.$v['fcollname'], "LRT", 1, "L");
$sl_no++;
}
}
public function SendOutput()
{
// ob_end_clean();
$this->pdf->Output("teachWorkDone.pdf", "I");
}
}
function teachWorkDone($aobj_context)
{
$univcode = $aobj_context->mobj_data["univcode"];
$fcollcode = $aobj_context->mobj_data["fcollcode"];
$vdatefrom = $aobj_context->mobj_data["vdatefrom"];
$vdateto = $aobj_context->mobj_data["vdateto"];
$fboard = $aobj_context->mobj_data["fboard"];
$tcode = $aobj_context->mobj_data["tcode"];
$tcode_arr = (explode(",",$tcode));
foreach($tcode_arr as $key=>$value){
$teach.= "'".$value."',";
}
$teach_array= substr_replace($teach,"",-1);
if($teach_array == "'all'"){
$tcnd = " ";
}else{
$tcnd = "and v.fvalcode in ({$teach_array})";
}
$fboard = 'All';
if($fboard == 'All' ){
$brd = '';
}else{
$brd = "AND m.fboard = '{$fboard}'";
}
$user = $aobj_context->mobj_data["user"];
$user = json_decode($user,true);
$board = $user['fdegree'];
$fcurtype = $user['fcurtype'];
$cnd1 = "";
if($fcurtype == '400')
{
$cnd1 = "and ifnull(m.fboard,'') = '{$board}'";
}
$cnd = "";
if($fcollcode != '' && $fcollcode != NULL)
$cnd = "and t1.fcollcode = '{$fcollcode}'";
$query1 = "select date_format(v.fdate,'%d/%m/%Y') as fdate , v.fqpcode,m.fsubname,
v.fvalcode, t1.fcollcode,
t1.fteachname,
count(v.fpacket) as fvpktcnt,
sum(v.fvcount) as fvscriptcnt,
'' as frvpktcnt,
'' as frscriptcnt,
group_concat(concat(v.fpacket,'(',v.fvcount,')') SEPARATOR ', ') as fpkts
from mastabu v
inner join masqp m on v.fqpcode = m.fqpcode
left join masteach t1 on v.fvalcode = t1.fteachcode
where v.fdate between date_format(str_to_date('{$vdatefrom}','%d/%m/%Y'),'%Y-%m-%d')
and date_format(str_to_date('{$vdateto}','%d/%m/%Y'),'%Y-%m-%d')
$tcnd
{$cnd}
{$cnd1}
{$brd}
group by v.fdate,v.fvalcode
union
select date_format(v.fdate,'%d/%m/%Y') as fdate ,v.fqpcode, m.fsubname,
v.frevcode as frvalcode, t1.fcollcode,
t1.fteachname,
'' as fvpktcnt,
'' as fvscriptcnt,
count(v.fpacket) as frvpktcnt,
sum(v.frcount) as frscriptcnt,
group_concat(concat(v.fpacket,'(', v.frcount,')') SEPARATOR ', ') as frpkts
from mastabu v
inner join masqp m on v.fqpcode = m.fqpcode
left join masteach t1 on v.frevcode = t1.fteachcode
where v.fdate between date_format(str_to_date('{$vdatefrom}','%d/%m/%Y'),'%Y-%m-%d')
and date_format(str_to_date('{$vdateto}','%d/%m/%Y'),'%Y-%m-%d')
$tcnd
{$cnd}
{$cnd1}
{$brd}
group by v.fdate,v.frevcode
order by fvalcode,date_format(fdate,'%d/%m/%Y') ";
// var_dump($query1);
// $query = "select date_format(v.fdate,'%d.%m.%Y') as fdate , v.fqpcode, v.fvalcode, t1.fcollcode,
// t1.fteachname, count(v.fpacket) as fvpktcnt,
// sum(v.fvcount) as fvscriptcnt, group_concat(v.fpacket SEPARATOR ', ') as fpkts
// from mastabu v inner join masqp s on v.fqpcode = s.fqpcode
// left join masteach t1 on v.fvalcode = t1.fteachcode
// where v.fvalcode between '{$tcodefrom}' and '{$tcodeto}'
// {$cnd}
// {$cnd1}
// group by v.fdate,v.fvalcode
// order by t1.fteachcode, v.fdate";
$result = $aobj_context->pobj_db->GetAll($query1);
$class_obj = new ReprtObject();
$class_obj->univcode = $univcode;
$class_obj->DefaultConstructor($aobj_context);
// If No data found Generate Blank Report
if (count($result) > 0) {
$class_obj->Report($result,'val');
}
// $query = "select date_format(v.fdate,'%d.%m.%Y') as fdate , v.fqpcode, v.frevcode as fvalcode, t1.fcollcode,
// t1.fteachname, count(v.fpacket) as fvpktcnt,
// sum(v.frcount) as fvscriptcnt, group_concat(v.fpacket SEPARATOR ', ') as fpkts
// from mastabu v inner join masqp s on v.fqpcode = s.fqpcode
// left join masteach t1 on v.frevcode = t1.fteachcode
// where v.frevcode between '{$tcodefrom}' and '{$tcodeto}'
// {$cnd}
// {$cnd1}
// group by v.fdate,v.frevcode
// order by t1.fteachcode, v.fdate";
// $result = $aobj_context->pobj_db->GetAll($query);
// // var_dump($aobj_context->pobj_db);
// //var_dump($query);
// if (count($result) > 0) {
// $class_obj->Report($result,'rev');
// }
$class_obj->SendOutput();
}
|