123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- var Bizgaze;(function(n){let t;(function(t){let i;(function(t){let i;(function(t){let i;(function(t){class i extends Unibase.Platform.Core.BaseComponent{constructor(){super(...arguments);this._bizgazegps_TripStatus=null;this._bizgazegps_TripId=0;this._bizgazegps_AddressId=0;this._bizgazegps_btnText="Arrived";this._tripTrackStatusId=0;this._tripTrackStatusIds=0;this.tripTrackStatus="Arrived";this._tripDistancAndDurations=[];this._meterTripIdId=0;this._bizgaze_latd=0;this._bizgaze_lgtd=0}cssFiles(){return[]}jsFiles(){return["apps/crm/employees/managers/gpslocationmanager.js","apps/routes/managers/routemanager.js","apps/transact/managers/invoicemanager.js","apps/transact/managers/orders/ordermanager.js","platform/core/helpers/numberhelper/numberhelper.js","apps/crm/employees/components/meterreading.js","apps/crm/contacts/managers/contactmanager.js"]}html(){return`<section class="">
- <div class="panel panel-info">
- <div class="row wrapper-sm">
- <input type="hidden" value="0" id="hfMeterReadingId" />
- <input type="hidden" value="" id="hfBizgaze_GpsTripGroupName" />
- <input type="hidden" value="0" id="hfDistance" />
- <input type="hidden" value="0" id="hfDuration" />
- <input type="hidden" value="0" id="hflat" />
- <input type="hidden" value="0" id="hflag" />
- <input type="hidden" value="0" id="hfTripGroupId" />
- <input type="hidden" value="0" id="hfSeletedRouteId" />
- <input type="hidden" value="" id="hfTripGroupStatus" />
- <div class="col-sm-4 divRouteName hidden">
- <strong class="h4 block m-t-xs" id="lbRouteName"></strong>
- </div>
- <div class="col-sm-4 divcmdroutes">
- <div class="form-group floating-label-form-group floating-label-form-group-with-value">
- <select id="cmbRoutes" data-required="true" class="form-control"></select>
- </div>
- </div>
- <div class="col-sm-4">
- <div class="btn-group btn-group-justified" data-toggle="buttons">
- <label class="btn btn-default btn-lg active" id="btnMap"> <input type="radio" name="options" value="1"><i class="fa fa-check text-active"></i> Map </label>
- <label class="btn btn-default btn-lg" id="btnGrid"> <input type="radio" name="options" value="2"><i class="fa fa-check text-active"></i> Grid </label>
- </div>
- </div>
- <div class="col-sm-3">
- <a class="m-r-xs btn btn-group-justified btn-lg btn-primary btnStartTrip" id="btnStartTrip">Start Trip</a>
- <div class="btn-group btn-group-justified">
- <a class="m-r-xs btn btn-lg btn-danger btnStopTrip hidden" id="btnCancelTrip">Cancel</a>
- <a class="m-r-xs btn btn-lg btn-warning btnStopTrip hidden" id="btnStopTrip">Close Trip</a>
- </div>
- </div>
- <div class="col-sm-1">
- <a class="m-r-xs btn btn-group-justified btn-lg btn-primary btnCreateLead hidden" id="btnCreateLead">CreateLead</a>
- </div>
-
- </div>
- <div class="row m-l-none m-r-none bg-light lter">
- <div class="col-xs-6 padder-v b-r b-light lt" id="bizTotalDistance">
- <a class="clear" href="javaScript:;">
- <span class="h4 block m-t-xs"><strong id="bizTotalKm">0.00</strong></span>
- <small class="text-uc ordered-label">Total Distance (Km)</small>
- </a>
- </div>
- <div class="col-xs-6 padder-v b-r b-light lt">
- <span id="bizTotalCustomers12">
-
- <a class="clear" id="bizTotalCustomers" href="javascript:;">
- <span class="h4 block m-t-xs"><strong class="lbCustomers">0</strong></span>
- <small class="text-uc">Number Of Customer</small>
- </a>
- </span>
- </div>
- </div>
- <div class="divmap1">
- <div class="btnCustomerTrips"></div>
- <div class="divmap">
- <div id="NavigateEmployeeMap" style="width:100%;height:100%; min-height:400px;"></div>
- </div>
- <div class="divgrid hidden" id="gridDiv">
- <div class="">
- <div class="clear m-t-sm">
- <div class="clear m-t-sm">
- <div class="customerList">
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
-
- </section>
-
- <div class="modal fade" id="divTotalCusomers" tabindex="-1" role="dialog" aria-labelledby="divTotalCusomersLabel" style="display: none;" aria-hidden="true" data-backdrop="false">
- <div class="modal-dialog" role="document">
- <div class="modal-content">
- <div class="modal-body1">
- <div class="form-group m-t h4">
- <div class="clear">
- <div class="col-xs-5"><strong class="block">Company Name</strong></div>
- <div class="col-xs-4"><strong class="block">Contact Person</strong></div>
- <div class="col-xs-3"><strong class="block">Phone No</strong></div>
- </div>
- </div>
- <div id="divTotalCustomerlist" class="routeCustomer-item">
- </div>
- </div>
- <div class="modal-footer">
- <button type="button" id="btn_Close" class="btn btn-default pull-right" data-dismiss="modal">
- Close
- </button>
- </div>
- </div>
- </div>
- </div>
-
- <div class="modal fade" id="divTotalDueAmount" tabindex="-1" role="dialog" aria-labelledby="divTotalDueAmountLabel" style="display: none;" aria-hidden="true" data-backdrop="false">
- <div class="modal-dialog" role="document">
- <div class="modal-content">
- <div class="modal-body1">
- <div class="form-group m-t h4">
- <div class="clear">
- <div class="col-xs-5"><strong class="block">Contact Name</strong></div>
- <div class="col-xs-5"><span class="">Invoice No</span></div>
- <div class="col-xs-2"><span class="">Due Amount</span></div>
- </div>
- </div>
- <div id="divDueAmountlist" class="routeDueAmt-item">
- </div>
- </div>
- <div class="modal-footer">
- <button type="button" id="btn_Close" class="btn btn-default pull-right" data-dismiss="modal">
- Close
- </button>
- </div>
- </div>
- </div>
- </div>
-
- <div class="modal fade" id="divCusomerDetails" tabindex="-1" role="dialog" aria-labelledby="divCusomerDetailsLabel" style="display: none;" aria-hidden="true" data-backdrop="false">
- <div class="modal-dialog" role="document">
- <div class="modal-content">
- <input type="hidden" id="hfRouteScheduleItemId" />
- <div class="modal-header">
- <button type="button" class="close" data-dismiss="modal" aria-hidden="true">
- ×
- </button>
- <h4 class="modal-title">
- CustomerDetails
- </h4>
- </div>
- <div class="modal-body">
- <div id="divRoutesCustomerlist" class="panel-group m-b divRoutesCustomerlist ">
- </div>
- </div>
- <div class="modal-footer">
- <button type="button" id="btn_Close" class="btn btn-default pull-right" data-dismiss="modal">
- Close
- </button>
- </div>
- </div>
- </div>
- </div>`}init(t){var i=this;i.fileCacheHelper.loadJsFiles(["apps/crm/employees/components/w_employeeroute.js","apps/crm/employees/managers/gpslocationmanager.js"],function(){i.navigationHelper.loadSection(0,t,n.Apps.Crm.Employees.Components.EmployeeRoute.Instance(),null,null)})}load(){let t=this;t.loadRoutes();$("#cmbRoutes").change(function(){$("#hfSeletedRouteId").val($("#cmbRoutes").val());t.loadRouteMap($("#cmbRoutes").val())});$("#btnMap").click(function(){$(".divgrid").addClass("hidden");$(".divmap").removeClass("hidden")});$("#btnGrid").click(function(){$(".divgrid").removeClass("hidden");$(".divmap").addClass("hidden")});$("#btnNewTrip").click(function(){t.createTrip($("#hfTripGroupId").val())});$("#btnCreateLead").click(function(){});$("#btnStartTrip").click(function(){var i=t.callbacks;n.Apps.Crm.Employees.Components.MeterReading.Instance().loadPop(1,$("#hfMeterReadingId").val(),t._meterTripIdId,i)});$("#btnStopTrip").click(function(){var i=t.callbacks;n.Apps.Crm.Employees.Components.MeterReading.Instance().loadPop(0,$("#hfMeterReadingId").val(),t._meterTripIdId,i)});$("#bizTotalCustomers").click(function(){$("#divTotalCusomers").modal();var n=$("#cmbRoutes").val();n==""&&(n=$("#hfSeletedRouteId").val());t.getCustomerDetailsByRouteId(n)});$("#btnAddMeeting").click(function(){});$("#bizDueAmount").click(function(){$("#divTotalDueAmount").modal()})}callbacks(n){let t=this;t._meterTripIdId=n}getMeterReading(){let t=this;n.Apps.Crm.Employees.Managers.GpsLocationmanager.Instance().GetMyMeterReading().then(function(n){n.result!=null&&n.result.meterReadingId!=0?($(".btnStopTrip").removeClass("hidden"),$(".btnStartTrip").addClass("hidden"),$("#hfMeterReadingId").val(n.result.meterReadingId),t._meterTripIdId=n.result.tripId):($(".btnStopTrip").addClass("hidden"),$(".btnStartTrip").removeClass("hidden"))})}getCustomerDetailsByRouteId(t){$(".customer-additem").each(function(){$(this).remove()});Number(t);n.Apps.Crm.Employees.Managers.GpsLocationmanager.Instance().GetCustomerDetailsByRouteId(t).then(function(n){var i,t,r;if(n.result!=null)for(i=0;i<n.result.length;i++){t=n.result[i];r="--";t.PhoneNumber!=null&&(r=t.PhoneNumber);let u='<li class="list-group-item routeCustomer-item customer-additem"><span class="clear"><div class="col-xs-5"><span class="">'+t.OrganizationName+'<\/span><\/div><div class="col-xs-4 mute"><small>'+t.OrgContactName+' Months recuring<\/small><\/div><div class="col-xs-3 Text-right"><a class="" href="javascript:;">'+r+"<\/a><\/div><\/span><\/li>";$(".routeCustomer-item:last").after(u)}})}getDutAmount(){}saveTrip(t,i,r,u,f,e){var o=this,s;u==1&&($(".divbtnTripStart_"+t).addClass("hidden"),$(".divbtnTripCancel_"+t).removeClass("hidden"),$(".btnTripTrackStatus_Arrived").removeClass("hidden"),$(".btnCustomerTripStart").addClass("hidden"));r=="Started"?r=1:r=="Canceled"?r=2:r=="Completed"&&(r=3);s={TripId:e,ToAddressId:t,RefGuid:i,TripStatus:r,TripGroupId:Number($("#hfTripGroupId").val())};n.Apps.Crm.Employees.Managers.GpsLocationmanager.Instance().SaveTrip(s).then(function(n){var t=n.result.tripId,i=n.result.tripStatusId,r=n.result.toAddressId;o._bizgazegps_AddressId=r;o._bizgazegps_TripId=t;i==1?($(".btnCustomerTripStart").addClass("hidden"),o._tripTrackStatusIds=1,o.saveTripTrack("Started",t)):i==2?(o._bizgazegps_AddressId=0,o.saveTripTrack("Stepout",t),o._bizgazegps_TripId=0):i==3&&(o._tripTrackStatusIds=0,$(".btnCustomerTripComplete").addClass("hidden"),o.saveTripTrack("Completed",t));o.loadRouteMap($("#cmbRoutes").val())},function(n){MessageHelper.Instance().showError(n,"bizgaze_CreateErrorMessages")})}saveTripTrack(t,i){let r=this;t=="Started"?t=1:t=="Stepout"?t=3:t=="Completed"&&(t=2);var u={TripId:i,TripTrackStatus:t};n.Apps.Crm.Employees.Managers.GpsLocationmanager.Instance().SaveTripTrack(u).then(function(n){var i=n.result.tripTrackStatusId,u=n.result.toAddressId;r._bizgazegps_AddressId=u;t=="Arrived"&&($(".btnTripTrackStatus_Arrived").addClass("hidden"),$(".btnTripTrack_Completed").removeClass("hidden"));i==1?(r._tripTrackStatusId=1,r._bizgazegps_btnText="Arrived",r.tripTrackStatus="Arrived"):i==2?(r._tripTrackStatusId=2,$(".btnTripTrack_Completed").removeClass("hidden")):i==3&&(r._bizgazegps_TripId=0,$(".divbtnTripStart_"+u).addClass("hidden"),r._bizgazegps_AddressId=0,r._tripTrackStatusIds=0,r.loadRouteMap($("#hfSeletedRouteId").val()))},function(){bootbox.alert("Co-ordinate mismatched...")})}editMeeting(){}loadRouteMap(t){let i=this;n.Apps.Crm.Employees.Managers.GpsLocationmanager.Instance().GetRouteById(t).then(function(n){var u=[],ii=[],wt=i._bizgaze_latd,bt=i._bizgaze_lgtd,ii=[],et="",p=new google.maps.LatLng(wt,bt),kt={center:p,zoom:6,mapTypeId:google.maps.MapTypeId.ROADMAP},o=new google.maps.Map(document.getElementById("NavigateEmployeeMap"),kt),d=new google.maps.InfoWindow,dt=[],g=new google.maps.LatLngBounds,c,w,t,ot,st,r,s,ct,e,nt,k,h,it,rt,vt,yt,ut,ft,f,pt,b;for(n.result==null||n.result.length<=0?$("#NavigateEmployeeMap").html("<span style='color:white;background-color:red;font-size: xx-large;position: relative;top: 40%;left: 30%;padding:2%;'>NO RECORD FOUND<\/span>"):$("#tblMap").empty(),c="",w="",$(".customerList").html('<div class="routeUser-item hidden"><\/div>'),f=0;f<n.result.length;f++){t=n.result[f];t.CoordinatesNotFound||(w+=t.contactName+",",ot=w.substring(0,w.length-1),$(".lbMissingCustomersName").text(ot),c="<tr bgcolor='C70039' class='text-white' id=row"+f+">",c=c+"<td>"+t.contactName+"<\/td>",c=c+"<td id=rows"+f+">"+t.addressName+","+t.addressLine1+""+t.cityName+","+t.districtName+","+t.stateName+" "+t.zipCode+" - "+t.countryName+"<\/td>");let r,e,o=parseFloat($("#hflat").val().toString()),s=parseFloat($("#hflag").val().toString());f==0||(r=new google.maps.LatLng(o,s),e=new google.maps.LatLng(t.latId,t.lngId));$("#hflat").val(t.latId);$("#hflag").val(t.lngId);t.tripStatus=="Started"&&(i._tripTrackStatusIds=t.activetripTrackStatus);$("#hfBizgaze_GpsTripGroupName").val(t.routeName+"-"+t.scheduleDate);t.tripGroupStatus=="Started"?($(".divcmdroutes").addClass("hidden"),$(".divRouteName").removeClass("hidden"),st=$("#cmbRoutes option:selected").text(),$("#lbRouteName").html(st)):t.tripGroupStatus!=""&&t.tripGroupStatus!=0&&t.tripGroupStatus!=null&&($(".divcmdroutes").removeClass("hidden"),$(".divRouteName").addClass("hidden"));t.tripGroupStatus!=""&&t.tripGroupStatus!=null&&($("#hfTripGroupStatus").val(t.tripGroupStatus),t.tripGroupStatus!=0&&($("#btnStartTrip").hide(),$("#btnCancelTrip").removeClass("hidden"),$("#btnStopTrip").removeClass("hidden"),$("#btnCreateLead").removeClass("hidden")));u.push({lat:parseFloat(t.latId),lng:parseFloat(t.lngId),ContactAddressId:t.contactAddressId,contactId:t.contactId,distance:0,point1:r,point2:e,contactName:t.contactName,routeVersionGuid:t.routeVersionGuid,tripStatus:t.tripStatus,tripId:t.tripId,activeTripAddressId:t.activeTripAddressId,IsActiveTrip:t.isActiveTrip,contactPhotoUrl:t.contactPhotoUrl,activetripTrackStatus:t.activetripTrackStatus,routeIndex:t.routeIndex});$(".lbCustomers").text(n.result.length-1);t.tripGroupId!=0&&($("#hfTripGroupId").val(t.tripGroupId),$(".divNewTrip").removeClass("hidden"))}var l=u,ht="",et="";for(f=0;f<l.length;f++){r=l[f];p=new google.maps.LatLng(parseFloat(r.lat),parseFloat(r.lng));dt.push(p);s="";s=f==0?"Views/Bizgaze_GpsTrack/Widgets/Mapicon/selasemain_02.png":r.tripStatus=="Started"?"Views/Bizgaze_GpsTrack/Widgets/Mapicon/Company.png?chst=d_map_pin_letter&chld=5|FF0000|":r.tripStatus=="Completed"?"Views/Bizgaze_GpsTrack/Widgets/Mapicon/Success.png?chst=d_map_pin_letter&chld=5|FF0000|":r.tripStatus=="Canceled"?"Views/Bizgaze_GpsTrack/Widgets/Mapicon/Cancel.png?chst=d_map_pin_letter&chld=5|FF0000|":"Views/Bizgaze_GpsTrack/Widgets/Mapicon/compant-location_02.png?chst=d_map_pin_letter&chld=5|FF0000";ct={url:s,origin:new google.maps.Point(0,0),anchor:new google.maps.Point(25,25),scaledSize:new google.maps.Size(50,50)};b=new google.maps.Marker({position:p,map:o,draggable:!1,animation:google.maps.Animation.DROP,icon:ct,title:r.title});g.extend(p);f==0&&(ht=l[0].lng,et=l[0].lat);var gt=r.lat,ni=r.lng,ri="https://www.google.co.in/maps/dir/"+parseFloat(et)+parseFloat(ht)+parseFloat(gt)+parseFloat(ni);if(function(n,t){google.maps.event.addListener(n,"click",function(){if(t.distance==0){var r="",e="hidden",u="hidden",f="hidden";t.tripStatus=="Started"&&(r="hidden",f="",u="",t.activetripTrackStatus=="2"&&(f="hidden",e=""));t.tripStatus=="Completed"&&(e="hidden",r="hidden",u="hidden");t.tripStatus=="Canceled"&&(u="hidden",f="hidden",r="hidden");(i._tripTrackStatusIds==2||i._tripTrackStatusIds==1)&&(r="hidden");i._bizgazegps_AddressId==t.contactAddressId&&(i._tripTrackStatusId==1?f="":e="",u="");i._bizgazegps_TripId=t.tripId;i.calcDistance(t.point1,t.point2,function(i){d.setContent('<div class="btnCustomerTripComplete"><strong class="block">'+t.contactName+'<\/strong><span class="">Distance: '+i[0].distance+' km <a class="btn btn-xs m-l-lg btn-default" onclick="javascript:return Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().showCustomerDetails('+t.contactId+",'"+t.contactName+'\')">View Details<\/a><\/span><div class=""><span>Duration: '+i[0].duration+' minutes <\/span><\/div><span class="m-t"><div class="text-center '+r+" btnCustomerTripStart divbtnTripStart_"+t.ContactAddressId+'"><a class="btn btn-primary btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+t.ContactAddressId+",'"+t.routeVersionGuid+"','Started',1,0,"+t.tripId+')">Start<\/a><\/div><div class="text-center '+u+" divbtnTripCancel_"+t.contactAddressId+'"><a class="btn btn-warning btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+t.contactAddressId+",'"+t.routeVersionGuid+"','Canceled',1,0,"+t.tripId+')">Cancel<\/a><a class="btn btn-info btn-sm '+f+' btnTripTrackStatus btnTripTrackStatus_Arrived" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+t.contactAddressId+",'"+t.routeVersionGuid+"','Completed',1,0,"+t.tripId+')">Arrived<\/a><a class="btn btn-primary '+e+" divbtnTripCompleted_"+t.contactAddressId+' btnTripTrack_Completed btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+t.contactAddressId+",'"+t.routeVersionGuid+"','Completed',1,0,"+t.tripId+')">Done<\/a><\/span><\/div><p class="pull-right"><a href="javascript:;" class="btn btn-twitter1 btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().loadNavigate(\''+t.lat+"','"+t.lng+'\')"><span class=""> Navigate <\/span><\/a><\/p><\/div>');d.open(o,n)})}else d.open(o,n)})}(b,r),o.setCenter(g.getCenter()),o.fitBounds(g),f!=0){e=f;nt="";u[f].lat!=0&&u[f].lng!=0&&i.calcDistance(u[f].point1,u[f].point2,function(n){nt+="<span>"+n[0].distance+" KM Away.<\/span><br><span>"+n[0].duration+" Minutes to reach<\/span><hr>"});k="";r.tripStatus=="Completed"&&(k='<span class="label bg-primary pull-right"><i class="fa fa-check"><\/i><\/span>');r.tripStatus=="Canceled"&&(k='<span class="label bg-danger pull-right"><i class="fa fa-times"><\/i><\/span>');h='<div class="col-sm-2 routeUser-item addRoute-item"><section class="panel panel-default"><div class="text-center wrapper bg-light lt"><span class="fa-stack pull-left m-l-xs"><i class="fa fa-circle text-success fa-stack-2x"><\/i><span class="text-white fa-stack-1x">'+u[e].routeIndex+'<\/span><\/span> <strong class="m-r-xs">'+u[e].contactName+"<\/strong><br><\/div>"+k+'<div class="text-center">';h=h+nt+"<\/div>";var a="",tt="hidden",v="hidden",y="hidden",lt="hidden",at="hidden";r.tripStatus=="Started"&&(a="hidden",y="",v="",r.activetripTrackStatus=="2"&&(y="hidden",tt=""));r.tripStatus=="Completed"&&(tt="hidden",a="hidden",v="hidden",lt="",at="");r.tripStatus=="Canceled"&&(v="hidden",y="hidden",a="hidden");(i._tripTrackStatusIds==2||i._tripTrackStatusIds==1)&&r.tripStatus!="Completed"&&(a="hidden",y="",v="");$("#hfTripGroupStatus").val()=="Started"&&r.tripStatus==""&&(a="hidden",y="",v="");h+='<div class="text-center m-b-xs"><a title="Options" class="btn btn-sm btn-default '+lt+'" data-toggle="dropdown" data-target=".divbizgaze_createOption_'+u[e].ContactAddressId+'"><small class="text-sm block">Create<\/small><\/a> <a href="#" class="btn btn-sm btn-default '+at+'" onclick=" Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().showCustomerDetails('+u[e].contactId+",'"+u[e].contactName+"')\">Details<\/a>";h+='<span class="btnCustomerTripComplete"><span class="'+a+" btnCustomerTripStart divbtnTripStart_"+r.ContactAddressId+'"><a class="btn btn-primary btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+u[e].ContactAddressId+",'"+u[e].routeVersionGuid+"','Started',1,0,"+r.tripId+')">Start<\/a><\/span><span class="'+v+" divbtnTripCancel_"+u[e].ContactAddressId+'"><a class="btn btn-warning btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+u[e].ContactAddressId+",'"+u[e].routeVersionGuid+"','Canceled',1,0,"+r.tripId+')">Cancel<\/a><a class="btn btn-info btn-sm '+y+' btnTripTrackStatus btnTripTrackStatus_Arrived" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+u[e].ContactAddressId+",'"+u[e].routeVersionGuid+"','Completed',1,0,"+r.tripId+')">'+i._bizgazegps_btnText+'<\/a><a class="btn btn-primary '+tt+" divbtnTripCompleted_"+u[e].ContactAddressId+' btnTripTrack_Completed btn-sm" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().saveTrip('+u[e].ContactAddressId+",'"+u[e].routeVersionGuid+"','Completed',1,0,"+r.tripId+')">Done<\/a><\/span><div id="divbizgaze_createOption" class="dropup divbizgaze_createOption_'+u[e].ContactAddressId+'"><section class="dropdown-menu pull-right col-sm-5 col-xs-12 m-l-n"><div class="text-center"><div class="text-center nav-item-body"><div class="col-xs-4 no-padder"> <div class="text-center nav-item-body"><a href="javascript:;" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().creates(2,'+u[e].contactId+')"><div class="text-center"><div class="thumb-sm avatar b-3x m-t-sm rounded-cornor "> <img src="/Tenants/_default/icons/Salesorder.png"> <\/div><div style="height:36px; overflow:hidden;">Order<\/div><\/div><\/a><\/div><\/div><div class="col-xs-4 no-padder"> <div class="text-center nav-item-body"><a href="javascript:;" onclick="Bizgaze.Apps.Crm.Employees.Components.EmployeeRoute.Instance().creates(3,'+u[e].contactId+')"><div class="text-center"><div class="thumb-sm avatar b-3x m-t-sm rounded-cornor "> <img src="/wwwroot_filesappicons\receipts.png"> <\/div><div style="height:36px; overflow:hidden;">Receipt<\/div><\/div><\/a><\/div><\/div><\/div><\/section><\/div><\/div><\/section><\/div>';$(".routeUser-item:last").after(h)}let n=Unibase.Core.Helpers.NumberHelper.Instance();it=0;rt=0;r.distance==0&&i.calcDistance(r.point1,r.point2,function(t){it+=parseFloat(t[0].distance);rt+=parseFloat(t[0].duration);$("#bizTotalKm").text(n.roundNumber(it,1));$(".lbDuration").text(rt)})}vt={path:google.maps.SymbolPath.FORWARD_CLOSED_ARROW};yt={strokeOpacity:.8,strokeWeight:3,map:o,strokeColor:"#008000",icons:[{repeat:"70px",icon:vt,offset:"100%"}]};let ti=new google.maps.Polyline(yt);for(ut=0,ft=[],ft[ut]=ti.getPath(),f=0;f<l.length;f++)pt=l[f],b=new google.maps.Marker({position:pt,map:o}),ft[ut].push(b.getPosition())})}createTrip(){}creates(t,i){let r=this;n.Apps.Crm.Contacts.Managers.ContactManager.Instance().getOrganizationById(i).then(function(n){var f=i,u=0,r;n.result!=null&&(f=n.result.DefaultOrgContactId,u=n.result.OrganizationGroupId);r="";t=="1"?r=n.result!=null?"/bizgazeapp/organization/CreateOrganization?RefGuid=&Id="+u:"/bizgazeapp/spoc/Createspoc":t=="2"?r="/bizgazetransact/Orders/CreateSalesOrderByOrg?OrgId="+i:t=="3"&&(r=n.result!=null?"/bizgazetransact/Payments/CreateReceiptByOrgGuid?OrgGuid="+n.result.VersionGuid:"/bizgazetransact/Payments/CreateReceipt?paymentType=Receipt&contactId="+i)})}loadRoutes(){let t=this;t.getMeterReading();n.Apps.Routes.Managers.RouteManager.Instance().getMyRoutes().then(function(n){var o=0,s=document.getElementById("cmbRoutes"),u,r,f,i,h,e;for($("#cmbRoutes").empty(),u=document.createElement("option"),u.text="--Select Route--",u.value="",s.append(u),r=0;r<n.result.length;r++)f=document.createElement("option"),f.text=n.result[r].RouteName,f.value=n.result[r].RouteDefinitionId,s.append(f);if(n.result.length==1){for(i=0;i<n.result.length;i++)h=n.result[i].RouteName,e=n.result[i].RouteDefinitionId,$("#lbRouteName").text(h),$("#lbRouteAssignedEmployee").text(n.result[i].RouteAssignedEmployee),t.loadRouteMap(e),$("#hfSeletedRouteId").val(e);$(".divcmdroutes").addClass("hidden");$(".divRouteName").removeClass("hidden")}else $(".divcmdroutes").removeClass("hidden"),$(".divRouteName").addClass("hidden"),o!=0&&t.loadRouteMap(o)})}showCustomerDetails(n,t){let i=this;i.loadInvoiceDetails(n,t);i.loadOrderDetails(n);$("#divCusomerDetails").modal()}loadInvoiceDetails(t){let i=this;$(".Bizgaze_Crm_Route_customer_addedrow").each(function(){$(this).remove()});n.Apps.Transact.Managers.InvoiceManager.Instance().getPendingSalesInvoicesByContactId(Number(t),!1).then(function(n){var f,u,r;if(n.result.length>0){for(r='<div class="Bizgaze_Crm_Route_customer_addedrow"><label>Invoice Details<\/label><table class="table table-bordered text-sm " > <thead> <tr><th class="col-sm-2">Invoice No<\/th><th class="col-sm-4">Invoice Date<\/th><th class="col-sm-2">Total Amount<\/th><th class="col-sm-4">Balance Amount<\/th><\/tr><\/thead><tr class="bizgazecrm_customer_invoice_row_'+t+'"><\/tr><\/table><label>Order Details<\/label><table class="table table-bordered text-sm"><tr><th class="col-sm-6">Last Order No<\/th><th class="col-sm-6">Date<\/th><\/tr><tr class="bizgazecrm_customer_Order_row_'+t+'"><\/tr><\/table><div class="btn-group col-sm-2 form-group pull-right" id="btn-onOff"><\/div><\/div>',$(".divRoutesCustomerlist:last").after(r),f=[],n.result.length==0&&($(".invoiceNotFount").removeClass("hidden"),r='<tr class="divRoutesCustomerlist-addeditem divRoutesCustomerlist invoiceNotFount"><td class="col-sm-12" colspan="5" align="center">No invoices Found!<\/td><\/tr>',$(".bizgazecrm_customer_invoice_row_"+t+":last").after(r)),u=0;u<n.result.length;u++)f=n.result[u],i.addInvoiceRow(f,t);$(".invoiceNotFount").addClass("hidden")}else $(".divRoutesCustomerlist").html(""),r='<tr class="divRoutesCustomerlist-addeditem divRoutesCustomerlist"><td class="col-sm-12" colspan="5" align="center">No invoices Found!<\/td><\/tr>',$(".divRoutesCustomerlist:last").after(r)})}addInvoiceRow(n,t){let f=Unibase.Platform.Helpers.DateTimeHelper.Instance(),i=Unibase.Core.Helpers.NumberHelper.Instance();var r="",u=n.TotalAmount-n.PaidAmount;r=u!=0?'<tr class="bizgazecrm_customer_invoice_row bizgazecrm_customer_invoice_addedrow"><td class="col-sm-2">'+n.InvoiceNo+'<\/td><td class="col-sm-4">'+f.formatLocalDate1(n.InvoiceDate,"")+'<\/td><td class="col-sm-2 text-right">'+i.roundNumber(n.TotalAmount,2)+'<\/td><td class="col-sm-4 text-right">'+i.roundNumber(u,2)+"<\/td><\/tr>":'<tr class="bizgazecrm_customer_invoice_row bizgazecrm_customer_invoice_addedrow"><td class="col-sm-12" colspan="5" align="center">Data Not Found!<\/td><\/tr>';$(".bizgazecrm_customer_invoice_row_"+t+":last").after(r)}loadOrderDetails(t){let i=this;$(".bizgazecrm_customer_Order_addedrow").each(function(){$(this).remove()});n.Apps.Transact.Managers.OrderManager.Instance().getLastOrder(t).then(function(n){if(n.result!=null&&i.addOrderRow(n.result,t),n.result.OrderNo==0)$(".bizgazecrm_customer_Order_row_"+t+":last").after('<tr class="divRoutesCustomerlist-addeditem divRoutesCustomerlist"><td class="col-sm-12" colspan="5" align="center">No orders Found!<\/td><\/tr>')})}addOrderRow(n,t){let r=Unibase.Platform.Helpers.DateTimeHelper.Instance();var i="";i=n.OrderNo!=null?'<tr class="bizgazecrm_customer_Order_row bizgazecrm_customer_Order_addedrow"><td class="col-sm-6">'+n.OrderNo+'<\/td><td class="col-sm-6">'+r.formatLocalDate(n.OrderDate)+"<\/td><\/tr>":'<tr class="bizgazecrm_customer_Order_row bizgazecrm_customer_Order_addedrow"><td class="col-sm-12" colspan="2" align="center">Data Not Found!<\/td><\/tr>';$(".bizgazecrm_customer_Order_row_"+t+":last").after(i)}CheckGpsStatus(){}calcDistance(n,t,i){var r=[],u=new google.maps.DistanceMatrixService;u.getDistanceMatrix({origins:[n],destinations:[t],travelMode:google.maps.TravelMode.DRIVING,unitSystem:google.maps.UnitSystem.METRIC,avoidHighways:!1,avoidTolls:!1},function(n,t){if(t==google.maps.DistanceMatrixStatus.OK&&n.rows[0].elements[0].status!="ZERO_RESULTS"){var u=n.rows[0].elements[0].distance.text,f=n.rows[0].elements[0].duration.text,e=u.split(" "),o=f.split(" ");r.push({distance:e[0],duration:o[0]});i(r)}})}loadData(){let t=this;n.Apps.Crm.Contacts.Managers.ContactManager.Instance().getCustomerLocations().then(function(n){for(var r,s,e,w,b,l=[],a=t._bizgaze_latd,v=t._bizgaze_lgtd,k={center:new google.maps.LatLng(a,v),zoom:6,mapTypeId:google.maps.MapTypeId.ROADMAP},u=new google.maps.Map(document.getElementById("NavigateMap"),k),h=new google.maps.InfoWindow,d=[],c=new google.maps.LatLngBounds,i=0;i<n.result.length;i++){var f=n.result[i],g=new google.maps.LatLng(a,v),nt=new google.maps.LatLng(f.Latitude,f.Longitude);l.push({lat:f.Latitude,lng:f.Longitude,userName:f.UserName,distance:0,point1:g,point2:nt})}var o=l,y="",p="";for(i=0;i<o.length;i++){r=o[i];s=new google.maps.LatLng(r.lat,r.lng);d.push(s);e="";e=i==0?"yellow":"green";e="http://maps.google.com/mapfiles/ms/icons/"+e+".png";w={url:e,origin:new google.maps.Point(0,0),anchor:new google.maps.Point(25,25),scaledSize:new google.maps.Size(50,50)};b=new google.maps.Marker({position:s,map:u,draggable:!0,animation:google.maps.Animation.DROP,icon:w,title:r.title});c.extend(s);i==0&&(y=o[0].lng+"/",p=o[0].lat+"+");var tt=r.lat+"+",it=r.lng+"/",rt="https://www.google.co.in/maps/dir/"+p+y+tt+it;(function(n,i){google.maps.event.addListener(n,"click",function(){i.distance==0?t.calcDistance(i.point1,i.point2,function(t){i.distance=t[0].distance;h.setContent('<strong class="block">'+i.userName+'<\/strong><span class="">Distance: '+t[0].distance+'<\/span><div class="">Duration: '+t[0].duration+'<\/div><p><a href="#" class="btn" onclick="gpsTrackNavigateDirection.loadNavigate(\''+rt+"')\">Click here<\/a><\/p>");h.open(u,n)}):h.open(u,n)})})(b,r);u.setCenter(c.getCenter());u.fitBounds(c)}})}loadNavigate(n,t){var i=new google.maps.Map(document.getElementById("map"),{zoom:4,center:{lat:n,lng:t}}),r=window.location.pathname;window.open(i,"","width=800,height=450,resizable=yes,dependent,screenx=80,screeny=80,left=80,top=20,scrollbars=no")}getAddresss(n,t,i){let u=this;var f="https://maps.googleapis.com/maps/api/geocode/json?latlng="+t+","+i,r=u.createCORSRequest("Get",f);if(!r){bootbox.alert("CORS not supported");return}r.onload=function(){var i=r.responseText,t=JSON.parse(i);$("#pac-inputs").val(t.results[0].formatted_address);document.getElementById(n).innerHTML=t.results[0].formatted_address};r.onerror=function(){bootbox.alert("Woops, there was an error making the request.")};r.send()}createCORSRequest(n,t){let r;var i=new XMLHttpRequest;return"withCredentials"in i?i.open(n,t,!0):typeof r!="undefined"?(i=new r,i.open(n,t)):i=null,i}static Instance(){return this.instance===undefined&&(this.instance=new i),this.instance}}t.EmployeeRoute=i})(i=t.Components||(t.Components={}))})(i=t.Employees||(t.Employees={}))})(i=t.Crm||(t.Crm={}))})(t=n.Apps||(n.Apps={}))})(Bizgaze||(Bizgaze={}));
|