Coupon.java 5.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package com.style24.persistence.domain;
  2. import com.fasterxml.jackson.annotation.JsonFormat;
  3. import com.style24.persistence.TscBaseDomain;
  4. import com.style24.persistence.TscPageRequest;
  5. import lombok.Data;
  6. import java.util.List;
  7. import java.util.ArrayList;
  8. import java.util.Collection;
  9. /**
  10. * 쿠폰 도메인
  11. * @author xyzp1539
  12. * @since 2020-12-21
  13. */
  14. @SuppressWarnings("serial")
  15. @Data
  16. public class Coupon extends TscBaseDomain {
  17. // TB_COUPON
  18. private int cpnId; // 쿠폰ID
  19. private String cpnNm; // 쿠폰명
  20. private String siteCd; // 사이트코드(공통코드G000)
  21. private String afLinkCd; // 제휴링크코드
  22. private String usableCustGb; // 사용가능고객구분(공통코드G100)
  23. private String usableCustGrade; // 사용가능고객등급(공통코드G110)
  24. private String cpnType; // 쿠폰유형(공통코드G230)
  25. private String applyScope; // 적용범위(A:전체, I:개별). "I:개별"이고 쿠폰유형이 "20:장바구니쿠폰" 외 이면 TB_COUPON_REFVAL 참조
  26. private String dcWay; // 할인방식(공통코드G240)
  27. private int dcPval; // 할인값(PC). 할인방식이 금액이면 할인금액, 율이면 할인율
  28. private int dcMval; // 할인값(모바일). 할인방식이 금액이면 할인금액, 율이면 할인율
  29. private int dcAval; // 할인값(모바일앱)
  30. private int maxDcAmt; // 최고할인금액
  31. private String pdGb; // 기간/일수구분(P:기간, D:일수)
  32. private String availStdt; // 유효시작일시(기간/일수구분 "P:기간"일 때 사용됨)
  33. private String availEddt; // 유효종료일시(기간/일수구분 "P:기간"일 때 사용됨)
  34. private int availDays; // 유효일수(기간/일수구분 "D:일수"일 때 사용됨)
  35. private int custPubLimitQty; // 고객당발행제한수량(0은 무제한)
  36. private int totPubLimitQty; // 총발행제한수량(0은 무제한)
  37. private int onePubQty; // 1회발행수량(기본은 1)
  38. private String dnGb; // 다운로드구분(공통코드G058)
  39. private String downStdt; // 다운로드시작일시
  40. private String downEddt; // 다운로드종료일시
  41. private int buyLimitAmt; // 구매제한금액(0은 제한없음. 그 외는 00 이상 구매 시 사용)
  42. private int planSq; // 기획전번호(쿠폰유형이 플러스쿠폰 일 때 사용 기획전번호)
  43. private String reissuance; // 쿠폰재발급여부(공통코드G231)
  44. private String cpnStat; // 쿠폰상태(공통코드G232)
  45. private String endAlimYn; // 만료알림여부
  46. private String firstOrdYn; // 첫구매여부 (Y:구매이력이없음 | N:구매이력있음)
  47. private String downAblYn; // 다운로드가능여부(마이페이지, 상품상세) --> EP쿠폰, 난수쿠폰
  48. private String custJoinStdt; // 회원가입일자(FROM) 20200101 (신규회원여부의 판단을 가입일자로 설정함)
  49. private String custJoinEddt; // 회원가입일자(FROM) 20200101 (신규회원여부의 판단을 가입일자로 설정함)
  50. private String buyStdt; // 회원가입일자(FROM) 20200101 (구매기간일자(FROM) (해당기간에 구매이력이 없으면 다운로드 가능))
  51. private String buyEddt; // 구매기간일자(TO)
  52. private int issueCnt; // 쿠폰발급개수
  53. private int useCnt; // 쿠폰사용개수
  54. private String payType; // 결제수단
  55. private String newCustYn; // 신규회원여부
  56. private String afChannel; // 제휴링크
  57. private String dcCdGb; // 할인코드유형 (공통코드G233)
  58. private String rdCpnNm; // 랜덤쿠폰 사용키 (시리얼명 or 난수)
  59. // 그리드 파라미터
  60. /*private String supplyCompList; // 공급업체 리스트
  61. private String brandList; // 브랜드 리스트
  62. private String applyGoodsList; // 적용상품 리스트
  63. private String exceptGoodsList; // 제외상품 리스트
  64. private String cateList; // 카테고리 리스트
  65. private String burdenList; // 업체 분담율 리스트*/
  66. List<CouponRefval> supplyCompList; // 공급업체 리스트
  67. List<CouponRefval> brandList; // 브랜드 리스트
  68. List<CouponRefval> applyGoodsList; // 적용상품 리스트
  69. List<CouponRefval> exceptGoodsList; // 제외상품 리스트
  70. List<CouponRefval> cateList; // 카테고리 리스트
  71. List<CouponBurden> burdenList; // 업체 분담율 리스트
  72. // TB_COUPON_BAN_GOODS
  73. private int cpnBanGoodsSq; // 제외상품시퀀스
  74. // 사용가능고객구분
  75. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  76. private String[] usableCustGbArr;
  77. // 사용가능고객등급
  78. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  79. private String[] usableCustGradeArr;
  80. // 결제수단
  81. @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  82. private String[] payTypeArr;
  83. // Pagination
  84. private TscPageRequest pageable;
  85. private int pageNo = 1;
  86. private int pageSize = 50;
  87. private int pageUnit = 10;
  88. }