var Bizgaze; (function (Bizgaze) { let Apps; (function (Apps) { let Routes; (function (Routes) { let Map; (function (Map) { class Routeschedule extends Unibase.Platform.Core.BaseComponent { cssFiles() { return []; } jsFiles() { return []; } html(id, containerid) { let html = ``; return html; } load(id, containerid, callback) { } ; init(container) { Bizgaze.Apps.Routes.Map.Routeschedule.Instance().render(container); } render(containerid) { var portletwidgetid = Number($("#hf_PortletWidgetId").val()); $("." + containerid).empty(); let html = `
Route Map Count :
`; $("." + containerid).append(html); this.mapRoute(); } mapRoute() { var markers = []; this.fileCacheHelper.loadJsFile("apps/routes/managers/routemanager.js", function () { var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; var Routedefinitionid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_routedefinitionid").Value); Bizgaze.Apps.Routes.Managers.RouteManager.Instance().getSections(Routedefinitionid).then(function (response) { var markers = []; if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length != 0) { $("#Customer_Length").text(response.result.length); if (response.result.length != 0) { for (var i = 0; i < response.result.length; i++) { var data = response.result[i]; var addressId = data.ContactAddressId; var contactId = data.ContactId; var routeId = data.RouteId; var routeIndex = data.RouteIndex; var addressName = data.AddressName; var contactName = data.ContactName; var adrlatd = data.AddrLatd; var adrlgtd = data.AddrLgtd; var CustomerStatus = data.StatusId; var RouteScheduleItemId = data.RouteScheduleItemId; var objCustomer = { "title": contactName, "address": addressName, "lat": adrlatd, "lng": adrlgtd, "description": contactName, "type": CustomerStatus, "ContactId": contactId, "RouteScheduleItemId": RouteScheduleItemId }; markers.push(objCustomer); } var mapOptions = { center: new google.maps.LatLng(32.3917, 115.867), zoom: 4, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById("RouteMap"), mapOptions); var infoWindow = new google.maps.InfoWindow(); var lat_lng = new Array(); var latlngbounds = new google.maps.LatLngBounds(); var markerArr = []; for (var i = 0; i < markers.length; i++) { var dat = markers[i]; var myLatlng = new google.maps.LatLng(dat.lat, dat.lng); lat_lng.push(myLatlng); var icon = ""; switch (dat.type) { case 1: icon = "green"; break; case 2: icon = "red"; break; case 3: icon = "yellow"; break; } icon = "http://maps.google.com/mapfiles/ms/icons/" + icon + ".png"; var marker; marker = new google.maps.Marker({ position: myLatlng, map: map, title: dat.title, }); markerArr.push(marker); latlngbounds.extend(marker.position); (function (marker, dat) { google.maps.event.addListener(marker, "click", function (e) { infoWindow.setContent("" + "" + dat.title + ", " + dat.address + "" + "" + "
" + "
" + "" + " " + " " + ""); infoWindow.open(map, marker); }); })(marker, dat); map.setCenter(latlngbounds.getCenter()); map.fitBounds(latlngbounds); } var path = new google.maps.MVCArray(); var service = new google.maps.DirectionsService(); var poly = new google.maps.Polyline({ map: map, strokeColor: '#4986E7' }); for (var i = 0; i < lat_lng.length; i++) { if ((i + 1) < lat_lng.length) { var src = lat_lng[i]; var des = lat_lng[i + 1]; path.push(src); poly.setPath(lat_lng); poly.setMap(map); } } } } }); }); } loadWidgets(customerid, uniqueid) { Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getWidgetbyuniqueid(uniqueid).then(function (response) { var linkwidgetid = response.result.WidgetId; Unibase.Platform.Widgets.Managers.WidgetManager.Instance().getWidget(linkwidgetid).then(function (res) { let ReplaceText = []; let split = res.result.Parameter.split(':'); ReplaceText.push({ Key: split[0], Value: (customerid).toString(), ExpOp: 1 }); let reportwidget = Unibase.Themes.Compact.Components.ReportWidgets.Default.Instance().getReportWidget(0, linkwidgetid, "", ReplaceText, null, true, Unibase.Themes.Providers.DetailHelper.installedAppId, true); }); }); } static Instance() { if (this.instance === undefined) { this.instance = new Routeschedule(); } return this.instance; } } Map.Routeschedule = Routeschedule; })(Map = Routes.Map || (Routes.Map = {})); })(Routes = Apps.Routes || (Apps.Routes = {})); })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {})); })(Bizgaze || (Bizgaze = {}));