단순히 기록용으로 남겨두기 위해 블로그를 쓴다
기간별로 A ,B,C 라는 어떠한 값(할인율?)이 적용되어져야 할 경우
아래와 같이 각각 다른 기간의 할인이 걸린 경우
기간별로 할인대상들이 다르게 걸릴 수 있겠다.
위의 예에서는 3개의 다른 할인 기간으로 4개의 기간별 할인이 분리되었다.
java로 구현한 기간별 대상들을 구분하는 로직을 아래와 같이 작성하였다.
- 클래스 명은 도저히 뭐라고 지어야 할지 모르겠다..
위와 같이 테스트를 했을때 떨어지는 결과는 아래와 같다.
RangeWrap [startedAt=2019-03-01T15:00, endedAt=2019-03-07T14:59:59, wrapObj=1]
RangeWrap [startedAt=2019-03-04T15:00, endedAt=2019-03-10T14:59:59, wrapObj=2]
RangeWrap [startedAt=2019-03-04T15:00, endedAt=2019-03-13T14:59:59, wrapObj=3]2019-03-01T15:00 ~ 2019-03-04T14:59:59 : [1]
2019-03-04T15:00 ~ 2019-03-07T14:59:59 : [1, 2, 3]
2019-03-07T15:00 ~ 2019-03-10T14:59:59 : [2, 3]
2019-03-10T15:00 ~ 2019-03-13T14:59:59 : [3]
이러한 기능을 하는 유틸을 찾지 못해 작성하긴 했지만.
알맞은 로직을 찾는다면 바꿔야 겠다.!