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.149.25.26
<?php
function GenerateMarksEntrySubjectWiseReport($aobj_context)
{
session_start();
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
$college_code = $_SESSION['collcode'];
$FUNIVCODE = $_SESSION['FUNIVCODE'];
$degree_code = $aobj_context->mobj_data["degree_code"];
$exam_code = $aobj_context->mobj_data["exam_code"];
$sublist_start = $aobj_context->mobj_data["subwise_start"];
$sublist_end = $aobj_context->mobj_data["subwise_end"];
$reg_start = $aobj_context->mobj_data["reg_start"];
$reg_end = $aobj_context->mobj_data["reg_end"];
$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_general_list.pdf";
$getnumword = $aobj_context->main_src . "/src/getnumword.php";
include($getnumword);
// global varibales
$p_count = 1;
// end global varibales
//echo getnumber_to_word("001"); die();
include($pdf_writer_class);
$pdf = new FPDF();
$pdf->SetFont('Times', '', 10);
$pdf->SetMargins(15, 12);
$pdf->AliasNbPages();
// query for the page header
$page_header_university = "select FUNIVNAME,FTOWN, date_format(now(),'%d/%m/%Y') as date from control";
$lobj_page_header_university = $aobj_context->mobj_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->mobj_db->GetRow($page_header_college);
$page_header_degree = "select concat('[ ',FDEGREE,' ] - ', FDESCPN) as Degree_name,
concat(FEXAMNAME ,' EXAMINATION - ',FEXAMDATE) as Exam ,FADYEAR
from degree where FDEGREE = '{$degree_code}' and FEXAMNO='{$exam_code}' ";
$lobj_page_header_degree = $aobj_context->mobj_db->GetRow($page_header_degree);
$page_header_REGROLL = "select FREGROLL, fsnglent from control";
$lobj_page_header_REGROLL = $aobj_context->mobj_db->GetRow($page_header_REGROLL);
$pdf->aobj_context = $aobj_context;
//$pdf->WhichReport = 'MARKS_SUBJECTWISE';
$pdf->FUNIVNAME = $lobj_page_header_university['FUNIVNAME'];
$pdf->FTOWN = $lobj_page_header_university['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->Exam = $lobj_page_header_degree['Exam'];
$pdf->AdmissionYear = $lobj_page_header_degree['FADYEAR'];
$pdf->REGROLL = $lobj_page_header_REGROLL['FREGROLL'];
$fsnglent = $lobj_page_header_REGROLL['fsnglent'];
$pdf->RFROM = strtoupper(substr($sublist_start, -4));
$pdf->RTO = strtoupper(substr($sublist_end, -4));
#and m.fcollcode = stu.fcollcode
$get_total_absent = " select m.FSUBCODE, sum(case when m.fmarks = -2 then 1 else 0 end) as total_absent
from marks m inner join student stu on m.fdegree = stu.fdegree and m.FREGNO = stu.FREGNO
and m.fcollcode = stu.fcollcode
inner join subject s on m.fdegree = s.fdegree and m.fexamno = s.fexamno and m.FSUBCODE = s.FCSUBCODE
where m.FDEGREE = '{$degree_code}' and m.FEXAMNO = '{$exam_code}'
and m.FSUBCODE between '{$sublist_start}' and '{$sublist_end}'
and m.fregno between '{$reg_start}' and '{$reg_end}'
and m.FCOLLCODE = '{$college_code}' and IFNULL(stu.FDELETED,'F') <> 'T'
group by m.FSUBCODE order by m.FSUBCODE";
$lobj_get_total_absent = $aobj_context->mobj_db->GetAll($get_total_absent);
//var_dump($get_total_absent); die();
//echo $get_total_absent; die();
foreach ($lobj_get_total_absent as $key => $absentcnt) {
$sub_wise_total_absent[$absentcnt['FSUBCODE']] = $absentcnt['total_absent'];
//var_dump($sub_wise_total_absent);
}
$get_subject_data = " select m.FREGNO, SUBSTRING(stu.FNAME,1,36) as Name1,
SUBSTRING(stu.FNAME,37) as Name2,
concat(s.FSUBNAME,', ', FSSUBNAME) as sub_name,
if(ifnull(m.FMARKS,-1) >= 0,right(concat('000',m.FMARKS),3),if(ifnull(m.FMARKS,-1) = -2,'ABSENT','')) as Marks,
m.FSUBCODE, s.FSMAXMARKS, ifnull(c.ffreezed, '') as ffreezed
from marks m inner join student stu on m.fdegree = stu.fdegree and m.FREGNO=stu.FREGNO
and m.fcollcode = stu.fcollcode
inner join subject s on m.fdegree = s.fdegree and m.fexamno = s.fexamno and m.FSUBCODE = s.FCSUBCODE
inner join collia c on m.fdegree = c.fdegree and c.fexamno = m.fexamno and c.fcollcode = m.FCOLLCODE
and m.fsubcode = c.fsubcode
where m.FDEGREE = '{$degree_code}' and m.FEXAMNO = '{$exam_code}'
and m.FSUBCODE between '{$sublist_start}' and '{$sublist_end}'
and m.fregno between '{$reg_start}' and '{$reg_end}'
and m.FCOLLCODE = '{$college_code}' and c.FCOLLCODE = '{$college_code}'
and ifnull(m.FMARKS,-1) <> -1 and IFNULL(stu.FDELETED,'F') <> 'T'
group by FCSUBCODE, m.FREGNO order by FCSUBCODE, m.FREGNO";
// var_dump($get_subject_data); die();
//var_dump($get_subject_data);
$lobj_get_subject_data = $aobj_context->mobj_db->GetAll($get_subject_data);
$first = true;
$sl_no = 1;
$k2 = 1;
$pdf->SetFont('Times', '', 10);
$oldsub = "";
$newsub = "";
$pdf->page_absent_count = 0;
foreach ($lobj_get_subject_data as $key => $value) {
$newsub = $value['FSUBCODE'];
$tot_absent = $sub_wise_total_absent[$value['FSUBCODE']];
if ($pdf->GetY() > 235) {
$new_y = $pdf->GetY();
$first = true;
}
if ($newsub != $oldsub) {
$first = true;
$sl_no = 1;
if ($oldsub != '') {
$pdf->Ln(5);
if ($FUNIVCODE == '018') {
if ($pdf->FFREEZE == "F") {
$pdf->Cell(1500, 6, 'Marks Enterd By Marks verified by Marks Authorised by', '0', 1, 'L');
$pdf->Ln(2);
$pdf->Cell(1500, 6, 'Signature Faculty Signature Hod/Principal Signature', '0', 1, 'L');
$pdf->Ln(2);
$pdf->Cell(1500, 6, 'Name Faculty Name Hod/Principal Name', '0', 1, 'L');
$pdf->Ln(2);
$pdf->Cell(1500, 6, 'Date Date Date ', '0', 1, 'L');
} else {
$pdf->SetFont('Times', 'B', 20);
$pdf->Cell(1500, 6, 'DRAFT COPY', '0', 1, 'L');
$pdf->SetFont('Times', '', 10);
}
} else {
// $pdf->Cell(50, 6, "Date : {$pdf->date_1}", '0', 1, 'L');
// $pdf->Cell(50, 6, 'Entered by', '0', 0, 'L');
// $pdf->Cell(110, 6, 'Signature of the Teaching Faculty', '0', 1, 'R');
// $pdf->Cell(50, 6, 'Signature of the HOD', '0', 0, 'L');
// $pdf->Cell(110, 6, 'Signature of the Principal', '0', 1, 'R');
}
}
}
$oldsub = $newsub;
if ($first) {
if ($k2 != 1) {
$pdf->SetY(-50);
$pdf->SetFont('Times', '', 9);
$pdf->Cell(45, 6, "Date : " . date('d/m/Y'), '0', 1, 'L');
$pdf->Ln(3);
$pdf->Cell(45, 6, 'Entered by : ', '0', 0, 'L');
$pdf->Cell(140, 6, 'Signature of the Teaching Faculty', '0', 1, 'R');
$pdf->Ln(3);
$pdf->Cell(45, 6, 'Signature of the HOD', '0', 0, 'L');
$pdf->Cell(140, 6, 'Signature of the Principal', '0', 1, 'R');
$pdf->Ln(3);
$pdf->Cell(185, 6, 'Absent on this page : ' . $pdf->page_absent_count . ' Total Absent : ' . $tot_absent, '0', 1, 'C');
$pdf->page_absent_count = 0;
$pdf->Cell(140, 6, 'Printed - IP Address : ' . $_SERVER['REMOTE_ADDR'] . ", Date : " . date('d/m/Y h:i:s A'), '0', 0, 'L');
$pdf->Cell(45, 6, 'Page ' . $pdf->PageNo() . ' of {nb}', 0, 1, 'R');
}
$pdf->AddPage();
$pdf->SetMargins(15, 12);
$pdf->SetFont('Times', 'BU', 12);
$pdf->Cell(0, 6, 'I.A. MARKS LIST (SUBJECTWISE)', 0, 1, 'C');
$pdf->SetFont('Times', '', 11);
$pdf->Cell(0, 6, $pdf->Degree_name . " " . $pdf->Exam, 0, 1, 'C');
$pdf->Cell(0, 6, 'Subject : ' . $value['FSUBCODE'] . ' - ' . $value['sub_name'] . ', Max. Marks: ' . $value['FSMAXMARKS'], 0, 1, 'C');
$pdf->SetFont('Times', '', 10);
if ($value[ffreezed] == 'T') {
$pdf->Cell(0, 6, '[MARKS FREEZED / VERIFIED]', 0, 1, 'C');
$pdf->FFREEZE = "F";
} else {
$pdf->Cell(0, 6, '[MARKS FREEZING / VERIFICATION PENDING]', 0, 1, 'C');
$pdf->FFREEZE = "P";
}
$pdf->SetFont('Times', 'B', 10);
$pdf->Ln(2);
$pdf->Cell(12, 6, 'Sl. No.', '1', 0, 'C');
$pdf->Cell(25, 6, $pdf->REGROLL, '1', 0, 'C');
$pdf->Cell(90, 6, 'Name', '1', 0, 'C');
if ($fsnglent == 'T')
$pdf->Cell(20, 6, 'Marks', '1', 0, 'C');
else {
$pdf->Cell(20, 6, 'Marks 1', '1', 0, 'C');
$pdf->Cell(20, 6, 'Marks 2', '1', 0, 'C');
}
$pdf->Cell(40, 6, 'Remarks ', '1', 1, 'C');
$first = false;
}
$pdf->SetFont('Times', '', 10);
$pdf->Cell(12, 6, $sl_no, 'LBR', 0, 'C');
$pdf->Cell(25, 6, $value['FREGNO'], 'LBR', 0, 'C');
$pdf->Cell(90, 6, $value['Name1'], 'LBR', 0, 'L');
if ($value['Marks'] == 'ABSENT') {
$pdf->page_absent_count++;
$pdf->Cell(20, 6, '-', 'LBR', 0, 'C');
$pdf->Cell(40, 6, $value['Marks'], 'LBR', 1, 'L');
} else {
$pdf->Cell(20, 6, $value['Marks'], 'LBR', 0, 'C');
$pdf->Cell(40, 6, getNumber(floatval($value['Marks'])), 'LBR', 1, 'L');
}
if ($value['Name2'] != '') {
$pdf->Cell(12, 6, ' ', 'LRB', 0, 'C');
$pdf->Cell(25, 6, ' ', 'LRB', 0, 'L');
$pdf->Cell(90, 6, $value['Name2'], 'LBR', 0, 'L');
$pdf->Cell(20, 6, ' ', 'LRB', 0, 'L');
$pdf->Cell(40, 6, ' ', 'LRB', 1, 'L');
}
$count++;
$row_cnt++;
++$sl_no;
++$k2;
}
$pdf->Ln(5);
if ($FUNIVCODE == '018') {
if ($pdf->FFREEZE == "F") {
$pdf->Cell(1500, 6, 'Marks Enterd By Marks verified by Marks Authorised by', '0', 1, 'L');
$pdf->Ln(2);
$pdf->Cell(1500, 6, 'Signature Faculty Signature Hod/Principal Signature', '0', 1, 'L');
$pdf->Ln(2);
$pdf->Cell(1500, 6, 'Name Faculty Name Hod/Principal Name', '0', 1, 'L');
$pdf->Ln(2);
$pdf->Cell(1500, 6, 'Date Date Date ', '0', 1, 'L');
} else {
$pdf->SetFont('Times', 'B', 20);
$pdf->Cell(1500, 6, 'DRAFT COPY', '0', 1, 'L');
$pdf->SetFont('Times', '', 10);
}
} else {
// $pdf->Cell(45, 6, "Date : " . date('d/m/Y'), '0', 1, 'L');
// $pdf->Cell(45, 6, 'Entered by : ', '0', 0, 'L');
// $pdf->Cell(140, 6, 'Signature of the Teaching Faculty', '0', 1, 'R');
// $pdf->Cell(45, 6, 'Signature of the HOD', '0', 0, 'L');
// $pdf->Cell(140, 6, 'Signature of the Principal', '0', 1, 'R');
}
$pdf->SetY(-50);
$pdf->SetFont('Times', '', 9);
$pdf->Cell(45, 6, "Date : " . date('d/m/Y'), '0', 1, 'L');
$pdf->Ln(3);
$pdf->Cell(45, 6, 'Entered by : ', '0', 0, 'L');
$pdf->Cell(140, 6, 'Signature of the Teaching Faculty', '0', 1, 'R');
$pdf->Ln(3);
$pdf->Cell(45, 6, 'Signature of the HOD', '0', 0, 'L');
$pdf->Cell(140, 6, 'Signature of the Principal', '0', 1, 'R');
$pdf->Ln(3);
$pdf->Cell(185, 6, 'Absent on this page : ' . $pdf->page_absent_count . ' Total Absent : ' . $tot_absent, '0', 1, 'C');
$pdf->page_absent_count = 0;
$pdf->Cell(140, 6, 'Printed - IP Address : ' . $_SERVER['REMOTE_ADDR'] . ", Date : " . date('d/m/Y h:i:s A'), '0', 0, 'L');
$pdf->Cell(45, 6, 'Page ' . $pdf->PageNo() . ' of {nb}', 0, 1, 'R');
$pdf->Output("ia_marks_list_subject.pdf", "D");
}
|