Merge remote-tracking branch 'origin/master'
# Conflicts: # Apollo/assets/js/controllers/dashboardCtrl.js
This commit is contained in:
commit
8397cc45b0
@ -124,6 +124,7 @@ $route['updateAnnouncementDetails'] = 'Announcement_Controller/updateAnnouncemen
|
||||
$route['getDashboardCallTrack'] = 'Call_Tracking_Controller/getDashboardCallTrack';
|
||||
$route['getTotalStudent'] = 'Dashboard_Controller/getTotalStudent';
|
||||
$route['getTotalEmployee'] = 'Dashboard_Controller/getTotalEmployee';
|
||||
$route['getTotalUsers'] = 'Dashboard_Controller/getTotalUsers';
|
||||
|
||||
|
||||
|
||||
|
||||
@ -36,6 +36,24 @@ class Dashboard_Controller extends REST_Controller {
|
||||
$this->load->model('Dashboard_model', 'dashboard_model');
|
||||
}
|
||||
|
||||
public function getTotalUsers_post() {
|
||||
$data = $this->post('data');
|
||||
$totalUsers = $this->dashboard_model->get_total_users( $data );// Check if the employee exist
|
||||
if ($totalUsers) {
|
||||
$totalUsers['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($totalUsers, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No users were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
public function getTotalStudent_post() {
|
||||
$data = $this->post('data');
|
||||
$totalStudents = $this->dashboard_model->get_total_students( $data );// Check if the employee exist
|
||||
|
||||
@ -14,6 +14,27 @@ class Dashboard_model extends CI_Model
|
||||
/*
|
||||
* get Dashboard Details
|
||||
*/
|
||||
|
||||
// get total number of users
|
||||
public function get_total_users( $data ) {
|
||||
$sql1 = "SELECT * from ".STUDENTS."";
|
||||
$count1 = $this->db->query($sql1);
|
||||
$sql2 = "SELECT * from ".STAFF."";
|
||||
$count2 = $this->db->query($sql2);
|
||||
|
||||
if( $count2->num_rows() > 0) {
|
||||
$result['status'] = true;
|
||||
$result['total_student'] = $count1->num_rows();
|
||||
$result['total_staff'] = $count2->num_rows();
|
||||
$result['message'] = "Total Number of Users";
|
||||
} else {
|
||||
$result['status'] = true;
|
||||
$result['total_student'] = $count1->num_rows();
|
||||
$result['total_staff'] = $count2->num_rows();
|
||||
$result['message'] = "No student Users";
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
// get total number of students
|
||||
public function get_total_students($data) {
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* Simple table with sorting and filtering on AngularJS
|
||||
*/
|
||||
|
||||
app.controller('dashboardCtrl', ["$scope","$rootScope","toaster", "$filter", "ngTableParams", "API_POINTS", "$localStorage", "$http", "$state", function ($scope,$rootScope,toaster, $filter, ngTableParams, apiPoint, $localStorage, $http, $state) {
|
||||
app.controller('dashboardCtrl', ["$scope", "toaster", "$filter", "ngTableParams", "API_POINTS", "$localStorage", "$http", "$state", function ($scope, toaster, $filter, ngTableParams, apiPoint, $localStorage, $http, $state) {
|
||||
/*
|
||||
* used to get dash board call track details
|
||||
* this method called from view ng-init directive
|
||||
@ -12,7 +12,6 @@ app.controller('dashboardCtrl', ["$scope","$rootScope","toaster", "$filter", "ng
|
||||
* */
|
||||
|
||||
$scope.initCallTracking = function () {
|
||||
$rootScope.pendingFolloupDetails = [];
|
||||
var getCallTrack = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getDashboardCallTrack/',
|
||||
@ -24,39 +23,31 @@ app.controller('dashboardCtrl', ["$scope","$rootScope","toaster", "$filter", "ng
|
||||
}
|
||||
};
|
||||
$http(getCallTrack).then(function (response) {
|
||||
if (response.data.status==200) {
|
||||
if(response.data.todayStatus){
|
||||
if (response.data.status == 200) {
|
||||
if (response.data.todayStatus) {
|
||||
|
||||
$scope.todayFolloupDetails=response.data.todayFolloupDetails.trackingDetails;
|
||||
$scope.emptyDataToday=false;
|
||||
$scope.todayFolloupDetails = response.data.todayFolloupDetails.trackingDetails;
|
||||
$scope.emptyDataToday = false;
|
||||
}
|
||||
else{
|
||||
$scope.todayFolloupDetails="";
|
||||
$scope.emptyDataToday=true;
|
||||
else {
|
||||
$scope.todayFolloupDetails = "";
|
||||
$scope.emptyDataToday = true;
|
||||
}
|
||||
if(response.data.todayPendingStatus){
|
||||
$scope.currentDate=new Date().getFullYear() + '-' + ('0' + (new Date().getMonth() + 1)).slice(-2) + '-' + ('0' + new Date().getDate()).slice(-2);
|
||||
|
||||
$scope.fetchFolloupDetails=response.data.PendingFolloupDetails.trackingDetails;
|
||||
angular.forEach($scope.fetchFolloupDetails, function(value, key){
|
||||
if(($scope.currentDate) < (value.FollowupOn)){
|
||||
$rootScope.pendingFolloupDetails.push(value);
|
||||
}
|
||||
|
||||
});
|
||||
$scope.emptyDataPending=false;
|
||||
if (response.data.todayPendingStatus) {
|
||||
$scope.pendingFolloupDetails = response.data.PendingFolloupDetails.trackingDetails;
|
||||
$scope.emptyDataPending = false;
|
||||
}
|
||||
else{
|
||||
$scope.pendingFolloupDetails="";
|
||||
$scope.emptyDataPending=true;
|
||||
else {
|
||||
$scope.pendingFolloupDetails = "";
|
||||
$scope.emptyDataPending = true;
|
||||
}
|
||||
if(response.data.todayLeadStatus){
|
||||
$scope.leadDetails=response.data.todayLeadDetails.trackingDetails;
|
||||
$scope.emptyDataLead=false;
|
||||
if (response.data.todayLeadStatus) {
|
||||
$scope.leadDetails = response.data.todayLeadDetails.trackingDetails;
|
||||
$scope.emptyDataLead = false;
|
||||
}
|
||||
else{
|
||||
$scope.leadDetails="";
|
||||
$scope.emptyDataLead=true;
|
||||
else {
|
||||
$scope.leadDetails = "";
|
||||
$scope.emptyDataLead = true;
|
||||
}
|
||||
|
||||
|
||||
@ -64,8 +55,8 @@ app.controller('dashboardCtrl', ["$scope","$rootScope","toaster", "$filter", "ng
|
||||
|
||||
} else {
|
||||
|
||||
$scope.emptyDataToday=true;
|
||||
$scope.emptyDataPending=true;
|
||||
$scope.emptyDataToday = true;
|
||||
$scope.emptyDataPending = true;
|
||||
|
||||
}
|
||||
});
|
||||
@ -73,3 +64,113 @@ app.controller('dashboardCtrl', ["$scope","$rootScope","toaster", "$filter", "ng
|
||||
|
||||
}]);
|
||||
|
||||
app.controller('OnotherCtrl', ["$scope", "toaster", "$filter", "$http", "API_POINTS", "$state", '$cookies', 'ipCookie', function ($scope, toaster, $filter, $http, apiPoint, $state, $cookies, ipCookie) {
|
||||
|
||||
// get local cliend details
|
||||
var localDetail = JSON.parse(localStorage.getItem('localObj'));
|
||||
var localDetails = ipCookie('cookiechk');
|
||||
|
||||
$scope.init = function () {
|
||||
$scope.this_Student = 0;
|
||||
$scope.this_Staff = 0;
|
||||
$scope.this_TotalUser = 0;
|
||||
$scope.getTotalUsers();
|
||||
|
||||
}
|
||||
|
||||
// get Total Number of users in this application
|
||||
$scope.getTotalUsers = function () {
|
||||
var req = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getTotalUsers/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: localDetails
|
||||
}
|
||||
};
|
||||
$http(req).then(function (response) {
|
||||
if (response.data) {
|
||||
// $scope.editBranchId = id;
|
||||
$scope.this_Student = response.data.total_student;
|
||||
$scope.this_Staff = response.data.total_staff;
|
||||
$scope.this_TotalUser = $scope.this_Staff + $scope.this_Student;
|
||||
// alert($scope.this_TotalUser);
|
||||
$scope.data = [
|
||||
|
||||
{
|
||||
value: $scope.this_Student,
|
||||
color: '#46BFBD',
|
||||
highlight: '#5AD3D1',
|
||||
label: 'Student'
|
||||
},
|
||||
{
|
||||
value: $scope.this_Staff,
|
||||
color: '#FDB45C',
|
||||
highlight: '#FFC870',
|
||||
label: 'Staff'
|
||||
}
|
||||
];
|
||||
$scope.total = $scope.this_TotalUser;
|
||||
} else {
|
||||
// $scope.this_Student = response.total_student;
|
||||
// $scope.this_Staff = response.total_staff;
|
||||
$scope.data = [
|
||||
{
|
||||
value: $scope.this_Student,
|
||||
color: '#F7464A',
|
||||
highlight: '#5AD3D1',
|
||||
label: 'Student'
|
||||
},
|
||||
{
|
||||
value: $scope.this_Staff,
|
||||
color: '#FDB45C',
|
||||
highlight: '#FFC870',
|
||||
label: 'Staff'
|
||||
}
|
||||
];
|
||||
$scope.this_TotalUser = 0;
|
||||
$scope.total = $scope.this_TotalUser;
|
||||
}
|
||||
});
|
||||
}
|
||||
// Chart.js Data
|
||||
|
||||
// Chart.js Options
|
||||
$scope.options = {
|
||||
|
||||
// Sets the chart to be responsive
|
||||
responsive: false,
|
||||
|
||||
//Boolean - Whether we should show a stroke on each segment
|
||||
segmentShowStroke: true,
|
||||
|
||||
//String - The colour of each segment stroke
|
||||
segmentStrokeColor: '#fff',
|
||||
|
||||
//Number - The width of each segment stroke
|
||||
segmentStrokeWidth: 2,
|
||||
|
||||
//Number - The percentage of the chart that we cut out of the middle
|
||||
percentageInnerCutout: 50, // This is 0 for Pie charts
|
||||
|
||||
//Number - Amount of animation steps
|
||||
animationSteps: 100,
|
||||
|
||||
//String - Animation easing effect
|
||||
animationEasing: 'easeOutBounce',
|
||||
|
||||
//Boolean - Whether we animate the rotation of the Doughnut
|
||||
animateRotate: true,
|
||||
|
||||
//Boolean - Whether we animate scaling the Doughnut from the centre
|
||||
animateScale: false,
|
||||
|
||||
//String - A legend template
|
||||
legendTemplate: '<ul class="tc-chart-js-legend"><% for (var i=0; i<segments.length; i++){%><li><span style="background-color:<%=segments[i].fillColor%>"></span><%if(segments[i].label){%><%=segments[i].label%><%}%></li><%}%></ul>'
|
||||
|
||||
};
|
||||
|
||||
}]);
|
||||
|
||||
|
||||
@ -149,7 +149,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user