/// <summary> /// Hàm này để đặt lại mọi trạng thái điều kiện /// </summary> private void ResetFlag() { //For Router driverGeocodeQuery = null; driverQuery = null; driverMapRoute = null; driverRoute = null; //For get Current Location driverFirstGeolocator = null; driverFirstGeoposition = null; driverMapOverlay = null; driverMapLayer = null; //For Router driverGeocodeQuery = null; driverQuery = null; driverMapRoute = null; driverRoute = null; //For get Current Location driverFirstGeolocator = null; driverFirstGeoposition = null; driverMapOverlay = null; driverMapLayer = null; //Rider Destination Icon Overlay driverDestinationIconOverlay = null; //For Update Current Location currentLat = 0; currentLng = 0; countForUpdateLocation = 0; //For trip newTrip = null; myTrip = null; //For Trip Complete startLatitude = 0; startLongitude = 0; endLatitude = 0; endLongitude = 0; isTrack = false; estimateCost = 0; totalFare = 0; //For Distance distanceKm = 0; //mySelectedVehicle = null; if (tNetTripData != null) { tNetTripData = null; } //for complete trip completeTrip = null; //For continous tracking on map fiveStepBeforeLat = 0; fiveStepBeforeLng = 0; fiveStepAfterLat = 0; fiveStepAfterLng = 0; //driverMapTrackerQuery = null; //driverMapTrackerRoute = null; isTrackingRoute = false; countTracking = 0; //driverMapTrakerLayer = null; //driverMapTrackerOverlay = null; isCalculateFare = false; realDistance = 0; realFare = 0; isFinishTrip = false; isTrakingStated = false; txt_DistanceKm.Text = "0.0 (km)"; txt_PricePerDistance.Text = "0.000 (đ)"; txt_TotalPrice.Text = "0.000 (đ)"; }
/// <summary> /// HÀM NÀY ĐƯỢC GỌI NGAY KHI CÓ THÔNG BÁO MỚI /// </summary> private async void ShowNotificationNewTrip() { //Chạy âm thanh thông báo và rung điện thoại TouchFeedback(); Alert_Trip_New(); //Hiển thị Grid thông tin Trip lên màn hình ShowAcceptRejectGrid(); //Đồng thời hiện thị Loading Grid screen ShowLoadingGridScreen(); var input = notificationReceivedString; newTrip = new DriverNewtripNotification(); try { newTrip = JsonConvert.DeserializeObject<DriverNewtripNotification>(input); //Tạo đối tượng NewTrip từ Json Input var addressString = await GoogleAPIFunctions.ConvertLatLngToAddress(newTrip.sLat, newTrip.sLng); var address = JsonConvert.DeserializeObject<GoogleAPIAddressObj>(addressString); if (newTrip != null) { ///1. Nạp thông tin lên grid ///2. tắt Loading grid screen ///3. Hiển thị vị trí khách hàng có yêu cầu //1. Nạp thông tin lên grid txt_RiderAddress.Text = address.results[0].formatted_address.ToString(); txt_RiderMobile.Text = newTrip.mobile; txt_RiderName.Text = newTrip.rName; //2. tắt Loading grid screen HideLoadingGridScreen(); //3. Hiển thị vị trí khách hàng có yêu cầu //(Nếu như có tọa độ điểm cuối) if (newTrip.eLat != 0 && newTrip.eLng != 0) { var myTempCoordinate = await GetCurrentPosition.GetGeoCoordinate(); GetRouteOnMap(myTempCoordinate, new GeoCoordinate(newTrip.sLat, newTrip.sLng)); //4. Căn giữa hai điểm đầu cuối //map_DriverMap.SetView(new GeoCoordinate((myTempCoordinate.Latitude + newTrip.sLat) / 2, (myTempCoordinate.Longitude + newTrip.sLng) / 2), 14, MapAnimationKind.Parabolic); double distance = await GoogleAPIFunctions.GetDistance(myTempCoordinate.Latitude, myTempCoordinate.Longitude, newTrip.eLat, newTrip.eLng); //Cái này để fit maproute lên màn hình if (5 > (double)distance) { map_DriverMap.SetView(new GeoCoordinate((myTempCoordinate.Latitude + newTrip.sLat) / 2, (myTempCoordinate.Longitude + newTrip.sLng) / 2), 16, MapAnimationKind.Parabolic); } else if (20 < (double)distance) { map_DriverMap.SetView(new GeoCoordinate((myTempCoordinate.Latitude + newTrip.sLat) / 2, (myTempCoordinate.Longitude + newTrip.sLng) / 2), 10, MapAnimationKind.Parabolic); } else { map_DriverMap.SetView(new GeoCoordinate((myTempCoordinate.Latitude + newTrip.sLat) / 2, (myTempCoordinate.Longitude + newTrip.sLng) / 2), 14, MapAnimationKind.Parabolic); } } } else { MessageBox.Show("(Mã lỗi 3309) " + ConstantVariable.errHasErrInProcess); } } catch (Exception) { MessageBox.Show("(Mã lỗi 309) " + ConstantVariable.errHasErrInProcess); } }
private void DeleteTrip() { Debug.WriteLine("Đã xóa dữ liệu chuyến đi"); myTrip = null; newTrip = null; }