'use strict'; /*** controller***/ app.controller('report_certificateCtrl', ["$scope", "$filter","$rootScope","$modal", "API_POINTS", "$http", "SweetAlert", "$state", 'md5', 'ipCookie', '$window',"dateListDescService", function ($scope, $filter,$rootScope,$modal, apiPoint, $http, SweetAlert, $state, md5, ipCookie, $window, dateListDescService) { /* * auto call tracking */ $scope.userType=JSON.parse(sessionStorage.getItem('localObj')).localType; $scope.isTblShow = false; $scope.isLoader = false; $scope.isLoaderShow = false; $scope.isLoaderShow1 =false; $scope.isLoaderTxt = "Loading..."; $scope.isLoaderTxt1 ="Selected Date Range is wrong"; $scope.generateButtonTxt = "GENERATE"; $scope.generateButtonStatus = false; $scope.currentPage = 1; $scope.myModel = { "date": new Date(), "activity": "", "assignedTo": "", "status": "", "referedBy": '', "comments":'', "enquiryStatus":'', "important":false, "branch":"", }; //get current date $scope.hideDateSearch=true; $scope.modifyMinDate = moment(); //$scope.minDate = $filter('date')($scope.modifyMinDate, 'MM-dd-yyyy'); $scope.currentDate=$filter('date')(new Date(), 'dd-MM-yyyy'); // get 30 plus date for follwup details $scope.modifyDate = moment(); $scope.modifyDate.add(30, 'days'); $scope.futureDate = $filter('date')($scope.modifyDate, 'dd-MM-yyyy'); $scope.myModel.date=$scope.currentDate; // console.log($scope.currentDate); /** * End of the call tracking */ // DataTables configurable options $scope.univModel = { "branch": "", "university": "", "batch": "", "from_date": "", "to_date": "", }; $scope.filters = function () { var filterlist = { method: 'POST', url: apiPoint.url + 'report_filters/', headers: { 'Content-Type': 'application/json' }, data: { branch : JSON.parse(sessionStorage.getItem('localObj')).localBranchID } }; $http(filterlist).then(function (response) { if (response.data) { $scope.batch=[]; $scope.batchlist = response.data.batch; $scope.university = response.data.university; //Desc order Batchlist angular.forEach($scope.batchlist,function (values,key) { var parts = values.BatchDate.split("-"); $scope.batch.push({ "batchcode":values.batchcode, "batch":values.batch + '('+ values.batchcode + ')', "BatchDate":values.BatchDate, "givenDateObject":new Date(parts[2], parts[1] - 1, parts[0]) }) }); // call service for make a list in desc order based on date $scope.batch=dateListDescService.getOrderByList($scope.batch); //console.log($scope.branch); } else { } }); } /* watch university model for bind batch objects*/ $scope.$watchCollection('univModel.university', function (newValue,oldValue) { if(newValue==undefined || newValue==''){ $scope.filterBatchDetails=""; $scope.disableSubmit=true; } else{ if(angular.isString(newValue)){ $scope.filterBatchDetails=angular.fromJson(newValue); $scope.disableSubmit=false; } } }); // disable submit $scope.$watchCollection('univModel.from_date', function (newValue,oldValue) { if(newValue==undefined || newValue=='' || newValue==null){ $scope.disableSubmit=true; } else{ $scope.disableSubmit=false; } }); $scope.onSubmit = function () { $scope.isLoaderShow1 =true; if($scope.univModel.university !== null && $scope.univModel.university !== '' ){ $scope.filterUniv = angular.fromJson($scope.univModel.university); }else { $scope.filterUniv = ''; } //alert($scope.batch.name); $scope.cert_data = ''; $scope.message = ''; var response_data = { method: 'POST', url: apiPoint.url + 'report_certificate/', headers: { 'Content-Type': 'application/json' }, data: { branch: JSON.parse(sessionStorage.getItem('localObj')).localBranchID, university: $scope.filterUniv.universityID, batch: $scope.univModel.batch, from : $scope.univModel.from_date, to : $scope.univModel.to_date } }; if($scope.univModel.from_date > $scope.univModel.to_date){ $scope.isLoaderShow =true; }else{ $scope.isLoaderShow =false; } $http(response_data).then(function (response) { if (response.data.certList == true) { $scope.isLoaderShow1 =false; $scope.cert_data = response.data.cert_data; for(var i=0;i<$scope.cert_data.length;i++) $scope.cert_data[i].SL_NO = i+1; } else { $scope.isLoaderShow1 =false; $scope.message = response.data.message; } }); } var mystyle = { sheetid: 'CERTIFICATE STATUS REPORT', headers: true, caption: { title:'CERTIFICATE STATUS REPORT', width: '300px', style:'font-size:50px;' }, // style:'background:#00FF00', column: { style:'font-size:10px' }, }; $scope.exportData = function () { alasql('SELECT CAST(SL_NO AS NUMBER) as SLNO,initialPaid as CertificateFeePaidDate,Enrollment_id as EnrollmentID,Student_name as StudentName,Father_name as FatherName,Course_name as Course,University as University,CAST(balance AS NUMBER) as Balance,certname as CertificateName,status as CertificateStatus,adate as Date INTO XLS("Certificate_status.xls",?) FROM ?',[mystyle,$scope.cert_data]); }; $scope.$watch(function () { $scope.filteredItems = $scope.$eval(" cert_data | filter: search "); }); /** * Auto Call Tracking Sriram */ $rootScope.selectedStudentcertificateMN = []; $scope.selectedStudentsID = []; $scope.isCheckAll = function(e){ var val = (e.target.checked ? true : false); if(val) { // $scope.disable = false; var len = $scope.filteredItems.length; var i = 0; for(i=0;i