From 303f6e93ec7c95ac18fa5e9bf7c6a0a343356b1c Mon Sep 17 00:00:00 2001 From: Le Deng Date: Fri, 10 Mar 2017 11:15:57 -0500 Subject: [PATCH] latest --- bookstore-api/.idea/workspace.xml | 125 ++++-------------- .../java/com/bookstore/domain/CartItem.java | 1 + .../resource/ShoppingCartResource.java | 14 +- .../com/bookstore/domain/CartItem.class | Bin 3039 -> 3043 bytes .../resource/ShoppingCartResource.class | Bin 3896 -> 4158 bytes .../shopping-cart.component.html | 4 +- .../shopping-cart/shopping-cart.component.ts | 18 ++- store-front/src/app/services/cart.service.ts | 13 +- 8 files changed, 67 insertions(+), 108 deletions(-) diff --git a/bookstore-api/.idea/workspace.xml b/bookstore-api/.idea/workspace.xml index ad8ff7a..3befd7b 100644 --- a/bookstore-api/.idea/workspace.xml +++ b/bookstore-api/.idea/workspace.xml @@ -26,90 +26,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -235,8 +151,8 @@ - - + + @@ -244,6 +160,16 @@ + + + + + + + + + + @@ -278,7 +204,6 @@ @@ -1112,12 +1038,12 @@ - + - @@ -1141,7 +1067,7 @@ - + @@ -1225,13 +1151,6 @@ - - - - - - - @@ -1626,10 +1545,18 @@ + + + + + + + + - - + + diff --git a/bookstore-api/src/main/java/com/bookstore/domain/CartItem.java b/bookstore-api/src/main/java/com/bookstore/domain/CartItem.java index 2a0f1d8..b207f5d 100644 --- a/bookstore-api/src/main/java/com/bookstore/domain/CartItem.java +++ b/bookstore-api/src/main/java/com/bookstore/domain/CartItem.java @@ -31,6 +31,7 @@ public class CartItem implements Serializable { @ManyToOne @JoinColumn(name = "shopping_cart_id") + @JsonIgnore private ShoppingCart shoppingCart; @ManyToOne 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 9cbc029..25c6e8d 100644 --- a/bookstore-api/src/main/java/com/bookstore/resource/ShoppingCartResource.java +++ b/bookstore-api/src/main/java/com/bookstore/resource/ShoppingCartResource.java @@ -62,8 +62,8 @@ public class ShoppingCartResource { } - @RequestMapping("/getCart") - public List shoppingCart(Principal principal) { + @RequestMapping("/getCartItemList") + public List getCartItemList(Principal principal) { User user = userService.findByUsername(principal.getName()); ShoppingCart shoppingCart = user.getShoppingCart(); @@ -74,4 +74,14 @@ public class ShoppingCartResource { return cartItemList; } + + @RequestMapping("/getShoppingCart") + public ShoppingCart getShoppingCart(Principal principal) { + User user = userService.findByUsername(principal.getName()); + ShoppingCart shoppingCart = user.getShoppingCart(); + + shoppingCartService.updateShoppingCart(shoppingCart); + + return shoppingCart; + } } diff --git a/bookstore-api/target/classes/com/bookstore/domain/CartItem.class b/bookstore-api/target/classes/com/bookstore/domain/CartItem.class index 99b6e973149bfbdcaa5c89bbc740e07af53c13ce..7b26ef7ed62c2f0c737cc21e2b79a0a017dea1f4 100644 GIT binary patch delta 188 zcmcaF{#blN4ZDai12cmb0|SFL10#b@F@r9HIs?Px9`-gyt;rWSMJH=;Xt3%rurlaR zUdt^$Ifp}^(P;7<4p&w)pqM#W>@SBWqZL?f45tRG9Z=jJEWUtKpV0{@Zp-Qh6mtiQ zX>#c^dV$sEacQvn0mc2n;+uftL16LkK=Cl3csN+xnp>YS3M}5ht-%@x6psgr8vy`z CJuc}0 delta 184 zcmaDXeqVe;4Z8q80~3Q50|SFL10#b@F@x^p3G8i*nv?UnMJMZUXt3%surlaP-pDOJ zxqw5T(Qxtt4p&xFpqLq0jFHom(GsjSfm4Ik7AS597GJ`t&*%sie+d+K1&X_Y#dW## w89l+`MO+%JzCdw5u=qBhcpzB(H&8qjC>{nDx98Spj0B3?vc>|%;(%gC0AE!s9smFU diff --git a/bookstore-api/target/classes/com/bookstore/resource/ShoppingCartResource.class b/bookstore-api/target/classes/com/bookstore/resource/ShoppingCartResource.class index 447af1e68db631bcc508b72e484d69922a818af2..b24e8e5b230f727001488a02615bc8d2500a31cc 100644 GIT binary patch delta 715 zcmZXR$xl;J7{!0@6};{1?H~pO6+}>(Y#J4ngy@FENJ1i71qBtVVrgZPR&cJO;*7&{ z7I7Yynz~RIB(6;SZ``<(_`Mbr4U2d0chC9G`OdxXbJ=ux`p3-IX`r6>7E9Rcrru&7 zU5aiu>pd(c>SaF%yd0#*IUcfz(d#U6F9{A?^wDoIz@TEt%@Gg7BrO7@obIDuMi_N- z%z=+voZzH`oN~C+Ue2J>inEGyAIH00K`F)*=Vi9yg5qN4musC-7>MaFRT08WjD+l?HtpLbIBl>h>k?VebIqfIFcHck(yG@|ll)tSpW|4>>n*}l1!BW}%!fcVRxf3JFPN~{x7q&*Y5!v%(uduuP#p#mJ7Z#bc zhdyNGwXzmu=~jX=s*nifVo)b|ZBE82LUIxV*05HrgQD0#gV+}0BNudTh+V?(7L`dy PHe!KPoznkL&OLtsC-{mO delta 516 zcmYk3$xake6o$X*0&Y=tXj&EyQ4nnv6BfNeH^h~RL!xnL6}3?)5gS@;n(h{y07sm0 zxTrYcgkfn&Z-@&Xz?a|^T)8x!A||@H!~gv!_xvY!v3a3s{KxO_i$EJ+eb#Zpqs`|e z8AGSX_FC3*D&RC-0o{a=Jmb^D*=XwxI7il}kA9yV=M4iM7i!5f=u=N2svZg`Qt~KA z_@d7+BN4e2d6xsOV6Gaj8Aj(Py4{3c#th@y+i=}*qw>q$<}^sDZ?I74&u4dr#j-=| z)_r!!TV)e9E2`QZlJ;kiv@_Ln)m|#wTeb@|BbhPbCbt|Cxo|j44TSk@DqSw>3qm7J z+CjL@9m9lhmwUnnHX7~=4|pg%;;~^;c*0Y|GvPT_qX<*HaA>ik{u(`O#(f P*s|N8x 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 2d86d80..1c892bb 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 @@ -66,9 +66,9 @@

Total Price ( items): {{cartItemNumber}} items): $

+ >{{shoppingCart.grandTotal}}
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 409ccce..7ec1c44 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 @@ -4,7 +4,7 @@ import {Book} from '../../models/book'; import {Router} from "@angular/router"; import {CartService} from '../../services/cart.service'; import {CartItem} from '../../models/cart-item'; - +import {ShoppingCart} from '../../models/shopping-cart'; @Component({ selector: 'app-shopping-cart', @@ -15,6 +15,8 @@ export class ShoppingCartComponent implements OnInit { private serverPath = AppConst.serverPath; private selectedBook: Book; private cartItemList: CartItem[] = []; + private cartItemNumber: number; + private shoppingCart: ShoppingCart = new ShoppingCart(); constructor(private router:Router, private cartService: CartService) { } @@ -24,15 +26,25 @@ export class ShoppingCartComponent implements OnInit { } ngOnInit() { - this.cartService.getCart().subscribe( + this.cartService.getCartItemList().subscribe( res=>{ - console.log(res.json()); this.cartItemList = res.json(); + this.cartItemNumber = this.cartItemList.length; }, error=>{ console.log(error.text()); } ); + + this.cartService.getShoppingCart().subscribe( + res=>{ + console.log(res.json()); + this.shoppingCart=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 97ef934..0aacfbc 100644 --- a/store-front/src/app/services/cart.service.ts +++ b/store-front/src/app/services/cart.service.ts @@ -19,8 +19,17 @@ export class CartService { return this.http.post(url, cartItemInfo, {headers : tokenHeader}); } - getCart() { - let url = AppConst.serverPath+"/cart/getCart"; + getCartItemList() { + let url = AppConst.serverPath+"/cart/getCartItemList"; + + let tokenHeader = new Headers ({ + 'x-auth-token' : localStorage.getItem("xAuthToken") + }); + return this.http.get(url, {headers : tokenHeader}); + } + + getShoppingCart() { + let url = AppConst.serverPath+"/cart/getShoppingCart"; let tokenHeader = new Headers ({ 'x-auth-token' : localStorage.getItem("xAuthToken")