할인 정책은 아직 정해지지 않았다. 정액 인지, 정률인지 아직 모른다. 언제든지 바뀔 수 있기에 할인 정책이라는 인터페이스를 만들고 구현체로 정액, 정률은 만든다. 그래서 언제든지 바꿔 낄 수 있도록 한다.
정액 할인 구현체 만들기
전달받은 member객체의 Grade값이 VIP면 할인가격을 리턴하고 그렇지 않으면 0을 리턴한다.
enum같은 경우 == 으로 비교한다.
Order 클래스 만들기
오더에는 memberId, itemName, itemPrice, discountPrice가 필요하다. 생성자와 getter,setter를 정의한다.
주문 서비스 인터페이스를 정의한다.
주문 서비스 구현체를 정의한다.
회원 저장소 객체와, 할인 정책 객체가 필요하다.
회원 저장소 객체에서 회원 객체를 가져오고 가져온 회원 객체와 아이템가격을 할인정책 에 전달한다. 그 결과를 Order 객체로 반환한다.