File: /home/cafsindia/refimac_cafsjobs_com/service_tracking.php
<?php
// Turn off all error reporting
error_reporting(0);
include('dbconnect.php');
//session_start();
$user=$_SESSION['clid'];
$perm=$_SESSION['cper'];
$mid=$_REQUEST['mid'];
$smid=$_REQUEST['smid'];
$pid=$_REQUEST['pid'];
// customer count
//AMC Total call count
$sqlamc="select count(*) as total from serviceapp_amclog where created_by='admin'";
$quamc=mysql_query($sqlamc);
$quamc_f=mysql_fetch_assoc($quamc);
$amc_count=$quamc_f['total'];
//echo $amc_count;die;
//Amc accepted
$sqlacc="select count(*) as total from serviceapp_amclog where amc_status='accepted'";
$amcacc=mysql_query($sqlacc);
$quacc_f=mysql_fetch_assoc($amcacc);
$accepted_count=$quacc_f['total'];
//Amc Rejected
$sqlrej="select count(*) as total from serviceapp_amclog where amc_status='rejected'";
$amcrej=mysql_query($sqlrej);
$qurej_f=mysql_fetch_assoc($amcrej);
$rejected_count=$qurej_f['total'];
//Amc Hold
$sqlhol="select count(*) as total from serviceapp_amclog where amc_status='hold'";
$amchol=mysql_query($sqlhol);
$quhol_f=mysql_fetch_assoc($amchol);
$hold_count=$quhol_f['total'];
//Amc On Progress
$sqlonp="select count(*) as total from serviceapp_amclog where amc_status='onprogress'";
$amconp=mysql_query($sqlonp);
$quonp_f=mysql_fetch_assoc($amconp);
$onprogress_count=$quonp_f['total'];
//service
$sqlservice="select count(*) as total from service where year='".date('Y')."' and month='".date('m')."'";
//echo $sqlservice;
$quservicet=mysql_query($sqlservice);
$quservicet_f=mysql_fetch_assoc($quservicet);
$service_count=$quservicet_f['total'];
//call register count
$sqlcallcount="select count(*) as total,status from serviceapp_callreg where complaint_date like '%".date('Y-m')."%' group by status";
//echo $sqlcallcount;
$total=0;
$callcount_count_closed=0;
$callcount_count_pending=0;
$callcount_count_canceled=0;
$qucallcount=mysql_query($sqlcallcount);
while($qucallcount_f=mysql_fetch_assoc($qucallcount))
{
$total+=$qucallcount_f['total'];
if($qucallcount_f['status']==2)
$callcount_count_closed=$qucallcount_f['total'];
if($qucallcount_f['status']==3)
$callcount_count_pending=$qucallcount_f['total'];
if($qucallcount_f['status']==4)
$callcount_count_canceled=$qucallcount_f['total'];
}
?>
<div id="contentwrapper">
<div class="main_content">
<div class="page-head">
<div class="container">
<!-- BEGIN PAGE TITLE -->
<div class="page-title">
<h1>Services</h1>
</div>
</div>
</div>
<div class="page-content">
<div class="container">
<div class="row-fluid">
<div class="span12">
<?php
if($nav=="1"||$nav=="3")
echo "<div class='alert alert-success'>
<span>Given information successfully updated !</span>
</div>";
elseif($nav=="2"||$nav=="4"||$nav=="6")
echo "<div class='alert alert-warning'>
<span>sorry, given information not updated, please try again !</span>
</div>";
elseif($nav=="5")
echo "<div class='alert alert-danger'>
<span>Selected Record successfully deleted !</span>
</div>";
?>
</div>
</div>
<div class="page-content-inner">
<div class="page-content-inner">
<div class="row widget-row">
<div >
<div class="col-md-4">
<label>From:</label><input name="amccallfrmdate" type="text" class="form-control" id="amccallfrmdate" value="<?php echo date('d-m-Y'); ?>" data-date-format="dd-mm-yyyy" onclick="$('#amccallfrmdate').datepicker('show');" />
</div>
<div class="col-md-4">
<label>To:</label><input name="amccalltodate" type="text" class="form-control" id="amccalltodate" value="<?php echo date('d-m-Y'); ?>" data-date-format="dd-mm-yyyy" onclick="$('#amccalltodate').datepicker('show');" />
</div>
<div class="col-md-4" style="padding-top: 22px;">
<label> </label>
<button type="submit" onclick="amctotcall()" class="btn green">Submit</button>
</div>
</div>
<div class="col-md-6">
<!-- BEGIN WIDGET THUMB -->
<div class="widget-thumb widget-bg-color-white text-uppercase margin-bottom-20 ">
<h4 class="widget-thumb-heading">AMC Total </h4>
<div class="widget-thumb-wrap">
<i class="widget-thumb-icon bg-purple icon-screen-desktop"></i>
<div class="widget-thumb-body">
<span class="widget-thumb-subtitle"></span>
<span class="widget-thumb-body-stat" id="amccalls" data-counter="counterup" data-value="<?php echo $amc_count; ?>">0</span>
</div>
</div>
</div>
</div>
<!-- END WIDGET THUMB -->
<!-- BEGIN WIDGET THUMB -->
<div class="col-md-6">
<div class="widget-thumb widget-bg-color-white text-uppercase margin-bottom-20 ">
<h4 class="widget-thumb-heading">AMC Accepted </h4>
<div class="widget-thumb-wrap">
<i class="widget-thumb-icon bg-purple icon-screen-desktop"></i>
<div class="widget-thumb-body">
<span class="widget-thumb-subtitle"></span>
<span class="widget-thumb-body-stat" id="acceptamc" data-counter="counterup" data-value="<?php echo $accepted_count; ?>">0</span>
</div>
</div>
</div>
<!-- END WIDGET THUMB -->
</div>
</div>
<div class="row widget-row">
<div class="col-md-4">
<!-- BEGIN WIDGET THUMB -->
<div class="widget-thumb widget-bg-color-white text-uppercase margin-bottom-20 ">
<h4 class="widget-thumb-heading">AMC Rejected </h4>
<div class="widget-thumb-wrap">
<i class="widget-thumb-icon bg-purple icon-screen-desktop"></i>
<div class="widget-thumb-body">
<span class="widget-thumb-subtitle"></span>
<span class="widget-thumb-body-stat" id="rejectamc" data-counter="counterup" data-value="<?php echo $rejected_count; ?>">0</span>
</div>
</div>
</div>
</div>
<!-- END WIDGET THUMB -->
<!-- BEGIN WIDGET THUMB -->
<div class="col-md-4">
<div class="widget-thumb widget-bg-color-white text-uppercase margin-bottom-20 ">
<h4 class="widget-thumb-heading">AMC Hold </h4>
<div class="widget-thumb-wrap">
<i class="widget-thumb-icon bg-purple icon-screen-desktop"></i>
<div class="widget-thumb-body">
<span class="widget-thumb-subtitle"></span>
<span class="widget-thumb-body-stat" id="holdamc" data-counter="counterup" data-value="<?php echo $hold_count; ?>">0</span>
</div>
</div>
</div>
<!-- END WIDGET THUMB -->
</div>
<div class="col-md-4">
<div class="widget-thumb widget-bg-color-white text-uppercase margin-bottom-20 ">
<h4 class="widget-thumb-heading">AMC On Progress </h4>
<div class="widget-thumb-wrap">
<i class="widget-thumb-icon bg-purple icon-screen-desktop"></i>
<div class="widget-thumb-body">
<span class="widget-thumb-subtitle"></span>
<span class="widget-thumb-body-stat" id="onprogressamc" data-counter="counterup" data-value="<?php echo $onprogress_count; ?>">0</span>
</div>
</div>
</div>
<!-- END WIDGET THUMB -->
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="col-md-3">
<label>Select Year:</label><input name="monthcallclosurfrmdate" type="text" class="form-control" id="monthcallclosurfrmdate" value="<?php echo date('Y'); ?>" data-date-format="yyyy" onclick="$('#monthcallclosurfrmdate').datepicker('show');" />
</div>
<div class="col-md-3" style="padding-top: 22px;">
<label> </label>
<button type="submit" class="btn green" onclick="monthcallclosure()">Submit</button>
</div>
<div id="monthcallchart" style="padding-top: 30px;"></div>
<div id="containerupdate"></div>
<button id="plain">Plain</button>
<button id="inverted">Inverted</button>
<button id="polar">Polar</button>
</div>
</div>
</br>
</div>
</div>
</div>
</div>
</div>
<script>
$(document).ready(function()
{
if ( $.fn.dataTable.isDataTable( '#sample' ) ) {
table = $('#sample').DataTable();
}
else {
table = $('#sample').DataTable( {
dom: 'Bfrtip',
buttons: [
'copy', 'csv', 'excel', 'pdf', 'print','pageLength'
], lengthMenu: [
[ 10, 25, 50, -1 ],
[ '10 rows', '25 rows', '50 rows', 'Show all' ]
]
} );
}
$('.cancel').click(function()
{
location.reload();
});
$('.btnsearch').click(function()
{
location.reload();
});
amctotcalldata();
//callclosedata();
//callpending();
//callcanceldata();
monthcallclosure();
});
$("form[name='serchform']").validate({
// Specify validation rules
rules: {
// The key name on the left side is the name attribute
// of an input field. Validation rules are defined
// on the right side
Search: "required",
searchtext: "required"
},
// Specify validation error messages
messages: {
Search: "Please select search by",
searchtext: "Please enter employee mobile"
},
// Make sure the form is submitted to the destination defined
// in the "action" attribute of the form when valid
submitHandler: function(form) {
form.submit();
}
});
//container
var chart = Highcharts.chart('containerupdate', {
title: {
text: 'Month wise call closure Report'
},
subtitle: {
text: 'Mr. Arun (Year 2016)'
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
series: [{
type: 'column',
colorByPoint: true,
data: [290, 71, 106, 129, 144, 176, 135, 148, 216, 194, 95, 54],
showInLegend: false
}]
});
$('#plain').click(function () {
chart.update({
chart: {
inverted: false,
polar: false
},
subtitle: {
text: 'Plain'
}
});
});
$('#inverted').click(function () {
chart.update({
chart: {
inverted: true,
polar: false
},
subtitle: {
text: 'Inverted'
}
});
});
$('#polar').click(function () {
chart.update({
chart: {
inverted: false,
polar: true
},
subtitle: {
text: 'Polar'
}
});
});
//call closur report dashboard month wise
function amctotcall()
{
amctotcalldata();
}
function amctotcalldata()
{
var amccallfrmdate=$('#amccallfrmdate').val();
var amccalltodate=$('#amccalltodate').val();
$.getJSON("ajax/loaddata.php?type=2&pageid=1_1_4&amccallfrmdate="+amccallfrmdate+"&amccalltodate="+amccalltodate, function(json){
//alert(json);
//console.log(json)
//var obj =jQuery.parseJSON(json)
//var str=json.split("-");
var obj=json[0];
if(obj==null)
{
$('#acceptamc').html(0);
$('#rejectamc').html(0);
$('#holdamc').html(0);
$('#onprogressamc').html(0);
$('#amccalls').html(0);
}
var sum = 0;
var str="";
for(var i=0; i<=4;i++)
{
var value=obj.data[i];
var str=value.toString().split("-");
//alert(str[1]);
//sum += parseInt(str[1]);
var amc=str[1];
var status=str[0];
sum =parseInt(sum)+parseInt(amc);
//console.log(status);
//alert(sum);
if(status=="accepted")
{
$('#acceptamc').html(amc);
}
// console.log(obj[0]);
else if(status=="rejected")
{
//alert(str[1]);
$('#rejectamc').html(amc);
}
else if(status=="hold")
{
//alert(str[1]);
$('#holdamc').html(amc);
}
else if(status=="onprogress")
{
//alert(str[1]);
$('#onprogressamc').html(amc);
}
}
$('#amccalls').html(sum);
});
}
// call closur report dashboard technecian wise
function callclosure()
{
callclosedata();
}
function callclosedata()
{
var callclosurfrmdate=$('#callclosurfrmdate').val();
var callclosurtodate=$('#callclosurtodate').val();
var options = {
chart: {
renderTo: '3dcallchart',
type: 'pie',
options3d: {
enabled: true,
alpha: 45,
beta: 0
}
},
title: {
text: 'Technecian Call Closure from date:'+callclosurfrmdate+' - Todate:'+callclosurtodate
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>({point.y} count)'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
depth: 35,
dataLabels: {
enabled: true,
format: '{point.name}'
}
}
},
series: []
};
$.getJSON("ajax/loaddata.php?type=1&pageid=1_1_0&callclosurfrmdate="+callclosurfrmdate+"&callclosurtodate="+callclosurtodate, function(json) {
options.series = json;
chart = new Highcharts.Chart(options);
});
}
//call Pending report dashboard technecian wise
function callpending()
{
//alert('sss');
callpendingdata();
}
function callpendingdata()
{
var penclosurfrmdate=$('#penclosurfrmdate').val();
var penclosurtodate=$('#penclosurtodate').val();
//alert(penclosurfrmdate);
var options = {
chart: {
renderTo: '3newdcallchart',
type: 'pie',
options3d: {
enabled: true,
alpha: 45,
beta: 0
}
},
title: {
text: 'Technecian Call Pending from date:'+penclosurfrmdate+' - Todate:'+penclosurtodate
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>({point.y} count)'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
depth: 35,
dataLabels: {
enabled: true,
format: '{point.name}'
}
}
},
series: []
};
$.getJSON("ajax/loaddata.php?type=2&pageid=1_1_0&penclosurfrmdate="+penclosurfrmdate+"&penclosurtodate="+penclosurtodate, function(json) {
options.series = json;
chart = new Highcharts.Chart(options);
});
}
// Cancel call closur report dashboard technecian wise
function callcancel()
{
callcanceldata();
}
function callcanceldata()
{
var callcancelfrmdate=$('#callcancelfrmdate').val();
var callcanceltodate=$('#callcanceltodate').val();
var options = {
chart: {
renderTo: '3dcancelcallchart',
type: 'pie',
options3d: {
enabled: true,
alpha: 45,
beta: 0
}
},
title: {
text: 'Technecian Call Cancel Closure from date:'+callcancelfrmdate+' - Todate:'+callcanceltodate
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>({point.y} count)'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
depth: 35,
dataLabels: {
enabled: true,
format: '{point.name}'
}
}
},
series: []
};
$.getJSON("ajax/loaddata.php?type=3&pageid=1_1_0&callcancelfrmdate="+callcancelfrmdate+"&callcanceltodate="+callcanceltodate, function(json) {
options.series = json;
chart = new Highcharts.Chart(options);
});
}
function monthcallclosure()
{
monthwisecallclosure();
}
function monthwisecallclosure()
{
var monthcallclosurfrmdate=$('#monthcallclosurfrmdate').val();
//var monthcallclosurtodate=$('#monthcallclosurtodate').val();
var options = {
chart: {
renderTo: 'containerupdate',
type: 'column'
},
title: {
text: 'Month wise closure Report',
x: -20 //center
},
subtitle: {
text: 'Sumber : Technecian Wise',
x: -20
},
xAxis: {
title: {
text: 'Months'
},
categories: []
},
yAxis: {
title: {
text: 'Technecian Count'
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
},
tooltip: {
headerFormat: '<span style="font-size:11px">{series.name}</span><br>',
pointFormat: '<span style="color:{point.color}">{point.name}</span>:<b>{point.y}</b> of total<br/>'
},
plotOptions: {
series: {
borderWidth: 0,
dataLabels: {
enabled: true,
format: '{point.y}'
}
}
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'top',
x: -40,
y: 100,
floating: true,
borderWidth: 1,
backgroundColor: ((Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'),
shadow: true
},
series: []
};
$.getJSON("ajax/loaddata.php?type=4&pageid=1_1_0&monthcallclosurfrmdate="+monthcallclosurfrmdate, function(json) {
options.xAxis.categories = json[0]['data']; //xAxis: {categories: []}
options.series[0] = json[1];
chart = new Highcharts.Chart(options);
});
}
</script>