SearchEngine.java 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.style24.persistence.domain.searchengine;
  2. import java.io.Serializable;
  3. import java.util.Collection;
  4. import com.fasterxml.jackson.annotation.JsonFormat;
  5. import com.style24.persistence.TscPageRequest;
  6. import lombok.Data;
  7. /**
  8. * 검색엔진 연동 도메인
  9. *
  10. * @author gagamel
  11. * @since 2021. 4. 29
  12. */
  13. @SuppressWarnings("serial")
  14. @Data
  15. public class SearchEngine implements Serializable {
  16. // 인기검색어 목록
  17. Collection<Trend> trendList;
  18. // 파라미터
  19. private String siteCd; // 사이트코드
  20. private String cateGb; // 카테고리구분
  21. private String filterGb; // 필터구분
  22. private Integer custNo; // 고객번호
  23. private Integer cate1No; // 카테고리1번호
  24. private Integer cate2No; // 카테고리2번호
  25. private Integer cate3No; // 카테고리3번호
  26. private Integer cate4No; // 카테고리4번호
  27. private Integer cate5No; // 카테고리5번호
  28. private String keyword; // 키워드
  29. private Integer brandGroupNo; // 브랜드그룹번호
  30. private String formalGb; // 정상이월구분
  31. private String defaultCateYn; // 기본카테고리사용여부
  32. private String frontGb; // 프론트구분
  33. private String custGb; // 고객구분
  34. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  35. private String[] brandGroupArr; // 브랜드그룹배열
  36. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  37. private String[] sizeArr; // 사이즈배열
  38. private Integer priceFrom; // 가격From
  39. private Integer priceTo; // 가격To
  40. private Integer dcRateFrom; // 할인율From
  41. private Integer dcRateTo; // 할인율To
  42. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  43. private String[] ageArr; // 사이즈배열
  44. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  45. private String[] seasonArr; // 시즌배열
  46. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  47. private String[] colorArr; // 색상배열
  48. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  49. private String[] benefitArr; // 혜택배열
  50. private String unisex; // 남여공용만보기(성별구분:G007_Z)
  51. private String newGoods; // 신상품만보기(혜택구분:40)
  52. private String sortingType; // 정렬순서(BELOVED: 인기상품순, REVIEW: 리뷰많은순 그외는 최신상품순)
  53. private int pageNo = 1; // 페이지번호
  54. private int pageSize = 50; // 페이지사이즈
  55. private int pageUnit = 10; // 페이지단위
  56. private TscPageRequest pageable;
  57. // Result - 상품리스트
  58. private String brandGroupNm; // 브랜드그룹명
  59. private String goodsCd; // 상품코드
  60. private String goodsFullNm; // 상품FULL명
  61. private String goodsTnm; // 상품타이틀명
  62. private int listPrice; // 정상가
  63. private int currPrice; // 현재판매가(=혜택가)
  64. private String sysImgNm; // 상품시스템파일명(썸네일 기본 이미지)
  65. private String sysImgNm2; // 상품시스템파일명2(썸네일 마우스오버 이미지)
  66. private String videos; // 동영상들(,로 연결된 문자열. 동영상구분:미디어컨텐츠 또는 유튜브동영상ID, ...)
  67. private String colorChips; // 컬러칩들(,로 연결된 문자열. 색상코드:컬러칩, ...)
  68. private String sizes; // 사이즈들(,로 연결된 문자열. 사이즈코드:품절여부, ...)
  69. private String benefits; // 혜택들(,로 연결된 문자열. 혜택구분:혜택명, ...)
  70. private String likeIt; // 좋아요(위시리스트에담긴상품)
  71. // private String adminIp; // 검색엔진IP
  72. // private String adminPort; // 검색엔진포트
  73. private String returnCode; // 검색오류코드(양수: 정상, 음수: 오류)
  74. @Data
  75. public class Trend {
  76. // 인기검색어
  77. private String keyword; // 키워드
  78. private int prevRank; // 이전랭킹
  79. private int ranking; // 랭킹
  80. }
  81. }