Commit 631b88f0 by Alen Jose

july20

parent 8a43edf9
......@@ -220,7 +220,7 @@ export class HomePage {
if (this.markers[i]) {
this.markers[i].setMap(null);
this.markers[i] = null;
console.log(this.markers[i])
// console.log(this.markers[i])
}
}
directionsService.route({
......
......@@ -20,6 +20,10 @@ export class MapPage {
locSubs: any;
driver: any;
pushed: number = 0;
lastPos: any;
count: number = 0
markers: any;
tempLast: any;
constructor(public navCtrl: NavController, public navParams: NavParams, private data: dataService, private geolocation: Geolocation, private myservice: Myservice) {
}
......@@ -34,9 +38,17 @@ export class MapPage {
var locRef = firebase.database().ref().child('/drivers/');
locRef.orderByChild("id").equalTo(Number(This.driver.driverId)).on("value", function (snapshot) {
locRef.orderByChild("id").equalTo((This.driver.driverId)).on("value", function (snapshot) {
if (This.count > 1)
This.lastPos = res_arr
var res_arr = []
res_arr = (<any>Object).entries(snapshot.val()).map(e => Object.assign(e[1], { key: e[0] }));
if (This.count == 0)
This.lastPos = res_arr//inially last and current position is same
console.log(res_arr[0])
if (res_arr[0].started == true) {
......@@ -49,24 +61,40 @@ export class MapPage {
var directionsService = new google.maps.DirectionsService;
This.directionsDisplay.setMap(This.map);
This.directionsDisplay.setOptions({ suppressMarkers: true });
This.directionsDisplay.setOptions({ suppressMarkers: true });//hide default marker
var pickLoc = new google.maps.LatLng(This.bookData.pickLat, This.bookData.pickLng);
var driverLoc = new google.maps.LatLng(res_arr[0].lat, res_arr[0].lng);
var dimage = {
url: 'assets/img/map_label.png',
scaledSize: new google.maps.Size(50, 22),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(25, 12)
path: "M17.402,0H5.643C2.526,0,0,3.467,0,6.584v34.804c0,3.116,2.526,5.644,5.643,5.644h11.759c3.116,0,5.644-2.527,5.644-5.644 V6.584C23.044,3.467,20.518,0,17.402,0z M22.057,14.188v11.665l-2.729,0.351v-4.806L22.057,14.188z M20.625,10.773 c-1.016,3.9-2.219,8.51-2.219,8.51H4.638l-2.222-8.51C2.417,10.773,11.3,7.755,20.625,10.773z M3.748,21.713v4.492l-2.73-0.349 V14.502L3.748,21.713z M1.018,37.938V27.579l2.73,0.343v8.196L1.018,37.938z M2.575,40.882l2.218-3.336h13.771l2.219,3.336H2.575z M19.328,35.805v-7.872l2.729-0.355v10.048L19.328,35.805z", //svg image for car
fillColor: '#000',
fillOpacity: .6,
anchor: new google.maps.Point(10, 25),
strokeWeight: 0,
scale: 1,
rotation: 0
};
if (This.markers) {
This.markers.setMap(null);
}
var marker = new google.maps.Marker({
position: driverLoc,
map: This.map,
icon: dimage
});
This.markers = marker
var cur = driverLoc
var lastPosn = new google.maps.LatLng(This.lastPos[0].lat, This.lastPos[0].lng)
var heading = google.maps.geometry.spherical.computeHeading(lastPosn, cur)
dimage.rotation = heading;
marker.setIcon(dimage);
////
This.calculateAndDisplayRoute(directionsService, This.directionsDisplay, pickLoc, driverLoc);
}
......@@ -106,6 +134,7 @@ export class MapPage {
var bounds = response.routes[0].bounds;
This.map.fitBounds(bounds);
This.map.setCenter(bounds.getCenter());
This.count++
} else {
window.alert('Directions request failed due to ' + status);
}
......@@ -113,6 +142,7 @@ export class MapPage {
}
startRide() {
this.count = 0
this.temp = true
console.log('started')
var This = this;
......@@ -120,7 +150,13 @@ export class MapPage {
This.locSubs = this.geolocation.watchPosition()
.filter((p) => p.coords !== undefined) //Filter Out Errors
.subscribe(position => {
console.log(position.coords.longitude + ' ' + position.coords.latitude);
if (this.count > 0){
This.lastPos[0].lat = this.tempLast[0]
This.lastPos[0].lng = this.tempLast[1]
}
this.tempLast = [position.coords.latitude, position.coords.longitude]
var directionsService = new google.maps.DirectionsService;
......@@ -131,23 +167,37 @@ export class MapPage {
var myLoc = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
var dimage = {
url: 'assets/img/map_label.png',
scaledSize: new google.maps.Size(50, 22),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(25, 12)
path: "M17.402,0H5.643C2.526,0,0,3.467,0,6.584v34.804c0,3.116,2.526,5.644,5.643,5.644h11.759c3.116,0,5.644-2.527,5.644-5.644 V6.584C23.044,3.467,20.518,0,17.402,0z M22.057,14.188v11.665l-2.729,0.351v-4.806L22.057,14.188z M20.625,10.773 c-1.016,3.9-2.219,8.51-2.219,8.51H4.638l-2.222-8.51C2.417,10.773,11.3,7.755,20.625,10.773z M3.748,21.713v4.492l-2.73-0.349 V14.502L3.748,21.713z M1.018,37.938V27.579l2.73,0.343v8.196L1.018,37.938z M2.575,40.882l2.218-3.336h13.771l2.219,3.336H2.575z M19.328,35.805v-7.872l2.729-0.355v10.048L19.328,35.805z", //svg image for car
fillColor: '#000',
fillOpacity: .6,
anchor: new google.maps.Point(10, 25),
strokeWeight: 0,
scale: 1,
rotation: 0
};
if (This.markers) {
This.markers.setMap(null);
}
var marker = new google.maps.Marker({
position: myLoc,
map: This.map,
icon: dimage
});
console.log(marker)
This.markers = marker
var cur = new google.maps.LatLng(position.coords.latitude, position.coords.longitude)
var lastPosn = new google.maps.LatLng(This.lastPos[0].lat, This.lastPos[0].lng)
var heading = google.maps.geometry.spherical.computeHeading(lastPosn, cur)
dimage.rotation = heading;
marker.setIcon(dimage);
// if (google.maps.geometry.spherical.computeDistanceBetween(myLoc, destLoc) < 50){
var locRef = firebase.database().ref().child('/drivers/');
locRef.orderByChild("id").equalTo(Number(This.driver.driverId)).on("value", function (snapshot) {
locRef.orderByChild("id").equalTo((This.driver.driverId)).on("value", function (snapshot) {
var res_arr = []
res_arr = (<any>Object).entries(snapshot.val()).map(e => Object.assign(e[1], { key: e[0] }));
console.log(res_arr[0])
......
......@@ -21,7 +21,7 @@ export class RidedetailPage {
count: number = 0;
loader: any;
driver: any;
bkid: any;
bkid: any =38;
drivers = []
constructor(public navCtrl: NavController, public navParams: NavParams, private data: dataService, private zone: NgZone, private myservice: Myservice, private storage: Storage, public platform: Platform, public loadingCtrl: LoadingController, private alertCtrl: AlertController) {
......@@ -101,25 +101,25 @@ export class RidedetailPage {
This.myservice.show_alert('', 'No drivers found')
}
else {
var bdata = { 'book_date': This.book.date, 'drop_area': This.book.dropArea, 'pickup_area': This.book.pickArea, 'taxi_type': This.book.carDetails.car_type, 'amount': '', 'km': '', 'promocode': This.book.promocode, 'token': This.local.token, 'userid': This.local.id, 'type': 'now', 'drivers': [], 'discount': This.book.discount ? This.book.discount : 0, 'pickup_latlng': this.book.pickLat + ',' + this.book.pickLng, 'drop_latlng': this.book.dropLat + ',' + this.book.dropLng }
// var bdata = { 'book_date': This.book.date, 'drop_area': This.book.dropArea, 'pickup_area': This.book.pickArea, 'taxi_type': This.book.carDetails.car_type, 'amount': '', 'km': '', 'promocode': This.book.promocode, 'token': This.local.token, 'userid': This.local.id, 'type': 'now', 'drivers': [], 'discount': This.book.discount ? This.book.discount : 0, 'pickup_latlng': this.book.pickLat + ',' + this.book.pickLng, 'drop_latlng': this.book.dropLat + ',' + this.book.dropLng }
bdata.drivers = This.drivers;
// bdata.drivers = This.drivers;
console.log(bdata)
// console.log(bdata)
This.myservice.load_post(bdata, 'book_cab').subscribe(response => {
if (response.status == 'success') {
This.bkid = response.data
This.book.bookingId = This.bkid
This.data.setbookingData(This.book);
// This.myservice.load_post(bdata, 'book_cab').subscribe(response => {
// if (response.status == 'success') {
// This.bkid = response.data
// This.book.bookingId = This.bkid
// This.data.setbookingData(This.book);
This.checkResp();
}
else {
This.myservice.show_alert('Failed', 'Please try again')
This.navCtrl.pop()
}
})
// }
// else {
// This.myservice.show_alert('Failed', 'Please try again')
// This.navCtrl.pop()
// }
// })
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment