HALLTICKET CHANGES

This commit is contained in:
velz 2018-05-29 18:34:41 +05:30
parent 5d5f1f84ca
commit 8a250d233d
5 changed files with 588 additions and 178 deletions

View File

@ -689,12 +689,12 @@ class Hallticket_model extends CI_Model
order by T_SemSubMap_Master.SemesterID";
$res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$i,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId));
//$id['FeeDetails'][$key2] = $res->result();
$in[] = $res->result();
$in1[] = $res->result();
//array_push($id['FeeDetails'][$key2],$ind);
}
array_splice($id['FeeDetails'][$key2],0,6,$in);
array_splice($id['FeeDetails'][$key2],0,6,$in1);
}
@ -710,12 +710,12 @@ class Hallticket_model extends CI_Model
order by T_SemSubMap_Master.SemesterID";
$res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$j,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId));
//$id['FeeDetails'][$key2] = $res->result();
$in[] = $res->result();
$in2[] = $res->result();
//array_push($id['FeeDetails'][$key2],$ind);
}
array_splice($id['FeeDetails'][$key2],0,6,$in);
array_splice($id['FeeDetails'][$key2],0,6,$in2);
}
@ -731,12 +731,12 @@ class Hallticket_model extends CI_Model
order by T_SemSubMap_Master.SemesterID";
$res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$k,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId));
//$id['FeeDetails'][$key2] = $res->result();
$in[] = $res->result();
$in3[] = $res->result();
//array_push($id['FeeDetails'][$key2],$ind);
}
array_splice($id['FeeDetails'][$key2],0,6,$in);
array_splice($id['FeeDetails'][$key2],0,6,$in3);
}
@ -752,12 +752,12 @@ class Hallticket_model extends CI_Model
order by T_SemSubMap_Master.SemesterID";
$res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$l,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId));
//$id['FeeDetails'][$key2] = $res->result();
$in[] = $res->result();
$in4[] = $res->result();
//array_push($id['FeeDetails'][$key2],$ind);
}
array_splice($id['FeeDetails'][$key2],0,6,$in);
array_splice($id['FeeDetails'][$key2],0,6,$in4);
}
$studentIDs['NUMTYPE'] = 'YEAR';

View File

@ -255,11 +255,12 @@ $scope.isLoaderTxt = "Loading...";
};
$http(dataForHallTicket).then(function (response) {
if (response.data.status==200 && response.data.hallTicketStatus) {
// console.log(response.data);
$scope.pdfModel.universityDetails = response.data.hallTicketData.UniversityDetails;
$scope.pdfModel.studentDetails = response.data.hallTicketData.studentDetails;
//console.log('API');
//console.log($scope.pdfModel.studentDetails.length);
//console.log($scope.pdfModel.studentDetails);
//console.log(response.data.hallTicketData.studentDetails.length);
$scope.pdfModel.batchDetails = $scope.myModel.batchName;
$scope.pdfModel.courseDetails = $scope.myModel.courseName;
@ -310,36 +311,425 @@ $scope.isLoaderTxt = "Loading...";
// Controller for Hallticket Modal PDF
app.controller('HallTicketPDFCtrl', ["$scope", "$modalInstance", "pdfitems", function ($scope, $modalInstance, pdfitems) {
// console.log(pdfitems);
//console.log(pdfitems);
$scope.localPdfUniverityDetails = pdfitems.universityDetails;
$scope.universityNamePDF = $scope.localPdfUniverityDetails[0].UniversityName;
$scope.universityAddressPDF = $scope.localPdfUniverityDetails[0].Address;
$scope.universityEmailPDF = $scope.localPdfUniverityDetails[0].EmailID;
$scope.universityLogoPDF = $scope.localPdfUniverityDetails[0].ProfilePicPath;
$scope.batchNamePDF = pdfitems.batchDetails.BatchName;
$scope.courseNamePDF = pdfitems.courseDetails.CourseName;
$scope.centerNamePDF = pdfitems.centerDetails.CenterName+''+ pdfitems.centerDetails.CenterAddress;
$scope.semDataTypePDF = pdfitems.semDataType;
//console.log($scope.semDataTypePDF);
//console.log($scope.universityNamePDF+'-'+$scope.localPdfUniverityDetails.UniversityName);
$scope.localPdfStudentDetails = pdfitems.studentDetails;
$scope.printStudentDetails = function() {
angular.forEach($scope.localPdfStudentDetails,function(value,key){
$scope.printStudentDetails = function(hallticket_type) {
//console.log('FUNCTION CALLED-'+hallticket_type);
angular.forEach($scope.localPdfStudentDetails,function(value,key){
var tempID = '#export'+value.StudentID;
var PDFName = value.Firstname+'-'+value.Lastname;
kendo.drawing.drawDOM( $(tempID),{paperSize: "A4",margin: { top: "1cm", bottom: "1cm" ,left: "3cm",right:"3cm"},scale: 0.8,height: 500} ).then(function(group) {
if(value.StudentID)
{
//console.log("Total NO of Sem"+value.FeeDetails.length);
kendo.drawing.pdf.saveAs(group, PDFName+".pdf");
});
});
}
// var imgData = '';
// html2canvas($("#university_header").get(0)).then(function (canvas) {
// var imgData = canvas.toDataURL("image/jpeg");
// //var imgData = imgData.replace("png", "jpeg");
// console.log(imgData);
// // // document.getElementById('uh').setAttribute('src', imgData);
// });
if(hallticket_type == 'SEM' || hallticket_type == 'REG' || hallticket_type == 'LAT'){
// console.log('hallticket_type == '+hallticket_type);
var semlength = value.FeeDetails.length;
if(hallticket_type == 'REG' || hallticket_type == 'LAT')
{
semlength = 7;
}
var i = 0;
for(i = 0; i <= semlength;i=i+2)
{
//console.log('FOR'+i);
var fileName = "DEFAULT.pdf";
var margins = {
top: 70,
bottom: 40,
left: 30,
width: 550
};
var doc = new jsPDF('p', 'pt');
//convert img to base 64
var img = document.getElementById("logo")
var canvas = document.createElement("canvas");
canvas.width = 100;
canvas.height = 100;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0,100,100);
var dataURL = canvas.toDataURL("image/png");
//console.log('***'+dataURL);
//convert img to base 64
//convert img to base 64
var profile = document.getElementById("sprofile")
var canvas2 = document.createElement("canvas");
canvas2.width = 100;
canvas2.height = 100;
var ctx2 = canvas2.getContext("2d");
ctx2.drawImage(profile, 0, 0,100,100);
var profiledataURL = canvas2.toDataURL("image/png",1.0);
//convert img to base 64
var sem1 = "";
var sem2 = "";
var tableid = value.StudentID;
doc.autoTableSetDefaults({
styles: {cellPadding: 3.0, fontSize: 10},
headerStyles: {fillColor: [245, 245, 240], textColor: 0},
// columnStyles: {
// name: {fillColor: [245, 245, 240], textColor: 255, fontStyle: 'bold'}
// }
});
var firstTableID = tableid+i;
var SecTableID = (tableid+(i+1));
// console.log('iter-'+i+'ID-'+firstTableID+'-'+SecTableID);
if(document.getElementById(firstTableID))
{
// console.log(tableid+i);
var sem1 = doc.autoTableHtmlToJson(document.getElementById(firstTableID));
//console.log(sem1);
}
if(document.getElementById(SecTableID))
{
// console.log(tableid+(i+1));
var sem2 = doc.autoTableHtmlToJson(document.getElementById(SecTableID));
//console.log(sem2);
}
if(sem1 != "")
{
doc.autoTable(sem1.columns, sem1.data, {margin: {top: 170},theme:'grid'});
}
// var NewImage = new Image();
// NewImage.src = imgData;
var header = function(data) {
var examName = 'ADMIT CARD : '+$scope.courseNamePDF+' EXAMINATION ' +$scope.batchNamePDF;
var rollNo = 'Reg No : '+value.EnrollmentID;
var stuName = 'Name : '+value.Firstname+' '+value.Lastname;
var centerName = 'Centre : '+$scope.centerNamePDF;
if(hallticket_type == 'SEM' || hallticket_type == 'REG')
{
var semName = 'SEM'+(i+1)+'&'+(i+2);
}
else if(hallticket_type == 'LAT')
{
var semName = 'SEM'+(i+3)+'&'+(i+4);
}
fileName = value.EnrollmentID+'-'+value.Firstname+value.Lastname+$scope.courseNamePDF+semName+'.pdf';
doc.setDrawColor(0);
doc.setFillColor(245, 245, 240);
doc.rect(150, 30, 395, 60,'FD');
doc.setFontSize(12);
doc.setTextColor(40);
doc.setFontStyle('normal');
// doc.addImage(imgData, 'png', 100, 100, 100, 100);
doc.addImage(dataURL, 'jpeg', 75, 35, 50, 50);//university logo location
doc.addImage(profiledataURL, 'jpeg', 470, 100, 60, 60);//student profile location
doc.setFontSize(22);
doc.text(200,50,$scope.universityNamePDF);
doc.setFontSize(10);
doc.text(200,65,$scope.universityAddressPDF);
doc.setFontSize(10);
doc.text(200,80,$scope.universityEmailPDF);
doc.rect(45, 100, 400, 60);
doc.rect(445, 100, 100, 60);
doc.line(45, 125, 445, 125);
doc.setFontSize(10);
doc.setFontType("bold");
doc.text(110,115,examName);
doc.setFontType("normal");
doc.text(70,140,rollNo);
doc.text(280,140,stuName);
doc.text(70,155,centerName);
//footer content
var footerNote1 ="Note : 1. Without Identification Card Candidates shallnot Allowed to write for examination.";
var footerNote2 ="2. For further instructions refer to the facing sheet of the Answer book before writting examination.";
var footerNote3 ="3. Carrying Mobile phone to the examination hall is strictly prohibited.";
var footerNote4 ="4. Attend the examintaion as per mentioned above.";
var footerNote_student_sign ="Signature of the Student";
var footerNote_controller_sign ="Controller of Examination";
doc.setFontSize(8);
doc.text(40,doc.internal.pageSize.height - 150,footerNote1);
doc.text(70,doc.internal.pageSize.height - 140,footerNote2);
doc.text(70,doc.internal.pageSize.height - 130,footerNote3);
doc.text(70,doc.internal.pageSize.height - 120,footerNote4);
doc.text(40,doc.internal.pageSize.height - 50,footerNote_student_sign);
doc.text(450,doc.internal.pageSize.height - 50,footerNote_controller_sign);
};
// var header = document.querySelector('.header');
var options = {
addPageContent: header,
margin: {
top: 100
},
startY: doc.autoTableEndPosY() + 20,
theme :'grid'
};
if(sem2 != "")
{
doc.autoTable(sem2.columns, sem2.data, options);
}
// console.log('For END'+i);
if(sem2 != "" || sem1 != "")
{
doc.save(fileName);
}
// console.log('PDF DONE');
}//End of semlength for loop
}//END OF SEM HALL TICKET TYPE
else if(hallticket_type == 'YEAR')
{
//console.log('hallticket_type == '+hallticket_type);
var semlength = value.FeeDetails.length;
var i = 0;
for(i = 0; i <= semlength;i++)
{
// console.log('FOR'+i);
var fileName = "DEFAULT.pdf";
var semName = 'DEFAULT_SEM';
var margins = {
top: 70,
bottom: 40,
left: 30,
width: 550
};
var doc = new jsPDF('p', 'pt');
//convert img to base 64
var img = document.getElementById("logo")
var canvas = document.createElement("canvas");
canvas.width = 100;
canvas.height = 100;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0,100,100);
var dataURL = canvas.toDataURL("image/png");
//console.log('***'+dataURL);
//convert img to base 64
//convert img to base 64
var profile = document.getElementById("sprofile")
var canvas2 = document.createElement("canvas");
canvas2.width = 100;
canvas2.height = 100;
var ctx2 = canvas2.getContext("2d");
ctx2.drawImage(profile, 0, 0,100,100);
var profiledataURL = canvas2.toDataURL("image/png",1.0);
//convert img to base 64
var sem1 = "";
var sem2 = "";
var tableid = value.StudentID;
doc.autoTableSetDefaults({
styles: {cellPadding: 3.0, fontSize: 10},
headerStyles: {fillColor: [245, 245, 240], textColor: 0},
// columnStyles: {
// name: {fillColor: [245, 245, 240], textColor: 255, fontStyle: 'bold'}
// }
});
var firstTableID = "0";
var SecTableID = "1";
switch(i)
{
case 0:
var firstTableID = tableid+'year10';
var SecTableID = tableid+'year11';
semName = 'YEAR1';
//console.log(firstTableID+'-'+SecTableID);
break;
case 1:
var firstTableID = tableid+'year20';
var SecTableID = tableid+'year21';
semName = 'YEAR2';
//console.log(firstTableID+'-'+SecTableID);
break;
case 2:
var firstTableID = tableid+'year30';
var SecTableID = tableid+'year31';
semName = 'YEAR3';
//console.log(firstTableID+'-'+SecTableID);
break;
case 4:
var firstTableID = tableid+'year40';
var SecTableID = tableid+'year41';
semName = 'YEAR4';
//console.log(firstTableID+'-'+SecTableID);
break;
}
// console.log('iter-'+i+'ID-'+firstTableID+'-'+SecTableID);
if(document.getElementById(firstTableID))
{
// console.log(tableid+i);
var sem1 = doc.autoTableHtmlToJson(document.getElementById(firstTableID));
//console.log(sem1);
}
if(document.getElementById(SecTableID))
{
// console.log(tableid+(i+1));
var sem2 = doc.autoTableHtmlToJson(document.getElementById(SecTableID));
//console.log(sem2);
}
if(sem1 != "")
{
doc.autoTable(sem1.columns, sem1.data, {margin: {top: 170},theme:'grid'});
}
// var NewImage = new Image();
// NewImage.src = imgData;
var header = function(data) {
var examName = 'ADMIT CARD : '+$scope.courseNamePDF+' EXAMINATION ' +$scope.batchNamePDF;
var rollNo = 'Reg No : '+value.EnrollmentID;
var stuName = 'Name : '+value.Firstname+' '+value.Lastname;
var centerName = 'Centre : '+$scope.centerNamePDF;
fileName = value.EnrollmentID+'-'+value.Firstname+value.Lastname+$scope.courseNamePDF+semName+'.pdf';
doc.setDrawColor(0);
doc.setFillColor(245, 245, 240);
doc.rect(150, 30, 395, 60,'FD');
doc.setFontSize(12);
doc.setTextColor(40);
doc.setFontStyle('normal');
// doc.addImage(imgData, 'png', 100, 100, 100, 100);
doc.addImage(dataURL, 'jpeg', 75, 35, 50, 50);//university logo location
doc.addImage(profiledataURL, 'jpeg', 470, 100, 60, 60);//student profile location
doc.setFontSize(22);
doc.text(200,50,$scope.universityNamePDF);
doc.setFontSize(10);
doc.text(200,65,$scope.universityAddressPDF);
doc.setFontSize(10);
doc.text(200,80,$scope.universityEmailPDF);
doc.rect(45, 100, 400, 60);
doc.rect(445, 100, 100, 60);
doc.line(45, 125, 445, 125);
doc.setFontSize(10);
doc.setFontType("bold");
doc.text(110,115,examName);
doc.setFontType("normal");
doc.text(70,140,rollNo);
doc.text(280,140,stuName);
doc.text(70,155,centerName);
//footer content
var footerNote1 ="Note : 1. Without Identification Card Candidates shallnot Allowed to write for examination.";
var footerNote2 ="2. For further instructions refer to the facing sheet of the Answer book before writting examination.";
var footerNote3 ="3. Carrying Mobile phone to the examination hall is strictly prohibited.";
var footerNote4 ="4. Attend the examintaion as per mentioned above.";
var footerNote_student_sign ="Signature of the Student";
var footerNote_controller_sign ="Controller of Examination";
doc.setFontSize(8);
doc.text(40,doc.internal.pageSize.height - 150,footerNote1);
doc.text(70,doc.internal.pageSize.height - 140,footerNote2);
doc.text(70,doc.internal.pageSize.height - 130,footerNote3);
doc.text(70,doc.internal.pageSize.height - 120,footerNote4);
doc.text(40,doc.internal.pageSize.height - 50,footerNote_student_sign);
doc.text(450,doc.internal.pageSize.height - 50,footerNote_controller_sign);
};
// var header = document.querySelector('.header');
var options = {
addPageContent: header,
margin: {
top: 100
},
startY: doc.autoTableEndPosY() + 20,
theme :'grid'
};
if(sem2 != "")
{
doc.autoTable(sem2.columns, sem2.data, options);
}
//console.log('For END'+i);
if(sem2 != "" || sem1 != "")
{
doc.save(fileName);
}
// console.log('PDF DONE');
}//End of semlength for loop
}//END OF YEAR HALL TICKET TYPE
}// END of studentID Check
});//END of For Each
}
$scope.ok = function () {
$modalInstance.close($scope.selected.item);

View File

@ -1,163 +1,164 @@
<style>
<!-- table.a { -->
<!-- border-collapse: collapse; -->
<!-- } -->
<!-- th.a, td.a { -->
<!-- padding: 5px; -->
<!-- text-align: left; -->
<!-- border-bottom: 1px solid #ddd; -->
<!-- text-align:center; -->
<!-- } -->
.table{
border: 1px solid #000 !important;
}
</style>
<!-- start: UI BOOTSTRAP MODALS -->
<div class="container-fluid container-fullw bg-white">
<!-- /// controller: 'ModalDemoCtrl' - localtion: assets/js/controllers/bootstrapCtrl.js /// -->
<div ng-controller="generateHallTicketCtrl">
<div class="row">
<div class="container-fluid container-fullw bg-white" ng-controller="generateHallTicketCtrl">
<div align="right">
<button class="btn btn-success btn-sm" ng-click="printStudentDetails();">Print</button>
<button class="btn btn-success btn-sm" ng-click="printStudentDetails(semDataTypePDF);">Print</button>
</div>
</div>
<div class ="row" ng-repeat="studentObj in localPdfStudentDetails" and ng-if="studentObj.Firstname">
<div class="row" id="export{{studentObj.StudentID}}">
<div class="col-md-12">
<center>
<table >
<div ng-repeat="studentObj in localPdfStudentDetails" and ng-if="studentObj.Firstname">
<div id="university_header">
<table width="100%" border="1" id = "" style="background-color:#fff;">
<tbody>
<tr><td>
<div class="col-md-12" id="university" style="font-family:Arial, Helvetica, sans-serif;font-size:10px;">
<table width="100%">
<tbody>
<tr><td rowspan="3" width="20%" style="text-align:center;">
<img src="http://1.bp.blogspot.com/-npXerPJ9HFc/VGv__7L_VRI/AAAAAAAADQI/nBjI6T6Vhzo/s1600/SSSIHL%2Blogo.jpg" alt="Not Available" width="50" height="50">
</td><td style="text-align:center;">
<h4>{{universityNamePDF}}</h4></td></tr>
<tr><td style="text-align:center;">{{universityAddressPDF}}</td></tr>
<tr><center><td style="text-align:center;">{{universityEmailPDF}}</td></center></tr>
</tbody></table>
</div>
</div>
<tr>
<td rowspan="3" width="20%"><img src="images/{{universityLogoPDF}}" id="logo" alt="NAN" height="100" width="100"/></td>
<td><center>{{universityNamePDF}}</center></td>
</tr>
<tr>
<td><center>{{universityEmailPDF}}</center></td>
</tr>
<tr>
<td ><center>{{universityAddressPDF}}</center></td>
</tr>
</tbody>
<div class="col-md-12" id="student">
<table class = "table" border="1" style="font-family:Arial, Helvetica, sans-serif;font-size:6px;">
<tbody>
<tr><td colspan="2"><b><center>ADMIT CARD&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;{{courseNamePDF}}&nbsp;&nbsp;&nbsp; EXAMINATION&nbsp;&nbsp;&nbsp;{{batchNamePDF}}</center></b></td><td rowspan="3" style="width: 1px;"><img src="images/{{studentObj.ProfilePicPath}}" alt="Not Available" width="50" height="50"></td></tr>
<tr><td style="border"><b><center>Reg No :</b>{{studentObj.EnrollmentID}}<center></td><td><b><center>Name :</b> {{studentObj.Firstname}}&nbsp;{{studentObj.Lastname}}<center></td></tr>
<tr><td colspan="2"><center><b>Centre:</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{centerNamePDF}}</center></td></tr>
</tbody>
</table>
</div>
<div class="col-md-12" id="subjects" >
<table border="1" width = "100%" style="font-family:Arial, Helvetica, sans-serif;font-size:7px;">
<thead><tr><th width="5%"><center>Sem/</br>Year</center></th><th width="12%"><center>Subject Code</center></th><th><center>Subject Name</center></th><th width="12%"><center>Date</center></th><th width="12%"><center>From Time</center></th><th width="12%"><center>To Time</center></th><th width="5%"><center>Invigi.</br>Sign</center></th></tr></thead>
<!-- this first tbody for subjets from semester type -->
<tbody ng-repeat ="subjects in studentObj.FeeDetails" and ng-if="semDataTypePDF == 'SEM' ">
<tr ng-repeat="sub in subjects"><td >0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td >{{sub.ToTime}}</td><td >&nbsp;</td></tr>
</tbody>
<!-- the next four tbody for subjets from Year type -->
<tbody ng-repeat ="subjects in studentObj.FeeDetails[0]" and ng-if="semDataTypePDF == 'YEAR' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[1]" and ng-if="semDataTypePDF == 'YEAR' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[2]" and ng-if="semDataTypePDF == 'YEAR' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[3]" and ng-if="semDataTypePDF == 'YEAR' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<!-- the next four tbody for subjets from Regular and Lateral type -->
<tbody ng-repeat ="subjects in studentObj.FeeDetails[0]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[1]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[2]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[3]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[4]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[5]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[6]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
<tbody ng-repeat ="subjects in studentObj.FeeDetails[7]" and ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' ">
<tr ng-repeat="sub in subjects"><td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td>{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}}</td><td>{{sub.ToTime}}</td><td>&nbsp;</td></tr>
</tbody>
</table>
<div class="col-md-12" style="font-family:Arial, Helvetica, sans-serif;font-size:6px;">
<div class="pullright">
<label>Note:</label>
<p>
<ul>
<li>Without Identification Card Candidates shallnot be Allowed to write examintaion.</li>
<li>For further instructions refer to the faceing sheet of the Answer book before writing examintaion.</li>
<li>Carrying Mobile Phone into the examintaion hall is strictly prohibited.</li>
<li>Attend the examintaion as per mentioned above.</li>
</ul>
</p>
<p>&nbsp;</p>
<div class = "col-md-12">
<div class="col-md-3">
Signature of Student
</div>
<div class="col-md-3 col-md-offset-6">Controller of Examintaion</div>
</div>
</div>
</div>
</div>
</td></tr>
</tbody>
</table>
<center>
<!-- </div> -->
</div>
</table>
</div>
<div id="student_header">
<table width="100%" border="1" id = "" style="background-color:#fff;">
<tbody>
<tr>
<td><center>ADMIT CARD : EXAMINATION {{courseNamePDF}} - {{batchNamePDF}}</center></td><td rowspan="2" width="20%"><img src="images/{{studentObj.ProfilePicPath}}" id="sprofile" alt="NAN" height="100" width="100"/></td>
</tr>
<tr>
<td>Enrollment No&nbsp;:&nbsp;&nbsp;&nbsp;{{studentObj.EnrollmentID}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Student Name&nbsp;&nbsp;:&nbsp;&nbsp;{{studentObj.Firstname}}&nbsp;{{studentObj.Lastname}}</br>Center Name&nbsp;&nbsp;&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{centerNamePDF}}</td>
</tr>
<!-- <tr> -->
<!-- <td >{{universityAddressPDF}}</td> -->
<!-- </tr> -->
</tbody>
</table>
</div>
<!-- FOR SEMESTER TYPE STUDENTS-->
<table width="100%" border="1" ng-repeat ="subjects in studentObj.FeeDetails" and ng-if="semDataTypePDF == 'SEM'" id = "{{studentObj.StudentID}}{{$index}}">
<thead>
<!-- <tr> -->
<!-- <th colspan="6">SEMESTER</th> -->
<!-- </tr> -->
<tr>
<th width="5%">sem/year</th><th width="10%">Subject Code</th><th>Subject Name</th><th width="5%">Date</th><th width="15%">Time</th><th width="5%">Invigi.sign</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sub in subjects">
<td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}} - {{sub.ToTime}}</td><td >&nbsp;</td>
</tr>
</tbody>
</table>
<!-- END OF SEMESTER TYPE STUDENTS-->
<!-- FOR YEAR TYPE STUDENTS-->
<table width="100%" border="1" ng-repeat = "sem in studentObj.FeeDetails[0]" and ng-if="semDataTypePDF == 'YEAR'" id = "{{studentObj.StudentID}}year1{{$index}}">
<thead>
<tr>
<th width="5%">sem/year</th><th width="10%">Subject Code</th><th>Subject Name</th><th width="5%">Date</th><th width="15%">Time</th><th width="5%">Invigi.sign</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sub in sem">
<td ng-if="$parent.$index == 0">0{{sub.SemesterID}}</td><td ng-if="$parent.$index == 1">0{{sub.SemesterID-1}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}} - {{sub.ToTime}}</td><td >&nbsp;</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" ng-repeat = "sem in studentObj.FeeDetails[1]" and ng-if="semDataTypePDF == 'YEAR'" id = "{{studentObj.StudentID}}year2{{$index}}">
<thead>
<tr>
<th width="5%">sem/year</th><th width="10%">Subject Code</th><th>Subject Name</th><th width="5%">Date</th><th width="15%">Time</th><th width="5%">Invigi.sign</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sub in sem">
<td ng-if="$parent.$index == 0">0{{sub.SemesterID-1}}</td><td ng-if="$parent.$index == 1">0{{sub.SemesterID-2}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}} - {{sub.ToTime}}</td><td >&nbsp;</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" ng-repeat = "sem in studentObj.FeeDetails[2]" and ng-if="semDataTypePDF == 'YEAR'" id = "{{studentObj.StudentID}}year3{{$index}}">
<thead>
<tr>
<th width="5%">sem/year</th><th width="10%">Subject Code</th><th>Subject Name</th><th width="5%">Date</th><th width="15%">Time</th><th width="5%">Invigi.sign</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sub in sem">
<td ng-if="$parent.$index == 0">0{{sub.SemesterID-2}}</td><td ng-if="$parent.$index == 1">0{{sub.SemesterID-3}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}} - {{sub.ToTime}}</td><td >&nbsp;</td>
</tr>
</tbody>
</table>
<table width="100%" border="1" ng-repeat = "sem in studentObj.FeeDetails[3]" and ng-if="semDataTypePDF == 'YEAR'" id = "{{studentObj.StudentID}}year4{{$index}}">
<thead>
<tr>
<th width="5%">sem/year</th><th width="10%">Subject Code</th><th>Subject Name</th><th width="5%">Date</th><th width="15%">Time</th><th width="5%">Invigi.sign</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sub in sem">
<td ng-if="$parent.$index == 0">0{{sub.SemesterID-3}}</td><td ng-if="$parent.$index == 1">0{{sub.SemesterID-4}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}} - {{sub.ToTime}}</td><td >&nbsp;</td>
</tr>
</tbody>
</table>
<!-- END OF YEAR TYPE STUDENTS-->
<!-- FOR OF REG AND LAT TYPE STUDENTS-->
<table width="100%" border="1" ng-repeat = "subjects in studentObj.FeeDetails[0]" ng-if="semDataTypePDF == 'REG' || semDataTypePDF == 'LAT' && subjects.length != 0" id = "{{studentObj.StudentID}}{{$index}}">
<thead>
<tr>
<th width="5%">sem/year</th><th width="10%">Subject Code</th><th>Subject Name</th><th width="5%">Date</th><th width="15%">Time</th><th width="5%">Invigi.sign</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="sub in subjects">
<td>0{{sub.SemesterID}}</td><td style="padding-left:3px;">{{sub.SubjectCode}}</td><td style="padding-left:3px;">{{sub.SubjectName}}</td><td >{{sub.ScheduleDate | date: "dd-MM-y" }}</td><td>{{sub.FromTime}} - {{sub.ToTime}}</td><td >&nbsp;</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- end: UI BOOTSTRAP MODALS -->
</div>

View File

@ -322,6 +322,24 @@
</div>
</div>
</a>
<ul class="sub-menu">
<li ui-sref-active="active">
<a ui-sref="app.hallTicket.semCourseMap" ng-click="checkSuperAdmin()">
<span class="title" translate="sidebar.nav.hallTicket.COURSESEMESTERMAPPING">COURSE SEMESTER MAPPING</span>
</a>
</li>
<li ui-sref-active="active">
<a ui-sref="app.hallTicket.batchSchedule" ng-click="checkSuperAdmin()">
<span class="title" translate="sidebar.nav.hallTicket.BATCHSCHEDULE">BATCHSCHEDULE</span>
</a>
</li>
<li ui-sref-active="active">
<a ui-sref="app.hallTicket.generateHallTicket" ng-click="checkSuperAdmin()">
<span class="title" translate="sidebar.nav.hallTicket.GENERATEHALLTICKET">GENERATE HALLTICKET</span>
</a>
</li>
</ul>
</li>
<li ng-class="{'active open':$state.includes('app.reports')}">
<a href="javascript:void(0)">

View File

@ -119,6 +119,7 @@
<!--Export Excel for reports-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/alasql/0.4.2/alasql.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.9.2/xlsx.core.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf-autotable/2.3.3/jspdf.plugin.autotable.js"></script>
</body>