Commit 1c76f555 by Adarsh K

live changes

parent 1772bb5a
......@@ -33,7 +33,7 @@
</div>
<li>Complaints & Feedback</li>
<li>
<span class="floatLeft">Logout</span>
<span class="floatLeft" (click)="authService.SignOut()">Logout</span>
<span class="floatRight version">Version 1.2.0.3</span>
<div class="clear"></div>
</li>
......
......@@ -7,6 +7,7 @@ import { AngularFirestore, AngularFirestoreDocument, AngularFirestoreCollection
import * as firebase from 'firebase';
import { ModalController } from '@ionic/angular';
import { DeliverypopPage } from './deliverypop/deliverypop.page';
import { AuthService } from './../config/auth.service';
@Component({
......@@ -21,7 +22,8 @@ export class AppComponent {
private statusBar: StatusBar,
private router: Router,
public afs: AngularFirestore,
public modalController: ModalController
public modalController: ModalController,
public authService: AuthService
) {
this.initializeApp();
this.orderState();
......
......@@ -176,9 +176,9 @@
<div class="footer_btn" *ngIf="cartService.carts && cartService.carts.length > 0" [hidden]="currentIndex != 1" (click)="next(2);">
PAY
</div>
<div class="footer_btn" [hidden]="currentIndex != 2" (click)="finishpop()">
<!-- <div class="footer_btn" [hidden]="currentIndex != 2" (click)="finishpop()">
FINISH
</div>
</div> -->
</div>
</ion-content>
<!-- <div class="loader">
......
......@@ -2,6 +2,7 @@ import { Component, OnInit } from '@angular/core';
import { Location } from '@angular/common';
import { trigger, transition, animate, style } from '@angular/animations';
import { Router, ActivatedRoute } from '@angular/router';
import { MenuController } from '@ionic/angular';
@Component({
selector: 'app-home',
templateUrl: './home.page.html',
......@@ -21,8 +22,8 @@ import { Router, ActivatedRoute } from '@angular/router';
export class HomePage implements OnInit {
isShow = false;
public lat: number = 51.678418;
public lng: number = 7.809007;
public lat = 51.678418;
public lng = 7.809007;
slideOpts = {
slidesPerView: 1.5
......@@ -31,10 +32,16 @@ export class HomePage implements OnInit {
constructor(
private router: Router,
private route: ActivatedRoute,
private location: Location
private location: Location,
public menuCtrl: MenuController
) { }
ngOnInit() {
this.menuCtrl.enable(true);
}
ionViewWillEnter() {
this.menuCtrl.enable(true);
}
goToPage(path, data = null) {
......
......@@ -26,6 +26,7 @@ export class LandingPage implements OnInit {
this.service.get('landing').then((data) => {
if (data === true) {
const user = JSON.parse(localStorage.getItem('user'));
console.log(user);
if (user) {
this.goToPage('home');
} else {
......
import { Component, OnInit } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { AuthService } from './../../config/auth.service';
import { MenuController } from '@ionic/angular';
import { async } from 'q';
......@@ -14,12 +15,17 @@ export class LoginPage implements OnInit {
constructor(
private router: Router,
private route: ActivatedRoute,
public authService: AuthService
public authService: AuthService,
public menuCtrl: MenuController
) { }
ngOnInit() {
}
ionViewWillEnter() {
this.menuCtrl.enable(false);
}
goToPage(path, data = null) {
this.router.navigateByUrl(path, { queryParams: data });
document.body.scrollTop = document.documentElement.scrollTop = 0;
......
......@@ -21,6 +21,9 @@ export class MyorderPage implements OnInit {
) { }
ngOnInit() {
this.myorder.orderState().subscribe((data) => {
console.log(data);
});
}
async finishpop(data: any) {
......
......@@ -23,7 +23,7 @@ const routes: Routes = [
IonicModule,
AgmDirectionModule,
AgmCoreModule.forRoot({
apiKey: 'AIzaSyAK3Av2e2dunqInYEaAVJPmzK5HTi0gubw'
apiKey: 'AIzaSyBn6hOlr6YHcZAmbptlsmbhvH5iQllWflE'
}),
RouterModule.forChild(routes)
],
......
......@@ -23,9 +23,11 @@ export class AuthService {
if (user) {
this.userData = user;
this.service.set('user', JSON.stringify(this.userData));
this.router.navigateByUrl('home');
} else {
this.service.set('user', null);
JSON.parse(localStorage.getItem('user'));
this.router.navigateByUrl('login');
}
});
}
......@@ -33,7 +35,6 @@ export class AuthService {
public async SignIn(email: string, password: string) {
return this.afAuth.auth.signInWithEmailAndPassword(email, password).then((result) => {
console.log('success');
this.router.navigateByUrl('home');
document.body.scrollTop = document.documentElement.scrollTop = 0;
this.SetUserData(result.user);
}).catch((error) => {
......
......@@ -3,6 +3,8 @@ import { AngularFirestore, AngularFirestoreDocument, AngularFirestoreCollection
import { Myorder } from './services/myorder';
import { ServiceService } from './../config/service.service';
import * as firebase from 'firebase';
import { take } from 'rxjs/operators';
import { Observable, of } from 'rxjs';
@Injectable({
providedIn: 'root'
......@@ -23,6 +25,7 @@ export class MyordersService {
this.custId = data.uid;
if (this.custId !== undefined) {
this.orderList(this.custId);
// this.orderState();
}
} else {
this.custId = 'WwHnLICVY2dvZGUHuKqasiTB91a2';
......@@ -30,13 +33,17 @@ export class MyordersService {
});
}
public async orderList(custId) {
public async orgorderList(custId) {
console.log('called');
console.log(custId);
const This = this;
const orderRef: AngularFirestoreCollection<any> = this.afs.collection('orders', ref => ref.where('custId', '==', custId)
.orderBy('bookDate', 'desc'));
orderRef.valueChanges().subscribe((value) => {
orderRef.stateChanges().subscribe((value) => {
console.log(value[0].payload.doc.data());
});
orderRef.valueChanges().pipe(take(1)).subscribe((value) => {
console.log(value);
this.orders = [];
const res = value;
......@@ -65,7 +72,139 @@ export class MyordersService {
} else {
alert('No Orders Found');
}
this.orderState();
});
}
public async orderList(custId) {
console.log('called');
console.log(custId);
const This = this;
this.orders = [];
const orderRef: AngularFirestoreCollection<any> = this.afs.collection('orders', ref => ref.where('custId', '==', custId)
.orderBy('bookDate', 'desc'));
orderRef.stateChanges().subscribe((value) => {
console.log(value);
const res = value;
console.log(res);
if (res.length > 0) {
res.forEach((items) => {
const item = items.payload.doc.data();
console.log(item);
const orderId = item.orderId;
const order: Myorder = {
prodName: item.prodName,
color: item.color,
image: item.image,
amount: item.amount,
qty: item.qty,
status: item.status,
orderStatus: item.orderStatus,
bookDate: item.bookDate,
deliveryLocation: item.deliveryLocation,
pickupLocation: item.pickupLocation,
riderName: 'John',
orderId: item.orderId,
size: item.size,
time: '60'
};
if (items.type === 'added') {
this.orders.push(order);
} else {
console.log(orderId);
const index = this.orders.findIndex(obj => obj.orderId === orderId);
if (index > 0) {
this.orders[index] = order;
}
}
});
console.log(this.orders);
}
});
}
public orderState(): Observable<Myorder[]> {
console.log('called');
const custId = 'WwHnLICVY2dvZGUHuKqasiTB91a2';
this.orders = [];
firebase.firestore().collection('orders').where('custId', '==', custId)
.onSnapshot((snapData) => {
snapData.docChanges().forEach((change) => {
console.log(change.type);
if (change.type === 'modified') {
const item = change.doc.data();
console.log(item);
const orderId = item.orderId;
const order: Myorder = {
prodName: item.prodName,
color: item.color,
image: item.image,
amount: item.amount,
qty: item.qty,
status: item.status,
orderStatus: item.orderStatus,
bookDate: item.bookDate,
deliveryLocation: item.deliveryLocation,
pickupLocation: item.pickupLocation,
riderName: 'John',
orderId: item.orderId,
size: item.size,
time: '60'
};
const count = this.orders.length;
for (let index = 0; index < count; index++) {
if (this.orders[index].orderId === orderId) {
console.log(index);
this.orders[index] = order;
console.log(this.orders);
break;
}
}
} else if (change.type === 'added') {
const item = change.doc.data();
const order: Myorder = {
prodName: item.prodName,
color: item.color,
image: item.image,
amount: item.amount,
qty: item.qty,
status: item.status,
orderStatus: item.orderStatus,
bookDate: item.bookDate,
deliveryLocation: item.deliveryLocation,
pickupLocation: item.pickupLocation,
riderName: 'John',
orderId: item.orderId,
size: item.size,
time: '60'
};
this.orders.push(order);
} else {
//
}
});
});
/*
.onSnapshot(function(snapshot) {
snapshot.docChanges().forEach(function(change) {
if (change.type === "added") {
console.log("New city: ", change.doc.data());
}
if (change.type === "modified") {
console.log("Modified city: ", change.doc.data());
}
if (change.type === "removed") {
console.log("Removed city: ", change.doc.data());
}
});
}); */
return of(this.orders);
}
public async trackOrder(order) {
......
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