Fixes : ps

This commit is contained in:
Sanjeev 2020-12-23 10:07:14 +05:30
parent bc58489d76
commit a8c8e56fc4
13 changed files with 325 additions and 18 deletions

View File

@ -230,6 +230,10 @@ class Call_Tracking_Controller extends REST_Controller {
$updateDetails = $this->Calltracking_model->updateFollowupDetails($update_followup_details,$followup_details);// Check if the users data store contains users (in case the database result returns NULL)
// echo "com";
// print_r($followup_details);
// print_r($update_followup_details);
// exit();
if ($updateDetails)
{
$updateDetails['status'] = REST_Controller::HTTP_OK;

View File

@ -77,6 +77,9 @@ class Report extends REST_Controller {
$getStatus['markcardstatus'][$cnt+1]["ListCode"] = FEESUPDATE;
$getStatus['markcardstatus'][$cnt+1]["ListName"] = "BLANK";
$getStatus['markcardstatus'][$cnt+1]["StudentActivityCode"]= 'C001';
$getStatus['markcardstatus'][$cnt+2]["ListCode"] = "all";
$getStatus['markcardstatus'][$cnt+2]["ListName"] = "ALL";
$getStatus['markcardstatus'][$cnt+2]["StudentActivityCode"]= 'C001';
}
else{ $getStatus['markcardstatus'] = array();}
$getStatus['status'] = REST_Controller::HTTP_OK;

View File

@ -670,7 +670,7 @@ $msg='Dear '.$name.', Thank you for enquiring with Apollo Distance Education Col
$leadDet=$this->db->get();
// print_r($this->db->last_query());die();
// print_r($this->db->last_query());die();
if($this->db->affected_rows()==0){
$result_array['trackingStatus']=false;
@ -693,6 +693,7 @@ $msg='Dear '.$name.', Thank you for enquiring with Apollo Distance Education Col
$tracking_array["ActivityStatus"]=$row->ActivityStatus;
$tracking_array["AssignedTo"]=$row->AssignedTo;
$tracking_array["Firstname"]=$row->Firstname;
$tracking_array["StudentID"]=$row->Firstname;
$tracking_array["StatusCode"]=$row->StatusCode;
$tracking_array["statusName"]=$row->statusListName;
$tracking_array["UniversityName"]=$row->University;
@ -961,6 +962,14 @@ $msg='Dear '.$name.', Thank you for enquiring with Apollo Distance Education Col
public function updateFollowupDetails($updateDetails=null,$insertDetails=null)
{
// $updateDetails['StatusCode'] = implode(',', $updateDetails['StatusCode']);
// $updateDetails['AssignedTo'] = implode(',', $updateDetails['AssignedTo']);
// $insertDetails['AssignedStaff'] = implode(',', $insertDetails['AssignedStaff']);
// $insertDetails['StatusName'] = $this->getStatusName($insertDetails['StatusName']);
// // print_r($insertDetails);
// // print_r($updateDetails);
// die();
// exit();
$deactivateStatus['IsActive']=false;
$this->db->where('TrackingID',$updateDetails['TrackingID']);
$this->db->update(LEAD_TRACKING_FOLLOWUP, $deactivateStatus);
@ -1005,7 +1014,17 @@ $msg='Dear '.$name.', Thank you for enquiring with Apollo Distance Education Col
}
// public function getStatusName($statusArr){
// $arr = implode(',', $statusArr);
// echo $arr;
// $this->db->select('ListName');
// $this->db->where_in('ListCode',$arr);
// $statusDetails=$this->db->get(PICK_LIST_DETAILS);
// $status = $statusDetails->result_array();
// print_r($this->db->last_query());die();
// $arr2 = implode(',', $status);
// return $arr2;
// }
/*
* get tracking information when page is loading
* created by kms

View File

@ -192,6 +192,7 @@ left join BalFees bal on bal.student=sms.sid and bal.feestype=sms.cid and bal.se
if(appdate = '','-',ifnull(appdate,'-')) AS appdate,
if(ansdate = '','-',ifnull(ansdate,'-')) AS ansdate ,
scd.coursestatus AS Course_Status,
if(andate.Comments = '','-',ifnull(andate.Comments,'-')) AS AnswerbookSerialNo,
if(andate.courierdetails = '','-',ifnull(andate.courierdetails,'-')) AS Courier_Details,
if(sfs.batchname = '','-',IFNULL(sfs.batchname, '-')) AS Batch_Name
FROM (SELECT FeesID AS fid,T_Students_Fees_Status.BatchCode AS batch,T_BatchMaster.BatchName AS batchname,StudentID AS sid,RollNO AS rollno,CourseID AS cid,FeesType AS ftype,sum(CourseFees) AS cf,Sum(STFOrWR) AS stf,sum(Others) AS others , T_Students_Fees_Status.BranchCode AS branch
@ -241,7 +242,7 @@ left join BalFees bal on bal.student=sms.sid and bal.feestype=sms.cid and bal.se
ON scd.sid=sfs.sid AND scd.cid = sfs.cid
LEFT JOIN (SELECT ID,StudentID AS sid,Sem,CourseID,
LEFT JOIN (SELECT ID,StudentID AS sid,Sem,CourseID,Comments,
IF(ListName = 'SENT TO UNIVERSITY', AnsDate,'-') AS ansdate,CourierDetails AS courierdetails
FROM T_AnswerBookletStatus abs
LEFT JOIN T_PickListDetails `list` ON list.ListCode=abs.ListCode
@ -272,6 +273,7 @@ left join BalFees bal on bal.student=sms.sid and bal.feestype=sms.cid and bal.se
if ($st != ''){
if ($st == FEESUPDATE){
$sql.=" and (list.lcode IS NULL OR list.lcode = '')";}
else if($st=="all"){ $sql.=""; }
else{ $sql.="and list.lcode = '".$st."'";}
}
if ($from != ''){

View File

@ -398,7 +398,7 @@ app.controller('answerBookletStatusCtrl', ["$scope", "toaster", "$filter", "ngTa
this.ListCode = $scope.myStatusModel.staus;
this.SDate = $scope.myStatusModel.dateOn;
this.Coursedetail = id;
this.Comments = $scope.myStatusModel.comment;
this.Comments = $scope.myStatusModel.comment.replace('/\n\r?/g', '<br />');
this.CourierDetails = $scope.myStatusModel.courierDetails.replace('/\n\r?/g', '<br />');
// alert($scope.myStatusModel.courierDetails);
this.Sem = $scope.myStatusModel.sem === '' ? courseID.Sem_Year : $scope.myStatusModel.sem;

View File

@ -717,6 +717,130 @@ $scope.GetstaffwiseDetails($scope.tod);
}
$scope.$watch(function () {
$scope.filteredItems = $scope.$eval(" data |filter:search2| filter:search3| filter:search4| filter:search5");
});
/**
* Auto Call Tracking Sriram
*/
$scope.selectedLeadID = [];
$scope.isCheckAll = function(e){
var val = (e.target.checked ? true : false);
// alert(val);
// return true;
if(val)
{
// $scope.disable = false;
var len2 = $scope.data.length;
var len = $scope.filteredItems.length;
console.log("len2",len2);
var i = 0;
for(i=0;i<len;i++)
{
if($scope.selectedLeadID.indexOf($scope.data[i]) === -1)
{
$scope.selectedLeadID.push($scope.data[i]);
}
}
}
else
{
// $scope.disable = true;
$scope.selectedLeadID = [];
}
if($scope.selectedLeadID !=''){
$scope.disable = false;
}else{
$scope.disable = true;
}
console.log("$scope.selectedLeadID",$scope.selectedLeadID);
}
$scope.isClick = function(e){
var ide = e.target;
var val = (ide.checked ? true : false);
var sid = e.target.id;
angular.forEach($scope.data,function(value,key){
console.log(value);
if(sid == value.LeadID)
{
console.log("sid",value);
sid = value;
}
});
var pos = $scope.selectedLeadID.indexOf(sid);
//alert(val);
if(val)
{
if( pos == -1)
{
console.log("PUSH");
$scope.selectedLeadID.push(sid);
}
}
else
{
//console.log("POP");
$scope.selectedLeadID.splice(pos,1);
}
//
if(val){
$scope.disable = false;
}else{
$scope.disable = true;
}
console.log($scope.selectedLeadID);
}
$scope.calltracking = function(){
console.log('Function',selectedLeadID);
if($scope.selectedLeadID ==''){
swal('Select Check box','','warning');
return false;
}else{
swal('CallTracking','','info');
$scope.controller = 'ng-controller="callTrackingCtrl"';
// var lead = {
// method: 'POST',
// url: apiPoint.url + 'updateCallTrackingDetails/',
// headers: {
// 'Content-Type': 'application/json'
// },
// data: {
// requestedBy: JSON.parse(sessionStorage.getItem('localObj')).localUserID,
// lead:$scope.selectedLeadID,
// branchID:JSON.parse(sessionStorage.getItem('localObj')).localBranchID,
// userType:JSON.parse(sessionStorage.getItem('localObj')).localType,
// }
// };
// $http(lead).then(function (response) {
// if (response.data.status==200) {
// $rootScope.modalInstance = $modal.open({
// templateUrl: 'assets/views/autoCalltracking2.html',
// controller: 'callTrackingCtrl',
// // size: size,
// resolve: {
// pdfitems: function () {
// return $scope.activity;
// }
// }
// });
// $rootScope.modalInstance.result.then(function (selectedItem) {
// $scope.selected = selectedItem;
// }, function () { $log.info('Modal dismissed at: ' + new Date());
// });
// }
// });
}
}
}]);
/*
@ -837,7 +961,6 @@ app.controller('callTrackingLeadCtrl', ["$scope","$rootScope","toaster", "$filte
}
/*
*get tracking list
* created by kms
@ -1709,6 +1832,7 @@ app.controller('callTrackingCtrl2', ["$scope","$rootScope","toaster", "$filter",
* created by kms
* */
$rootScope.updateFollowup = function (form,followupDetails,myModel1, loading) {
console.clear();
// alert('com');
// return false;
var firstError = null;

View File

@ -207,7 +207,7 @@ $scope.generateButtonStatus = false;
$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,acmts as Comments, adate as Date,Batch_Name as Batch,Courier_Details as CertificationCourierDetails INTO XLS("Certificate_status.xls",?) FROM ?',[mystyle,$scope.cert_data]);
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,acmts as Comments, adate as Date,Batch_Name as Batch,Courier_Details as CertificateCourierDetails INTO XLS("Certificate_status.xls",?) FROM ?',[mystyle,$scope.cert_data]);
};
$scope.$watch(function () {
$scope.filteredItems = $scope.$eval(" cert_data | filter: search ");

View File

@ -194,7 +194,7 @@ $scope.generateButtonStatus = false;
$scope.exportData = function () {
alasql('SELECT CAST(SL_NO AS NUMBER) as SLNO,Initial_paid_date as InitialPaymentPaidDate,Enrollment_id as EnrollmentID,Roll_NO as RollNO,Student_name as StudentName,Father_name as FatherName,Course_name as Course,Sem_year as SemYear,University as University,CAST(Balance_Fee AS NUMBER) as BalanceFee,appdate as ApplicationSenttoUnivDate,ansdate as AnswerBookletUnivDate,Status as MarkCardStatus,Date as Date,Batch_Name as Batch,Courier_Details as AnswerBooksCourierDetails INTO XLS("Markcard_status.xls",?) FROM ?',[mystyle,$scope.markcard_data]);
alasql('SELECT CAST(SL_NO AS NUMBER) as SLNO,Initial_paid_date as InitialPaymentPaidDate,Enrollment_id as EnrollmentID,Roll_NO as RollNO,Student_name as StudentName,Father_name as FatherName,Course_name as Course,Sem_year as SemYear,University as University,CAST(Balance_Fee AS NUMBER) as BalanceFee,appdate as ApplicationSenttoUnivDate,ansdate as AnswerBookletUnivDate,Status as MarkCardStatus,Date as Date,Batch_Name as Batch,AnswerbookSerialNo,Courier_Details as AnswerBooksCourierDetails INTO XLS("Markcard_status.xls",?) FROM ?',[mystyle,$scope.markcard_data]);
};
$scope.$watch(function () {
$scope.filteredItems = $scope.$eval(" markcard_data | filter: search ");
@ -229,9 +229,12 @@ $scope.generateButtonStatus = false;
}else{
$scope.disable = true;
}
console.log($scope.selectedStudentsID);
console.log("filterItem",$scope.filteredItems);
console.log('WholeData',$scope.markcard_data);
console.log('$scope.selectedStudentsID',$scope.selectedStudentsID);
}
$scope.isClick = function(e){
console.log($scope.markcard_data);
var ide = e.target;
var val = (ide.checked ? true : false);
var sid = e.target.id;
@ -271,7 +274,9 @@ $scope.generateButtonStatus = false;
console.log($scope.selectedStudentsID);
}
$scope.calltracking = function(){
// console.log($scope.selectedStudentsID);
// swal('testing','','warning');
// return true;
//$rootScope.student = $scope.selectedStudentsID;
if($scope.selectedStudentsID ==''){
swal('Select Check box','','warning');

View File

@ -147,7 +147,7 @@ $scope.GetstaffwiseCounts = function (date)
$http(getcountDetails).then(function (response) {
// console.log(response.data.details);
// console.log('response.data.details',response.data.details);
if (response.data.status == 200 && response.data.details !='No records found!' ) {

View File

@ -0,0 +1,146 @@
<div class="container-fluid container-fullw bg-white" controller>
<form name="Form" id="form" novalidate ng-submit="trackForm.submit(Form, myModel, 'zoom-in',studentDetails)" method="post">
<div class="row">
<div class="col-md-12">
<fieldset>
<legend>
Update Call Tracking Details
</legend>
<div class="row">
<div data-ng-controller="DatepickerDemoCtrl">
<div class="col-md-3 form-group"
ng-class="{'has-error':Form.date.$dirty && Form.date.$invalid, 'has-success':Form.date.$valid}">
<label>
Followup Date <span
class="symbol required"></span>
</label>
<input type="text"
class="form-control "
ng-click="startOpen = !startOpen"
datepicker-popup="dd-MM-yyyy"
ng-model="myModel.date"
is-open="startOpen"
ng-init="startOpen = false"
name="date"
datepicker-options="dateOptions"
placeholder="Select Date"
min-date="minDate"
max-date="futureDate"
close-text="Close" required="required" ng-readonly="true"/>
<span class="error text-small block"
ng-if="Form.date.$dirty && Form.date.$error.required">Followup date is required.</span>
</div>
</div>
<div class="col-md-3" ng-if="loading==true">
<spinner name="html5spinner">
<div class="overlay"></div>
<div class="spinner">
<div class="double-bounce1"></div>
<div class="double-bounce2"></div>
</div>
<div class="please-wait">Please Wait...</div>
</spinner>
</div>
<div class="col-md-3 form-group"
ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid, 'has-success':Form.status.$valid}">
<label >
Status <span
class="symbol required"></span>
</label>
<select class="form-control" name="status" id="Box3" tabindex="7"
ng-model="myModel.status"
required >
<option value="">Select Status</option>
<option ng-repeat="checkStatus in myModel.activity.activityStatus" value="{{checkStatus.ListCode}}">{{checkStatus.ListName}}</option>
</select>
<span class="error text-small block"
ng-if="Form.status.$dirty && Form.status.$error.required && myModel.status.length==0">Status is required</span>
<!--<span class="success text-small block"-->
<!--ng-if="Form.assigned.$valid && myModel.assigned.length!=0">Thank You</span>-->
</div>
<div class="col-md-3" ng-if="loading==true && userType !='R004'">
<spinner name="html5spinner">
<div class="overlay"></div>
<div class="spinner">
<div class="double-bounce1"></div>
<div class="double-bounce2"></div>
</div>
<div class="please-wait">Please Wait...</div>
</spinner>
</div>
<!--&& userType !='R004'-->
<div class="col-md-3 form-group"
ng-class="{'has-error':Form.assigned.$dirty && Form.assigned.$invalid, 'has-success':Form.assigned.$valid}">
<label >
Assigned To <span
class="symbol required"></span>
</label>
<select class="form-control" name="assigned" id="Box2" tabindex="8"
ng-model="myModel.assignedTo"
ng-options="emp.loginId as emp.staffName for emp in staffDetails"
required>
<option value=""> Select Assigned To</option>
</select>
<span class="error text-small block"
ng-if="Form.assigned.$dirty && Form.assigned.$error.required && myModel.assignedTo.length==0">Assigned to is required</span>
<!--<span class="success text-small block"-->
<!--ng-if="Form.assigned.$valid && myModel.assigned.length!=0">Thank You</span>-->
</div>
<div>
<label >Comments</label><span class="symbol required"></span>
<textarea tabindex="12" class="form-control text-dark" placeholder="Enter a comments" rows="2" ng-model="myModel1.comments"></textarea>
<span class="error text-small block"
ng-if="Form.assigned.$dirty && Form.assigned.$error.required && myModel.assignedTo.length==0">Assigned to is required</span>
</div>
<div class="col-md-3" ng-if="loading==true && userType =='R004'">
<spinner name="html5spinner">
<div class="overlay"></div>
<div class="spinner">
<div class="double-bounce1"></div>
<div class="double-bounce2"></div>
</div>
<div class="please-wait">Please Wait...</div>
</spinner>
</div>
</div>
<div class="col-md-12">
<div class="pull-right">
<button tabindex="13" type="submit" ladda="ldloading1.zoom_in" class="btn btn-wide btn-success" data-style="zoom-in">
Submit
</button>
<button type="reset" class="btn btn-warning btn-wide" tabindex="14"
ng-click="trackForm.reset(Form);Form.$setPristine()">
Reset
</button>
</div>
</div>
</fieldset>
</div>
</div>
</form>
</div>

View File

@ -162,11 +162,16 @@
<div class="table-responsive" ng-if="loader == false">
<fieldset>
<div class="col-md-1 col-md-offset-10">
<!-- <button class="btn btn-success btn-o" ng-click="calltracking()">Call Tracking</button> -->
<!-- ng-click="calltracking()" -->
</div>
<table class="table table-hover" ng-controller="studentModalDemoCtrl">
<thead>
<tr>
<th><input type="checkbox" ng-model="myModel.all" id="all" name="all" ng-click="isCheckAll($event);"></th>
<th></th>
<th ng-click="sort('TrackingID')"> ID
<span class="glyphicon sort-icon" ng-show="sortKey=='TrackingID'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
@ -195,6 +200,7 @@
</thead>
<tbody dir-paginate="p in data|unique:'TrackingID' |orderBy:sortKey:reverse|filter:search2:strict| filter:search3:strict| filter:search4:strict| filter:search5:strict|itemsPerPage:10">
<tr>
<td><input type="checkbox" ng-checked="myModel.all" id="{{p.Student_id}}" name="{{p.Student_id}}" class="form-control" ng-click="isClick($event);" /></td>
<td ng-if="p.Flag==false">
<a class="glyphicon ng-scope fa margin-right-5 fa-flag text-grey text-extra-large" tooltip="Potential" ng-click="markAsImportant(p.TrackingID,true);"></a>
</td>

View File

@ -33,7 +33,7 @@
<select ui-select2 class="form-control" tabindex="1" class="cs-select cs-skin-elastic" name="university" ng-model="univModel.university" ng-required="true">
<option value="" selected>Select University</option>
<!--details.universityName for details in university-->
<option ng-repeat="details in university" value="{{details}}">{{details.universityName}}</option>
<option ng-repeat="details in university | orderBy:'toString()'" value="{{details}}">{{details.universityName}}</option>
</select>
<span style="color:red;" ng-if="show" ng-show="Form.university.$dirty && Form.university.$error.required">Please select University.</span>
@ -129,6 +129,7 @@
<th>Father Name</th>
<th>Course</th>
<th>Batch</th>
<th style=" white-space: pre-wrap;text-align:left;width: 100px;"!important>Answer Book Serial No</th>
<th style=" white-space: pre-wrap;text-align:left;width: 100px;"!important>Answer Books Courier Details</th>
<th>Sem/Year</th>
<th>University</th>
@ -151,6 +152,7 @@
<td>{{p.Father_name}}</td>
<td>{{p.Course_name}}</td>
<td>{{p.Batch_Name}}</td>
<td class="with-newlines">{{p.AnswerbookSerialNo}}</td>
<td class="with-newlines">{{p.Courier_Details}}</td>
<td>{{p.Sem_year}}({{p.Sem}})</td>
<td>{{p.University}}</td>

View File

@ -412,13 +412,9 @@
</div>
<div class="row">
<div class="col-md-6 form-group" ng-class="{'has-error':Form.description.$dirty && Form.description.$invalid}">
<label>
Comments
</label>
<textarea type="text" placeholder="Enter Comments" tabindex="7" class="form-control" name="description" ng-model="myStatusModel.comment"
/>
<span class="error text-small block" ng-if="Form.description.$dirty && Form.description.$error.pattern">Invalid Comments</span>
<label> Answer Booklet Serial Number </label>
<textarea type="text" placeholder="Enter Serial Number" tabindex="7" class="form-control" name="description" ng-model="myStatusModel.comment"/>
<span class="error text-small block" ng-if="Form.description.$dirty && Form.description.$error.pattern">Enter a Serial Number</span>
</div>
<div class="col-md-6 form-group" ng-class="{'has-error':Form.courier_details.$dirty && Form.courier_details.$invalid}">
<label>Courier Details</label>