123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431 |
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
- return new (P || (P = Promise))(function (resolve, reject) {
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
- step((generator = generator.apply(thisArg, _arguments || [])).next());
- });
- };
- var Bizgaze;
- (function (Bizgaze) {
- let Apps;
- (function (Apps) {
- let Routes;
- (function (Routes) {
- let Components;
- (function (Components) {
- class savegpstracking extends Unibase.Platform.Core.BaseComponent {
- constructor() {
- super(...arguments);
- this.latid = 0;
- this.lngid = 0;
- this.isenable = false;
- this.Addrlatd = 0;
- this.Addrlgtd = 0;
- this.contactaddressid = 0;
- this.tripid = 0;
- }
- cssFiles() {
- return [];
- }
- jsFiles() {
- return [];
- }
- html(id, containerid) {
- let html = ``;
- return html;
- }
- load(id, containerid, callback) {
- }
- savegpstrackingtrip(containerid) {
- this.widgetContainerId = containerid;
- const instance = this;
- const containerEl = $(`#${containerid}`);
- let isTripEnabled = false;
- containerEl.find('.reach-btn').addClass('d-sm-none');
- containerEl.find('.starttrip-btn').click(function () {
- Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId("Bizgazecrm_Create_MeterReading_Start_Trips").then(function (res) {
- var formid = res.result.FormId;
- const onSuccessObj = {
- CallBack: function () {
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- },
- Parameters: null,
- };
- var formviewerObj = {
- FormId: formid,
- AppConfigurationId: 0,
- Pk_Value: 0,
- PortletWidgetId: 0,
- OnSuccess: onSuccessObj,
- OnFail: null,
- OnLoad: null,
- };
- Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
- });
- });
- containerEl.find('.end-btn').click(function () {
- var ActiveId = 0;
- $(`#layout_list_container_${containerid} .gps-tracking-list`).each(function () {
- ActiveId = +$(this).find("#hf_activeid").val();
- });
- if (ActiveId != 0) {
- bootbox.alert({ message: 'Complete the ongoing Route before you end the Trip.', closeButton: false });
- }
- else {
- Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId("BizgazeCrm_MeterReading_End_Trips").then(function (res) {
- var formid = res.result.FormId;
- const tripGroupId = +containerEl.find('#hf_tripgroupid').val();
- var onSuccessObj = {
- CallBack: function () {
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- },
- Parameters: null,
- };
- const onloadObj = {
- CallBack: function () {
- var startreading = containerEl.find('hf_startreading').val();
- +$(".div_startreading").val(startreading);
- },
- Parameters: null,
- };
- var formviewerObj = {
- FormId: formid,
- AppConfigurationId: 0,
- Pk_Value: tripGroupId,
- PortletWidgetId: 0,
- OnSuccess: onSuccessObj,
- OnFail: null,
- OnLoad: onloadObj,
- };
- Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
- });
- }
- });
- containerEl.find('.customer-btn').click(function () {
- instance.navigationHelper.showLoading();
- Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId("Bizgaze_Platform_Crm_CreateCustomer_Duplicate2").then(function (res) {
- var formid = res.result.FormId;
- const onloadObj = {
- CallBack: function () {
- instance.navigationHelper.hideLoading();
- const containerEl = $(`#${containerid}`);
- const listEl = $(this).closest('.gps-tracking-list');
- var tripgroupid = +containerEl.find('#hf_tripgroupid').val();
- $(".hdn_refid").val(tripgroupid);
- },
- Parameters: null,
- };
- var formviewerObj = {
- FormId: formid,
- AppConfigurationId: 0,
- Pk_Value: 0,
- PortletWidgetId: 0,
- OnSuccess: null,
- OnFail: null,
- OnLoad: onloadObj,
- };
- Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
- });
- });
- $(`#layout_list_container_${containerid} .gps-tracking-list`).each(function () {
- const tripid = +$(this).find('#hf_tripid').val();
- const tripstatusid = +$(this).find('#hf_tripstatusid').val();
- const routeid = +$(this).find('#hf_routeid').val();
- const tripgroupid = +$(this).find('#hf_tripgroupid').val();
- const latid = +$(this).find('#hf_latid').val();
- const lngid = +$(this).find('#hf_lngid').val();
- const Addrlatd = +$(this).find("#hf_addrlatd").val();
- const Addrlgtd = +$(this).find("#hf_addrlgtd").val();
- const ActiveId = +$(this).find("#hf_activeid").val();
- if (routeid) {
- $(this).find('.icon-route').removeClass('d-none');
- }
- if (tripgroupid) {
- containerEl.find('.starttrip-btn').addClass('d-none');
- containerEl.find('.end-btn').removeClass('d-none');
- containerEl.find('.customer-btn').removeClass('d-none');
- }
- else if (tripgroupid == 0) {
- isTripEnabled = true;
- containerEl.find('.customer-btn').addClass('d-none');
- }
- if (tripid) {
- $(this).find('.start-btn').addClass('d-none');
- $(this).find('.nav-btn,.reach-btn,.undo-btn').removeClass('d-none');
- $(this).find('.txt-task').addClass('d-none');
- }
- if (tripstatusid == 1) {
- isTripEnabled = true;
- }
- if (tripstatusid == 2) {
- isTripEnabled = true;
- $(this).find('.order-btn,.estimate-btn,.receipt-btn,.complete-btn,.cancel-btn,.create-btn').removeClass('d-none');
- $(this).find('.nav-btn,.reach-btn,.undo-btn').addClass('d-none');
- }
- if (tripstatusid == 3) {
- $(this).find('.end-btn,.cancel-btn,.order-btn,.estimate-btn,.receipt-btn,.complete-btn,.undo-btn,.nav-btn,.reach-btn,.create-btn').addClass('d-none');
- $(this).find('.cancelled-btn').removeClass('d-none');
- $(this).find('.start-btn').addClass('d-none trip-cancelled');
- }
- if (tripstatusid == 4) {
- $(this).find('.start-btn').addClass('d-none trip-completed');
- $(this).find('.end-btn,.cancel-btn,.order-btn,.estimate-btn,.receipt-btn,.complete-btn,.undo-btn,.nav-btn,.reach-btn,.create-btn').addClass('d-none');
- $(this).find('.txt-task').removeClass('d-none');
- }
- if (Addrlatd == 0 && Addrlgtd == 0) {
- $(this).find('.nav-btn').addClass('d-none');
- }
- if (ActiveId != 0) {
- isTripEnabled = true;
- }
- });
- const startBtns = $(`#layout_list_container_${containerid} .start-btn`);
- if (!isTripEnabled) {
- startBtns.not('.trip-completed,.trip-cancelled').removeClass('d-none');
- }
- else {
- startBtns.addClass('d-none');
- }
- this.fileCacheHelper.loadJsFiles(['apps/routes/managers/routemanager.js', 'platform/forms/managers/formmanager.js', 'platform/forms/components/formviewer/formviewer.js', 'tenants/themes/compact/components/details/details.js'], function () {
- containerEl.find('.config-btn').click(function () {
- const clickedEl = $(this);
- const listEl = $(this).closest('.gps-tracking-list');
- let tripstatusid = 0;
- let refstatusid = 0;
- const employeeid = +listEl.find('#hf_employeeid').val();
- const routeaddressid = +listEl.find('#hf_routeaddressid').val();
- const contactaddressid = +listEl.find('#hf_contactaddressid').val();
- const routeid = +listEl.find('#hf_routeid').val();
- const contactid = +listEl.find('#hf_contactid').val();
- const routeversionguid = listEl.find('#hf_routeversionguid').val() || null;
- const formid = +listEl.find('#hf_formid').val() || 0;
- const endformid = +listEl.find('#hf_endformid').val();
- const tripid = +listEl.find('#hf_tripid').val();
- const latid = +listEl.find('#hf_latid').val();
- const lngid = +listEl.find('#hf_lngid').val();
- const organizationname = listEl.find('#hf_organizationname').val() && listEl.find('#hf_organizationname').val().toString();
- const tripgroupid = +listEl.find('#hf_tripgroupid').val();
- const Tripgroupstatusid = +listEl.find("#hf_tripgroupstatusid").val();
- const stageid = +listEl.find("#hf_stageid").val();
- const installedappid = +listEl.find("#hf_installedappid").val();
- const Addrlatd = +listEl.find("#hf_addrlatd").val();
- const Addrlgtd = +listEl.find("#hf_addrlgtd").val();
- if ($(this).hasClass('start-btn')) {
- tripstatusid = 1;
- refstatusid = 1;
- }
- if ($(this).hasClass('reach-btn')) {
- tripstatusid = 2;
- refstatusid = 2;
- }
- if ($(this).hasClass('complete-btn')) {
- tripstatusid = 4;
- refstatusid = 4;
- }
- const reqObj = { employeeid, routeaddressid, contactaddressid, routeid, contactid, routeversionguid, tripstatusid, tripgroupid, tripid, refstatusid };
- instance.reqObj = reqObj;
- instance.Addrlatd = Addrlatd;
- instance.Addrlgtd = Addrlgtd;
- instance.contactaddressid = contactaddressid;
- instance.tripid = tripid;
- if ($(this).hasClass('start-btn')) {
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- Bizgaze.Apps.Routes.Managers.RouteManager.Instance().savegpstrackingtrip(reqObj).then(function (res) {
- if (res.result) {
- const result = JSON.parse(res.result).Result;
- if (result) {
- MessageHelper.Instance().showSuccess(res.message, '');
- }
- }
- });
- }
- if ($(this).hasClass('reach-btn')) {
- if (instance.Addrlatd == 0 && instance.Addrlgtd == 0) {
- bootbox.confirm({
- size: "sm", message: "Please capture the Geo Location for this customer before reaching.", closeButton: false,
- callback: function (result) {
- if (result) {
- Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/crm/address/components/w_address.js", function () {
- const addressInstance = Bizgaze.Apps.Crm.Components.Address.Instance();
- addressInstance.navigationHelper.popup(0, "", addressInstance, function () {
- addressInstance.editmap(instance.contactaddressid);
- addressInstance.isEmployeeDashboardRoute = true;
- }, Unibase.Platform.Helpers.Size.Auto);
- });
- }
- }
- });
- }
- else {
- if (isMobileApp()) {
- instance.navigationHelper.showLoading();
- Unibase.Platform.Helpers.MobileHelper.Instance().getCurrentLocation(instance.tripid, 1);
- }
- }
- }
- if ($(this).hasClass('undo-btn')) {
- bootbox.confirm({
- size: "sm", message: "Are you sure,Cancel the Trip",
- callback: function (result) {
- if (result) {
- Bizgaze.Apps.Routes.Managers.RouteManager.Instance().savegpstrackingtrip(reqObj).then(function (res) {
- if (res.result) {
- MessageHelper.Instance().showSuccess(res.message, '');
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- }
- });
- }
- }
- });
- }
- if ($(this).hasClass('complete-btn')) {
- Bizgaze.Apps.Routes.Managers.RouteManager.Instance().savegpstrackingtrip(reqObj).then(function (res) {
- if (res.result) {
- const result = JSON.parse(res.result).Result;
- if (result) {
- MessageHelper.Instance().showSuccess(res.message, '');
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- }
- }
- });
- }
- if ($(this).hasClass('nav-btn')) {
- if (Addrlatd > 0 && Addrlgtd > 0) {
- Unibase.Platform.Helpers.MobileHelper.Instance().NavigateMap(Addrlatd.toString(), Addrlgtd.toString());
- }
- }
- if ($(this).is('.order-btn,.estimate-btn,.receipt-btn')) {
- var formuniqueid = "";
- var isReceipt = false;
- let isOrder = false;
- let isEstimate = false;
- if ($(this).hasClass('order-btn')) {
- isOrder = true;
- formuniqueid = "Bizgaze_Extension_Transact_SalesOrder_App_SalesOrder_CreateForm";
- }
- if ($(this).hasClass('estimate-btn')) {
- isEstimate = true;
- formuniqueid = "Bizgaze_Extension_Transact_SalesEstimate_App_SalesEstimate_CreateForm";
- }
- if ($(this).hasClass('receipt-btn')) {
- isReceipt = true;
- formuniqueid = "Bizgaze_Extension_Transact_Receipt_App_Receipt_CreateForm";
- }
- Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(formuniqueid).then(function (res) {
- var formid = res.result.FormId;
- var onload = {
- CallBack: function () {
- const containerEl = $("#" + instance.navigationHelper.getLastContainerId());
- containerEl.find(".hdn_refid").val(tripgroupid);
- let contact = new Option(organizationname, contactid.toString(), true);
- if (isReceipt) {
- containerEl.find(".txtAutoComplete_contactid").append(contact).val(contactid).trigger("change");
- return;
- }
- containerEl.find('#hf_pk_value').after(`<input type="hidden" id="hf_employeerouteorder" data-contactid='${contactid}' data-organization='${organizationname}'>`);
- if (isOrder) {
- Bizgaze.Apps.Transact.Controls.Order.Instance().loadOrderFromEmployeeRoute();
- }
- else if (isEstimate) {
- Bizgaze.Apps.Transact.Controls.Estimate.Instance().loadEstimateFromEmployeeRoute();
- }
- },
- Parameters: null,
- };
- const onSuccess = {
- CallBack: function () {
- },
- Parameters: null
- };
- var formviewerObj = {
- FormId: formid,
- AppConfigurationId: 0,
- Pk_Value: 0,
- PortletWidgetId: 0,
- OnSuccess: onSuccess,
- OnFail: null,
- OnLoad: onload,
- };
- Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
- });
- }
- });
- });
- }
- setgpscurrentlocation(latid, lngid, tripid) {
- const instance = this;
- if (latid > 0 && lngid > 0) {
- Bizgaze.Apps.Routes.Managers.RouteManager.Instance().setgpscurrentlocation(latid, lngid, tripid).then(function (res) {
- instance.navigationHelper.hideLoading();
- if (res.status === Unibase.Data.Status.Success) {
- Bizgaze.Apps.Routes.Components.savegpstracking.Instance().getDistanceFromLatLonInKm(instance.Addrlatd, instance.Addrlgtd, latid, lngid).then(function (met) {
- if (met >= 100) {
- bootbox.alert({ message: 'Your are out of 100 meters range from the Customer. Please reach the customer location & click on Reached button.', closeButton: false });
- }
- else {
- Bizgaze.Apps.Routes.Managers.RouteManager.Instance().savegpstrackingtrip(instance.reqObj).then(function (res) {
- if (res.status === Unibase.Data.Status.Success) {
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- }
- });
- }
- });
- }
- });
- }
- else {
- MessageHelper.Instance().showError('Please Try Again Capturing', 'div_ErrorMessage', instance.widgetContainerId);
- }
- }
- Canceltrip(containerid, tripid) {
- var TripId = +tripid;
- tripid = TripId;
- const refstatusid = 3;
- const tripstatusid = 3;
- const reqObj = { tripid, refstatusid, tripstatusid };
- Bizgaze.Apps.Routes.Managers.RouteManager.Instance().savegpstrackingtrip(reqObj).then(function (res) {
- if (res.result) {
- MessageHelper.Instance().showSuccess(res.message, '');
- var portletid = +$("#hf_DashboardPortletId").val();
- Unibase.Themes.Compact.Components.Nav.Instance().loadDashboard(portletid, '');
- }
- });
- }
- getDistanceFromLatLonInKm(lat1, lon1, lat2, lon2) {
- return __awaiter(this, void 0, void 0, function* () {
- const instance = this;
- var R = 6371;
- var dLat = this.deg2rad(lat2 - lat1);
- var dLon = this.deg2rad(lon2 - lon1);
- var a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
- Math.cos(this.deg2rad(lat1)) * Math.cos(this.deg2rad(lat2)) *
- Math.sin(dLon / 2) * Math.sin(dLon / 2);
- var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
- var km = R * c;
- var met = km * 1000;
- return met;
- });
- }
- deg2rad(deg) {
- return deg * (Math.PI / 180);
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new savegpstracking();
- }
- return this.instance;
- }
- }
- Components.savegpstracking = savegpstracking;
- })(Components = Routes.Components || (Routes.Components = {}));
- })(Routes = Apps.Routes || (Apps.Routes = {}));
- })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
- })(Bizgaze || (Bizgaze = {}));
|