From 180482ce474399ed1a7b724a452d582eb2fc3829 Mon Sep 17 00:00:00 2001 From: Le Deng Date: Sat, 11 Mar 2017 10:07:35 -0500 Subject: [PATCH] latest --- bookstore-api/.idea/workspace.xml | 159 ++++++++++-------- .../com/bookstore/domain/BillingAddress.java | 3 + .../main/java/com/bookstore/domain/Order.java | 3 - .../java/com/bookstore/domain/Payment.java | 3 + .../com/bookstore/domain/ShippingAddress.java | 3 + .../com/bookstore/resource/OrderResource.java | 33 ++++ .../com/bookstore/domain/BillingAddress.class | Bin 2849 -> 2901 bytes .../classes/com/bookstore/domain/Order.class | Bin 4849 -> 4837 bytes .../com/bookstore/domain/Payment.class | Bin 2630 -> 2682 bytes .../bookstore/domain/ShippingAddress.class | Bin 2873 -> 2925 bytes .../bookstore/resource/CheckoutResource.class | Bin 5408 -> 4774 bytes .../bookstore/resource/OrderResource.class | Bin 0 -> 1398 bytes store-front/src/app/app.module.ts | 5 +- .../my-profile/my-profile.component.html | 4 +- .../my-profile/my-profile.component.ts | 23 +++ .../src/app/services/order.service.spec.ts | 16 ++ store-front/src/app/services/order.service.ts | 19 +++ 17 files changed, 199 insertions(+), 72 deletions(-) create mode 100644 bookstore-api/src/main/java/com/bookstore/resource/OrderResource.java create mode 100644 bookstore-api/target/classes/com/bookstore/resource/OrderResource.class create mode 100644 store-front/src/app/services/order.service.spec.ts create mode 100644 store-front/src/app/services/order.service.ts diff --git a/bookstore-api/.idea/workspace.xml b/bookstore-api/.idea/workspace.xml index 0dee028..28b59f1 100644 --- a/bookstore-api/.idea/workspace.xml +++ b/bookstore-api/.idea/workspace.xml @@ -16,10 +16,10 @@ - + - + @@ -28,11 +28,33 @@ + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -58,11 +80,11 @@ - + - - + + @@ -71,8 +93,8 @@ - - + + @@ -81,8 +103,8 @@ - - + + @@ -93,8 +115,8 @@ @@ -120,10 +142,7 @@ @@ -984,12 +1007,12 @@ - + - @@ -1013,7 +1036,7 @@ - + @@ -1045,13 +1068,6 @@ - - - - - - - @@ -1067,13 +1083,6 @@ - - - - - - - @@ -1460,30 +1469,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -1500,17 +1485,9 @@ - - - - - - - - - + @@ -1518,5 +1495,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/bookstore-api/src/main/java/com/bookstore/domain/BillingAddress.java b/bookstore-api/src/main/java/com/bookstore/domain/BillingAddress.java index 48e1430..f6185c6 100644 --- a/bookstore-api/src/main/java/com/bookstore/domain/BillingAddress.java +++ b/bookstore-api/src/main/java/com/bookstore/domain/BillingAddress.java @@ -1,5 +1,7 @@ package com.bookstore.domain; +import com.fasterxml.jackson.annotation.JsonIgnore; + import javax.persistence.*; import java.io.Serializable; @@ -24,6 +26,7 @@ public class BillingAddress implements Serializable{ private String billingAddressZipcode; @OneToOne + @JsonIgnore private Order order; public Long getId() { diff --git a/bookstore-api/src/main/java/com/bookstore/domain/Order.java b/bookstore-api/src/main/java/com/bookstore/domain/Order.java index 43a4b98..e7642e6 100644 --- a/bookstore-api/src/main/java/com/bookstore/domain/Order.java +++ b/bookstore-api/src/main/java/com/bookstore/domain/Order.java @@ -31,15 +31,12 @@ public class Order implements Serializable { private List cartItemList; @OneToOne(cascade=CascadeType.ALL) - @JsonIgnore private ShippingAddress shippingAddress; @OneToOne(cascade=CascadeType.ALL) - @JsonIgnore private BillingAddress billingAddress; @OneToOne(cascade=CascadeType.ALL) - @JsonIgnore private Payment payment; @ManyToOne diff --git a/bookstore-api/src/main/java/com/bookstore/domain/Payment.java b/bookstore-api/src/main/java/com/bookstore/domain/Payment.java index c484208..812ee35 100644 --- a/bookstore-api/src/main/java/com/bookstore/domain/Payment.java +++ b/bookstore-api/src/main/java/com/bookstore/domain/Payment.java @@ -1,5 +1,7 @@ package com.bookstore.domain; +import com.fasterxml.jackson.annotation.JsonIgnore; + import javax.persistence.*; import java.io.Serializable; @@ -24,6 +26,7 @@ public class Payment implements Serializable { private boolean defaultPayment; @OneToOne + @JsonIgnore private Order order; public Long getId() { diff --git a/bookstore-api/src/main/java/com/bookstore/domain/ShippingAddress.java b/bookstore-api/src/main/java/com/bookstore/domain/ShippingAddress.java index c43cd5b..d5de4f0 100644 --- a/bookstore-api/src/main/java/com/bookstore/domain/ShippingAddress.java +++ b/bookstore-api/src/main/java/com/bookstore/domain/ShippingAddress.java @@ -1,5 +1,7 @@ package com.bookstore.domain; +import com.fasterxml.jackson.annotation.JsonIgnore; + import javax.persistence.*; import java.io.Serializable; @@ -24,6 +26,7 @@ public class ShippingAddress implements Serializable { private String shippingAddressZipcode; @OneToOne + @JsonIgnore private Order order; public Long getId() { diff --git a/bookstore-api/src/main/java/com/bookstore/resource/OrderResource.java b/bookstore-api/src/main/java/com/bookstore/resource/OrderResource.java new file mode 100644 index 0000000..021e5fd --- /dev/null +++ b/bookstore-api/src/main/java/com/bookstore/resource/OrderResource.java @@ -0,0 +1,33 @@ +package com.bookstore.resource; + +import com.bookstore.domain.Order; +import com.bookstore.domain.User; +import com.bookstore.service.UserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.security.Principal; +import java.util.List; + +/** + * Created by z00382545 on 3/11/17. + */ + +@RestController +@RequestMapping("/order") +public class OrderResource { + + @Autowired + private UserService userService; + + @RequestMapping("/getOrderList") + public List getOrderList( + Principal principal + ) { + User user = userService.findByUsername(principal.getName()); + List orderList = user.getOrderList(); + + return orderList; + } +} diff --git a/bookstore-api/target/classes/com/bookstore/domain/BillingAddress.class b/bookstore-api/target/classes/com/bookstore/domain/BillingAddress.class index aa83e2f1bc5bf69a037a1fa36af51ab17938b743..112b91f2fd3070ae91320dde4dd726bdb5546eef 100644 GIT binary patch literal 2901 zcmaKu|8i4B6vxk|&5wp4NSau%f`DjRY_CN?YoQuK!IaPlO*5l2I&+gOaZ7S<=iXa~ z`Z~UV&cHb1A3lID;vc>PYcAg4UpQAIh z&Eg4*28*XGc33o7e8=J$i|1L|%~C5%dxFk~GEnZIErU?`-d_EoAh9jzY|Zz=$n~PO zJ2;f-C;$HU_RaQh>w;3M2cyQm`-|%gT(9pme6PPD=;HH3FH%F#;Q_zKu z8Vr=zul9O@48t9FD6x0~d^ZZP4TI9OCf22l))Lll#XQ$k1hk^*1jsQLH6KX|plyWw zK^=7c9`w_G(363n#YWd3IvwAC8Ag5}ot{5*mFF~h7sQK}yfr=9@*%LjqOD)JNOkaP zIB@pe?#s~k9Cval&Nk-tz6amX&)idLEU`?}}Yba0d91c4&Xt}sj&Ys^z zskkT@%*Ttf(a#EZe8W!sVCoVOE8Uk-9VK+3vUK7u#zmA4N1MfpxyM`!FrD@{xvKdo zZf6upZd$S^Nq&a*Pc_b^|O zbP>ua2GXiv*CX)t2wFYjBznYQ^oaB55l0%k&BMzLtbL4M5o^c?Y&+)$uTX$7O8Rc$nF{F+j~WAmi(Rjcu5v<4S!yb0|T#?11~H&C3HhVWII~Ia#9NbHW_NMK z*YO2(#*Q=o;RE<0{^2`x{GOYgKelUnxiYU z$6}ww0gDEUuUQgE2g4+UjZA5M)I?oX~WbiIMo@V&vNpc_Z0UZh5{qe9gk%5Bf{BR4|G zP*7Ey|LmM_k}#59Pda;jI4xTao=HyzZY29UGmHvh#OuM?rS{0wK0A@HpWQxgHw9hq zs^L(1gYAAlkYRY}jwCiOfVZLm$8e}jTVh|z=w8bHMj~=uML;W?L4ceHQTI`#0MA_hFy)gT4#|EjD`o$m#n2k748o(&_snS9wm8PeHtBsaw;NZ65;1xyQ;=(Uzc@ z+G+;{sq5HR8_JW1r=zY6+Af}mtKs+X^e!3z>v(fE`a$8%ZrcfVrizMO*@2Aq&=S{c zs~2h;H$^raAC_z88FMYbbvoXp^z&2ECNH&scqty0iz#A<%aY(7)1u+1YC+QvTD1`9 zgXCoe!_nI znI-MV`^A=j8ua9@;_fR?zvMcP6hSvFt^E{}B|6(I(H(lfL}i*U(c83Gq9qpZuy~in zGK&>@uSB=_x3_3f(2BJ<)0r{P&c|7^`$G02LGyY``A$pENA(MTBFJ+E!xrO_igc4+ zr>pq=8m4fD-oOvYu&!Xut19%HST9Jr0pkn_qoAouatZ+wd> zkQozXP2ZgBkObk!;PQQ91(`KL)~z59>>#ry$Ob^}r&NTyfk8gCf@DpQ2Ud{J>>yba z=l_aL7oHT vyA%)}SzM926{Ki_d~XGLVh1UjAYFj;Qb2g7;-6A_swda39=<&Io)P^IpVkO$ diff --git a/bookstore-api/target/classes/com/bookstore/domain/Order.class b/bookstore-api/target/classes/com/bookstore/domain/Order.class index f82667b3cc1dfe87a43903ccb299dde3819b63ea..c14b5cf1d659bfec048194d67042f13804f9f699 100644 GIT binary patch delta 439 zcmaLTu}eZx6bA5feBOwB`rb>*xk0!?@X|tuG9yj1qK1S9g9eKRm4<=_1BV(~n$924 z+!hGULNo{c2SE*ujW+dpYK(@v{LXj3%ekNF_w>E*$cl3(zBAYVaE8%TiOMdmQN^VU zWnIcq-lZz7_lM)#k)}^ft2l)Q@ewUkks^c(5KBaVP0{qv6ve;O2{hHvu^|t!7Kifc zO-bIhW}XZ!NZ_TU>xP_HAHWykOX|^h$VK&9+?o=+tbPNps=vTD;alp{iI8{H8wqQ6 z;dS*}_@4S3yaC^bSNK4!<5|;$9gecGpPiZ7)RCD)Ql7nlkC7{w7BcNo#=+)N@Mrl% x@ArIbPBA;vw;uhF&*4cK3$msQzfi9SHSTG?A6RnAU?RFsasP|@JL#uG0;C3Ap0u`*ZtP~mw68Z%dL?sjyG$b|D(D?ol z(N-u#tTt4S}p9|+L*-qZNjyyPH;yO3Ycc;^vn4~F9MJj0u zD5WV)8BNnP)9mzBdKv@NLj_{W)`&MLM|qkcg5e{m!TVnY7XK;mliwnQ#WJ?K+e5Hf zn!|IRNFKvAPRU(lP)4*-X;PGtSDlc$_IccT3!a1L;YBW3%SMbU!b-M1i}+lIXH^AO zwHAu{ykOgE)Tl-Hl68SETYrJCz*nsg$9&$fz8*7b3%=d;@XtLk?b4pK!*O|vdAwu0 z4|MzJ>fO%4ZAjpb@_{`&bd5T~*|FWecYQvA$K}gSsZ)4E0&k7aZF}t*bpgAyJGe9X L^q%=jTK&N{6bEK- diff --git a/bookstore-api/target/classes/com/bookstore/domain/Payment.class b/bookstore-api/target/classes/com/bookstore/domain/Payment.class index 30371f87d92a12bb20f6fd34c6dc1c54a72ce4ee..d5ed5af37995348f9c3eec0b18132c1b19e7fe80 100644 GIT binary patch literal 2682 zcmaKuZC4vb6vyv`JP`t=g<>DD*jhEv(zR-9D=msVw822y5@JDH&#)Q7(qxyjyXhf* zCST~$9?$8EegMz$D|!6i%?isn;YIH3%-nnDH}k(U@Yg?Y-x1Ll^kadFR2`%tdcx)@ zn`dk`*wol;vZ=HAp3Uh+ z=BIam-}`;)`UOELr-7i#zI-jMmUNp|#dDi;f-XMmxS`WlbtiCkT57>{y-w) z+z+h-UL**WYb&eVK+rYA#3SV@Uxum?tqiAp5OTlSJ=Gs8)w%}?{^^CyS`|%*uAp-X z)Q!-0BG`g0{lCkIvItMZes1ksJQm2afB6^S~@k*RknEuK~a_6~|S*{naGY z;A8M?s4Ss1`te{o+;bq$6*FM33`)bC4G*8atLKz1dX2v zK9VAb@Sel@WP*5}Qw$@;VnVNBL?rtom|spxh@*grBXB!0oGz9BOV=Ck>C5So{VXrX zl4p4x{$PN|3Hdo9+0SD>k{3sbO`a-$9(Jmtyqzji~PID;xJ@JQ{L5Ya@DeoS(TEk$VU)7|xjrbcsgj48BM4 zw58}Qen3M1Jo?<5K>Hs07ZhEDbBbXjSMWwHkfRpVQ48>>1$)$jJZiCxIBfx0KEYTC zzcGyAAYgBxXQ35nGc$jZ_zfQ^x(S<&28U@D-^>jMx&>##_os9l_GIuMl=>Bu$>6KT z;LqsuICvi3Da2%FZoHw?@zTsnkRStkUVftI6)(?dz2g%2yKu(L3e7kgv@kSsi2;J8*870)G}(RVp|lA}XG)1eGpyVI0G==$D4WlNCQ6*O7)y-?YnYTBKi z%>3}`pF6)VUcV$L<+hPjeP%zmt&Z&-SykUVS{HPAzvn5pE1PcUwmNdt^L%A1Y#9og zi^5-6Cwxe#q~}Ph(nivf!SO(PGO(3wM<*jFA1bzw`e(-Dq(=WlB0jx&(5OKvn1U`0 zq1IL4Mz96P4%&OYZc7G&Cgh6~H|Rg|J#~!BR|FN}l_%1Md(3(6VCmTJv}Leocd_SG zTmESGI_k0A?@CW035Cq~0RjZgR~^4=wS51lQ2Bwh+J4t|J*&oE(9IjJT=QhZhk!eK z&-Gljfn!U{ONLk%OQVKT_3aYpj`jO-af?we;MuY>FZq&@mY{!c{&0lev$+|poa#Kg5H|%jUW};eFFr; eTF^mS0C7fu@EeK$+|W9HxvJ6Q%MafpqW=I}8mO26 diff --git a/bookstore-api/target/classes/com/bookstore/domain/ShippingAddress.class b/bookstore-api/target/classes/com/bookstore/domain/ShippingAddress.class index 6928be65a85f5960b86cb2fb8da7356d37005c3e..8d47fdf521cd93b95dbbfa108d77907402ae9bb9 100644 GIT binary patch literal 2925 zcmaKuTW=Fb6vxjv@g>HTOM=rt3guGjgeKciprwI;F@ZWYalwuykXmVD4`zbBYwd1; z^vhIy11eEf>O-Zz_Cru(~uL9IL$s5(W*XoJO% zENU#Cu-If#XYmt@r!1ajsgb2-mbL_)3}v9)UP}g{^1ZFy|s6K!)L_+n0h)A0Tf;0o3p)8m3T48LcEKu8#+=s0es7V{yPe9;M==Q~~VGyf4(C z?RVgj_JfWL1kKmle&5;l{nugS2h!>IeOGx-oweYex0J8$$)*nh^^*2}>7wGnyME8v zaoev$-*ep2**F{6SGyi!!#;CIc`8~HG*Mb;p^g>Ja-ya@xw+flmO<0S$#M<-Haf;d z-(VlVoQz&69Q9Q@apUk=AX&OAqbgeIbZOzhk;KiE4u{I=lBr{`Ik*}DM<+IODBS3T z=MXT-<;=k(vB!~VaQ=z$pqsVf=|-5fQD}|jlSW-)$+fQ=&oycyi{D6>gP-mqLFZAi zBfBgI>e%)|=_pe!T5%j`csGjU-ySQ*J%(4+;xSa@8~$$4mX8!S7W+>n&A~Xu zMA{VadIi5;fvZ=1ieB+Gdc_Cn72gzx%_GVecy|@QX}m*0AQ!N6unMf{#Xm{>j)xR2 zLT2>K<8%$r%nbwjik7enTGmd7oj+3Q1C$4yFIt_yrWJ%>=QUWTux1vo{Xwby)XYkt zO@o%x7l&4HdPWoH2_VY}AbcQPzFSt1NfTtn z3i7QTWYPq=36NU}AlwlQ@|_hVZGzmkg50))q)m{!09i`_;Z|gj@2wyi6QpbfS+#>? zOptYeJW2rJyTBlKtRPtvq-q7ZYX`}iAWs0YnE=9 Zke3M{JXi4t7d^z2>#-idJotVf`X4tOCCUH* literal 2873 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 DVns-> diff --git a/bookstore-api/target/classes/com/bookstore/resource/OrderResource.class b/bookstore-api/target/classes/com/bookstore/resource/OrderResource.class new file mode 100644 index 0000000000000000000000000000000000000000..4d8ffeb3c067fc946473d47bf672b6b1884e0346 GIT binary patch literal 1398 zcma)6TTc@~6#k|yU1^t6k&6h32x40<<6RO637VLg6fjhI@oC!*bzr+wXLlj}SDF|N zKKKLtQN}aVA{0yXVdv!BzH{H7zrOzf@C0iaI9MD+8uzm(pqNDoOBpO<#lflr&XA2m zp({ck%bH-AFV|F)SCu*nBc%l=ol)?2=SJ%clY4Ox$)?zsp{)91D+pBNMN$PJ!&+JC z1`k_W28{#lHN}b2N4zS$Amj&LjZoX%`{Tg3;z*rHE$RfD-jIQeHW`wI;yy#_rK(d( z!(|zWow!*Q`mION7)Hvf=K1@cmWJ;NQ_%-W;TJCzphc)+O%?3wy3l)Fj)J)j5m{MT zh7rS3p?v5adsJ{O)-r1IH&j4Pwmg5m*wMt1^tmx6=Rs4R)lxIAbfgkYa~Y;CB~@2V zPX@NB227dMI%(wpjy2v}ZM$_=@#-bpjs8(=k?Wf#P(?NZFN!tw@b&-K`%m2dBR>&U zUX?-p;Y3}CWgG-9p4KYe7AZi zYP3)jSF96*L#6J}VK9sqy1QjPE0MVw%5SbWXrCKo$Q@8?U$o6#1{RBV2YL~z*ncC8 z6NQ=V4Rc{B>BP=5JKuWD(O<-&zY0UbG>vG6xHQo$(F9TIC%rl1I8jD)p!5ywvsDk% zYm7mi&C~043~(JI#4(bNB59r51ePM%MCl6>OQ%ROoFbLL_VQN@?5unuRT2g+M--SQ zxEYLL*20!Lu3cCHA - + {{order.orderDate}} {{order.id}} {{order.orderTotal}} diff --git a/store-front/src/app/components/my-profile/my-profile.component.ts b/store-front/src/app/components/my-profile/my-profile.component.ts index 196aaf9..8e12dfb 100644 --- a/store-front/src/app/components/my-profile/my-profile.component.ts +++ b/store-front/src/app/components/my-profile/my-profile.component.ts @@ -5,10 +5,13 @@ import {LoginService} from "../../services/login.service"; import {UserService} from "../../services/user.service"; import {PaymentService} from "../../services/payment.service"; import {ShippingService} from "../../services/shipping.service"; +import {OrderService} from "../../services/order.service"; import {User} from '../../models/user'; import {UserPayment} from '../../models/user-payment'; import {UserBilling} from '../../models/user-billing'; import {UserShipping} from '../../models/user-shipping'; +import {Order} from '../../models/order'; + @Component({ selector: 'app-my-profile', @@ -53,11 +56,16 @@ export class MyProfileComponent implements OnInit { private defaultUserShippingId:number; private defaultShippingSet: boolean; + private orderList: Order[] = []; + private order:Order = new Order(); + private displayOrderDetail:boolean; + constructor ( private paymentService:PaymentService, private shippingService:ShippingService, private loginService: LoginService, private userService: UserService, + private orderService: OrderService, private router: Router ){ } @@ -136,6 +144,12 @@ export class MyProfileComponent implements OnInit { ); } + onDisplayOrder (order:Order) { + console.log(order); + this.order=order; + this.displayOrderDetail=true; + } + onNewPayment () { this.paymentService.newPayment(this.userPayment).subscribe( res => { @@ -263,6 +277,15 @@ export class MyProfileComponent implements OnInit { } ); + this.orderService.getOrderList().subscribe( + res => { + this.orderList = res.json(); + }, + error => { + console.log(error.text()); + } + ); + this.getCurrentUser(); for (let s in AppConst.usStates) { diff --git a/store-front/src/app/services/order.service.spec.ts b/store-front/src/app/services/order.service.spec.ts new file mode 100644 index 0000000..5c808c2 --- /dev/null +++ b/store-front/src/app/services/order.service.spec.ts @@ -0,0 +1,16 @@ +/* tslint:disable:no-unused-variable */ + +import { TestBed, async, inject } from '@angular/core/testing'; +import { OrderService } from './order.service'; + +describe('OrderService', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [OrderService] + }); + }); + + it('should ...', inject([OrderService], (service: OrderService) => { + expect(service).toBeTruthy(); + })); +}); diff --git a/store-front/src/app/services/order.service.ts b/store-front/src/app/services/order.service.ts new file mode 100644 index 0000000..e03b5c8 --- /dev/null +++ b/store-front/src/app/services/order.service.ts @@ -0,0 +1,19 @@ +import { Injectable } from '@angular/core'; +import {Headers, Http} from "@angular/http"; +import {AppConst} from '../constants/app-const'; +import {Order} from '../models/order'; + +@Injectable() +export class OrderService { + + constructor(private http: Http) { } + + getOrderList () { + let url = AppConst.serverPath+"/order/getOrderList"; + + let tokenHeader = new Headers ({ + 'x-auth-token' : localStorage.getItem("xAuthToken") + }); + return this.http.get(url, {headers : tokenHeader}); + } +}