|
|
- using GMCabsDriverAssistant.Models;
- using GMCabsDriverAssistant.Utils;
- using GMCabsDriverAssistant.ViewModels;
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Threading.Tasks;
- using Microsoft.Maui;
- using Microsoft.Maui.Controls;
- using GMCabsDriverAssistantSolution.ViewModels;
-
- namespace GMCabsDriverAssistant.Services
- {
- public class DispatchAppComponentService : BaseViewModel
- {
- #region Properties
- public static DispatchAppComponentService _instance = null;
- public static object chekLock = new object();
- public static string startTripButtonText = "START TRIP";
- public static string startTimeOrEndLocation = "";
- public static string timerSeconds = "00:00:00";
- public static bool meterTripStarted = false;
- public static bool visibleTrip = false;
- public static string startSuburb = "";
- public static bool isOkButtonVisible = false;
- public static bool isStartTripButtonVisible = true;
- public static bool isPlotButtonVisible = true;
- public static string pickUpDateTimeOrEndSuburb = "";
- public static bool isTripStarted = false;
- public static bool isTripEndeded = false;
- public static int seconds = 0;
- public static int autocloseOkSecond = 30;
- public static string bluetoothConnectionStatusText;
- public static string imageIcon = "avail_button.png";
- #endregion
-
- #region Constructor
- private DispatchAppComponentService()
- {
- }
- public static DispatchAppComponentService Instance
- {
- get
- {
- lock (chekLock)
- {
- if (_instance == null)
- _instance = new DispatchAppComponentService();
- return _instance;
- }
- }
-
- }
- #endregion
-
- #region Methods
- public static void ManageDriverTrip(bool fromMeter)
- {
- if (startTripButtonText.Equals("START TRIP"))
- {
- startTimeOrEndLocation = "Start Time";
- startTrip(fromMeter);
- timerSeconds = "00:00:00";
- }
- else if (startTripButtonText.Equals("DROP OFF"))
- {
- startTimeOrEndLocation = "Ending At";
- endTrip(fromMeter);
- isOkButtonVisible = true;
- }
- }
- private static void startTrip(bool fromMeter)
- {
- meterTripStarted = true;
- imageIcon = "busy_button.png";
- visibleTrip = true;
- pickUpDateTimeOrEndSuburb = DateTime.Now.ToString("dd MMM hh:mm tt");
- startTripButtonText = "DROP OFF";
- Preferences.Set("MeterRunningStatus", "Running");
- }
- private static void endTrip(bool fromMeter)
- {
- meterTripStarted = true;
- imageIcon = "avail_button.png";
- isStartTripButtonVisible = false;
- Preferences.Set("MeterRunningStatus", "Stopped");
- }
- public async static Task<string> GetSuburbName(bool fromMeter, bool isStart)
- {
- int statusflags = 0;
- var token = Preferences.Get(SecureStorageData.Token,"");
- if (isStart)
- statusflags = Constant.DRIVER_STATUS_ON_TRIP;
- else
- statusflags = Constant.DRIVER_STATUS_AVAILABLE;
-
- GMCabsDriverService gmCabsDriverService = new GMCabsDriverService();
- var suburbName = await gmCabsDriverService.UpdateBookingStatus(token, statusflags, fromMeter);
- return suburbName;
- }
- public static void StartTrip(int seconds)
- {
- ++seconds;
- timerSeconds = (seconds / 3600 <= 9 ? "0" + seconds / 3600 : "" + seconds / 3600) + ":" + ((seconds % 3600) / 60 <= 9 ? "0" + (seconds % 3600) / 60 : "" + (seconds % 3600) / 60) + ":" + (seconds % 60 <= 9 ? "0" + seconds % 60 : "" + seconds % 60);
- }
- public static void OnOkClick()
- {
- visibleTrip = false;
- startTripButtonText = "START TRIP";
- isStartTripButtonVisible = true;
- isOkButtonVisible = false;
- Preferences.Set("MeterRunningStatus", "");
- }
- public static string MeterStartTrip()
- {
- startTripButtonText = "START TRIP";
- return startTripButtonText;
- }
- public static string MeterEndTrip()
- {
- startTripButtonText = "DROP OFF";
- return startTripButtonText;
- }
- public static void SetToInitialProperties()
- {
- startTripButtonText = "START TRIP";
- startTimeOrEndLocation = "";
- timerSeconds = "00:00:00";
- meterTripStarted = false;
- imageIcon = "avail_button.png";
- visibleTrip = false;
- startSuburb = "";
- isOkButtonVisible = false;
- isStartTripButtonVisible = true;
- pickUpDateTimeOrEndSuburb = "";
- isTripStarted = false;
- isTripEndeded = false;
- seconds = 0;
- autocloseOkSecond = 30;
- }
- #endregion
-
- }
- }
|