HALLTICKET CHANGES
This commit is contained in:
parent
5d5f1f84ca
commit
8a250d233d
@ -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';
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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 : {{courseNamePDF}} EXAMINATION {{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}} {{studentObj.Lastname}}<center></td></tr>
|
||||
|
||||
<tr><td colspan="2"><center><b>Centre:</b> {{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 > </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> </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> </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> </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> </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> </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> </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> </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> </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> </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> </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> </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> </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> </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 : {{studentObj.EnrollmentID}} Student Name : {{studentObj.Firstname}} {{studentObj.Lastname}}</br>Center Name : {{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 > </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 > </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 > </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 > </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 > </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 > </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end: UI BOOTSTRAP MODALS -->
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@ -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)">
|
||||
|
||||
@ -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>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user