diff --git a/bookstore-api/.idea/workspace.xml b/bookstore-api/.idea/workspace.xml index dd3f990..ad8ff7a 100644 --- a/bookstore-api/.idea/workspace.xml +++ b/bookstore-api/.idea/workspace.xml @@ -235,8 +235,8 @@ - - + + @@ -311,8 +311,8 @@ @@ -1112,12 +1112,12 @@ - + - @@ -1141,7 +1141,7 @@ - + @@ -1628,8 +1628,8 @@ - - + + diff --git a/bookstore-api/src/main/java/com/bookstore/resource/ShoppingCartResource.java b/bookstore-api/src/main/java/com/bookstore/resource/ShoppingCartResource.java index f75d050..9cbc029 100644 --- a/bookstore-api/src/main/java/com/bookstore/resource/ShoppingCartResource.java +++ b/bookstore-api/src/main/java/com/bookstore/resource/ShoppingCartResource.java @@ -2,9 +2,11 @@ package com.bookstore.resource; import com.bookstore.domain.Book; import com.bookstore.domain.CartItem; +import com.bookstore.domain.ShoppingCart; import com.bookstore.domain.User; import com.bookstore.service.BookService; import com.bookstore.service.CartItemService; +import com.bookstore.service.ShoppingCartService; import com.bookstore.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; @@ -17,6 +19,7 @@ import org.springframework.web.bind.annotation.RestController; import java.security.Principal; import java.util.HashMap; +import java.util.List; /** * Created by z00382545 on 3/10/17. @@ -35,6 +38,9 @@ public class ShoppingCartResource { @Autowired private CartItemService cartItemService; + @Autowired + private ShoppingCartService shoppingCartService; + @RequestMapping("/add") public ResponseEntity addItem( @RequestBody HashMap mapper, @@ -55,4 +61,17 @@ public class ShoppingCartResource { return new ResponseEntity("Book Added Successfully!", HttpStatus.OK); } + + @RequestMapping("/getCart") + public List shoppingCart(Principal principal) { + User user = userService.findByUsername(principal.getName()); + ShoppingCart shoppingCart = user.getShoppingCart(); + + List cartItemList = cartItemService.findByShoppingCart(shoppingCart); + + shoppingCartService.updateShoppingCart(shoppingCart); + + + return cartItemList; + } } diff --git a/bookstore-api/target/classes/com/bookstore/resource/ShoppingCartResource.class b/bookstore-api/target/classes/com/bookstore/resource/ShoppingCartResource.class index a9789b9..447af1e 100644 Binary files a/bookstore-api/target/classes/com/bookstore/resource/ShoppingCartResource.class and b/bookstore-api/target/classes/com/bookstore/resource/ShoppingCartResource.class differ diff --git a/store-front/src/app/components/book-detail/book-detail.component.ts b/store-front/src/app/components/book-detail/book-detail.component.ts index d0d1c62..85b2c3d 100644 --- a/store-front/src/app/components/book-detail/book-detail.component.ts +++ b/store-front/src/app/components/book-detail/book-detail.component.ts @@ -54,6 +54,7 @@ export class BookDetailComponent implements OnInit { } ngOnInit() { + this.qty=1; } } diff --git a/store-front/src/app/components/shopping-cart/shopping-cart.component.html b/store-front/src/app/components/shopping-cart/shopping-cart.component.html index 8439667..2d86d80 100644 --- a/store-front/src/app/components/shopping-cart/shopping-cart.component.html +++ b/store-front/src/app/components/shopping-cart/shopping-cart.component.html @@ -39,7 +39,7 @@

- +
- +
diff --git a/store-front/src/app/components/shopping-cart/shopping-cart.component.ts b/store-front/src/app/components/shopping-cart/shopping-cart.component.ts index 86ff6dc..409ccce 100644 --- a/store-front/src/app/components/shopping-cart/shopping-cart.component.ts +++ b/store-front/src/app/components/shopping-cart/shopping-cart.component.ts @@ -2,6 +2,8 @@ import { Component, OnInit } from '@angular/core'; import {AppConst} from '../../constants/app-const'; import {Book} from '../../models/book'; import {Router} from "@angular/router"; +import {CartService} from '../../services/cart.service'; +import {CartItem} from '../../models/cart-item'; @Component({ @@ -12,8 +14,9 @@ import {Router} from "@angular/router"; export class ShoppingCartComponent implements OnInit { private serverPath = AppConst.serverPath; private selectedBook: Book; + private cartItemList: CartItem[] = []; - constructor(private router:Router) { } + constructor(private router:Router, private cartService: CartService) { } onSelect(book:Book) { this.selectedBook = book; @@ -21,6 +24,15 @@ export class ShoppingCartComponent implements OnInit { } ngOnInit() { + this.cartService.getCart().subscribe( + res=>{ + console.log(res.json()); + this.cartItemList = res.json(); + }, + error=>{ + console.log(error.text()); + } + ); } } diff --git a/store-front/src/app/services/cart.service.ts b/store-front/src/app/services/cart.service.ts index 3a12a2b..97ef934 100644 --- a/store-front/src/app/services/cart.service.ts +++ b/store-front/src/app/services/cart.service.ts @@ -19,4 +19,13 @@ export class CartService { return this.http.post(url, cartItemInfo, {headers : tokenHeader}); } + getCart() { + let url = AppConst.serverPath+"/cart/getCart"; + + let tokenHeader = new Headers ({ + 'x-auth-token' : localStorage.getItem("xAuthToken") + }); + return this.http.get(url, {headers : tokenHeader}); + } + }