%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
/** Dashboard Controller **/ angular.module('MetronicApp').controller("Dashboard", function($http, $timeout){ var cr=this; cr.init=()=>{ hide_loader(); } cr.init(); }); /** Score Board */ angular.module('MetronicApp').controller("DashScoreBoard", function($http, $timeout){ var cr=this; cr.data={}; cr.loader=false; let fdOb, tdOb; cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/scoreBoard', method:'POST', data}).success( function(res){ cr.loader=false; cr.data=res.result; } ) } cr.init=()=>{ fdOb=$("#fromDateScoreBoard"); tdOb=$("#toDateScoreBoard"); init_adv_daterange_picker($("#dateRangeScoreBoard"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Application Funnel */ angular.module('MetronicApp').controller("DashApplicationFunnel", function($http, $timeout){ var cr=this; cr.data={}; cr.loader=false; let fdOb, tdOb; cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/applicationFunnel', method:'POST', data}).success( function(res){ cr.loader=false; cr.data=res.result; } ) } cr.init=()=>{ fdOb=$("#fromDateAF"); tdOb=$("#toDateAF"); init_adv_daterange_picker($("#dateRangeAF"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Top Performing Channels */ angular.module('MetronicApp').controller("DashTopPerformingChannels", function($http, $timeout){ var cr=this; cr.data={}; cr.loader=false; let fdOb, tdOb; cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/utmUourceWiseLeads', method:'POST', data}).success( function(res){ cr.loader=false; cr.data=res.result; } ) } cr.init=()=>{ fdOb=$("#fromDateUtmSrc"); tdOb=$("#toDateUtmSrc"); init_adv_daterange_picker($("#dateRangeUtmSrc"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Lead Funnel */ angular.module('MetronicApp').controller("DashLeadFunnel", function($http, $timeout){ var cr=this; cr.data={}; cr.loader=false; let fdOb, tdOb; cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/leadFunnel', method:'POST', data}).success( function(res){ cr.loader=false; cr.data=res.result; } ) } cr.init=()=>{ fdOb=$("#fromDateLF"); tdOb=$("#toDateLF"); init_adv_daterange_picker($("#dateRangeLF"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Lead Time Slot */ angular.module('MetronicApp').controller("DashLeadTimeSlot", function($http, $timeout){ var cr=this; cr.data={dayHrWise:[]}; cr.data1={dayHrWise:[]}; cr.loader=false; let fdOb, tdOb; cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/leadTimeSlot', method:'POST', data}).success( function(res){ cr.loader=false; cr.data=res.leads; cr.data1=res.applications; let graphs=[ {title:"Leads", valueField:"c", colorField:"color"}, {title:"Applications", valueField:"c1", colorField:"color1"}, ]; cr.data.monthWise.forEach((v,i)=>{ v.c1=cr.data1.monthWise[i].c; v.color="#337ab7"; v.color1="#F2784B"; }); cr.data.hrWise.forEach((v,i)=>{ v.c1=cr.data1.hrWise[i].c; v.color="#337ab7"; v.color1="#F2784B"; }); createColumnChart("lts_chart_month_wise", cr.data.monthWise, "Month Wise Analysis", "", 0, 0, graphs); createColumnChart("lts_chart_hr_wise", cr.data.hrWise, "Hourly Analysis", "", 0, 90, graphs); let daysData=[]; Object.keys(cr.data.dayWise).forEach(k=>{ daysData.push({lbl:k, c:cr.data.dayWise[k], c1:cr.data1.dayWise[k], color:"#337ab7", color1:"#F2784B"}); }); createColumnChart("lts_chart_day_wise", daysData, "Day Wise Analysis", "", 0, 0, graphs); } ) } cr.dayHrCount=(d, hr)=>{ let c=0; cr.data.dayHrWise.forEach(v=>{ if(d===v.day && hr===v.hr){ c=v.c; return false; } }); return c; } cr.dayHrCountData1=(d, hr)=>{ let c=0; cr.data1.dayHrWise.forEach(v=>{ if(d===v.day && hr===v.hr){ c=v.c; return false; } }); return c; } cr.init=()=>{ fdOb=$("#fromDateLTSA"); tdOb=$("#toDateLTSA"); init_adv_daterange_picker($("#dateRangeLTSA"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Application Time Slot */ angular.module('MetronicApp').controller("DashApplicationTimeSlot", function($http, $timeout){ var cr=this; cr.data={dayHrWise:[]}; cr.loader=false; let fdOb, tdOb; cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/applicationTimeSlot', method:'POST', data}).success( function(res){ cr.loader=false; cr.data=res.result; createColumnChart("ats_chart_month_wise", cr.data.monthWise, "Month Wise Analysis", "", "#F2784B"); createColumnChart("ats_chart_hr_wise", cr.data.hrWise, "Hourly Analysis", "", "#F2784B", 90); let daysData=[]; Object.keys(cr.data.dayWise).forEach(k=>{ daysData.push({lbl:k, c:cr.data.dayWise[k]}); }); createColumnChart("ats_chart_day_wise", daysData, "Day Wise Analysis", "", "#F2784B"); } ) } cr.dayHrCount=(d, hr)=>{ let c=0; cr.data.dayHrWise.forEach(v=>{ if(d===v.day && hr===v.hr){ c=v.c; return false; } }); return c; } cr.init=()=>{ fdOb=$("#fromDateATSA"); tdOb=$("#toDateATSA"); init_adv_daterange_picker($("#dateRangeATSA"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Age and Gender */ angular.module('MetronicApp').controller("DashAgeGender", function($http, $timeout){ var cr=this; cr.data={ages:[], genders:[]}; cr.loader=false; let fdOb, tdOb, ageChart=null, genderChart=null; cr.createAgesChart=(data)=>{ let labels=[]; let series=[{name:"Leads", data:[]}]; Object.keys(data).sort((age1, age2)=>age2-age1).forEach((age, i)=>{ labels.push((age+'-'+(age*1+5))+' Yrs'); series[0].data.push(data[age]); }) var options={ title:{text:"Age Bufercation", align:"center"}, series, labels, chart:{type:'bar', height:350, width:'100%', toolbar:{show:true}}, plotOptions:{bar:{horizontal:true, dataLabels:{position:'top'}}}, dataLabels:{ enabled:true, offsetX:20, style:{fontSize:'12px', colors: ['#333333']} }, colors:["#D91E18"] }; if(ageChart){ ageChart.updateOptions(options); }else{ ageChart=new ApexCharts(document.querySelector("#ages_chart"), options); ageChart.render(); } } cr.createGenderChart=(data)=>{ let labels=[]; let series=[]; data.forEach(v=>{ labels.push(v.gender); series.push(v.no_of_leads); }) var options={ title:{text:"Gender Ratio", align:"center"}, series, labels, chart:{type:'donut', height:350, width:'100%', toolbar:{show:true}}, legend:{ position:'bottom', formatter: function(val, opts) { return val + " - " + opts.w.globals.series[opts.seriesIndex] } } }; if(genderChart){ genderChart.updateOptions(options); }else{ genderChart=new ApexCharts(document.querySelector("#gender_chart"), options); genderChart.render(); } } cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val()} $http({url:API_URL+'dashboard/ageAndGenderWise', method:'POST', data}).success( function(res){ cr.loader=false; cr.data.ages=res.ages; cr.data.genders=res.genders; cr.createAgesChart(cr.data.ages); cr.createGenderChart(cr.data.genders); } ) } cr.init=()=>{ fdOb=$("#fromDateAndG"); tdOb=$("#toDateAndG"); init_adv_daterange_picker($("#dateRangeAndG"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Consellor Wise */ angular.module('MetronicApp').controller("DashConsellorWise", function($http, $timeout){ var cr=this; cr.loader=false; let fdOb, tdOb, chart=null; cr.createCounsellorChart=(data)=>{ let labels=[]; let series=[{name:"Leads Generated", data:[]}, {name:"Applications", data:[]}, {name:"Follow-up", data:[]}]; data.forEach((v)=>{ labels.push(v.name); series[0].data.push(v.leads_count); series[1].data.push(v.step2plus_count); series[2].data.push(v.followup_count); }) var options={ title:{text:"", align:"center"}, series, labels, chart:{type:'bar', height:400, width:'100%', toolbar:{show:true}}, plotOptions:{bar:{horizontal:false, dataLabels:{position:'right'}}}, legend:{position:'top'}, dataLabels:{ enabled:true, offsetY:20, style:{fontSize:'9px', colors: ['#333333']} }, colors:["#F1C40F", "#32c5d2", "#8E44AD"] }; if(chart){ chart.updateOptions(options); }else{ chart=new ApexCharts(document.querySelector("#counsellor_wise_chart"), options); chart.render(); } } cr.getData=()=>{ cr.loader=true; let data={from_date:fdOb.val(), to_date:tdOb.val(), status:1} $http({url:API_URL+'reportsnew/counsellorReport', method:'POST', data}).success( function(res){ cr.loader=false; cr.createCounsellorChart(res.result); } ) } cr.init=()=>{ fdOb=$("#fromDateCounsellor"); tdOb=$("#toDateCounsellor"); init_adv_daterange_picker($("#dateRangeCounsellor"), fdOb, tdOb); cr.getData(); } cr.init(); }); /** Non Angular **/ //EOF