package com.style24.persistence.domain;

import com.style24.core.support.util.CryptoUtils;
import com.style24.persistence.TscBaseDomain;
import lombok.Data;

/**
 * 고객쿠폰 도메인
 * @author xyzp1539
 * @since 2020-12-21
 */
@SuppressWarnings("serial")
@Data
public class CustCoupon extends TscBaseDomain {
    private Integer     cpnId;                  // 쿠폰아이디
    private int     rdCpnId;                // 랜덤쿠폰번호
    private Integer custCpnSq;              // 고객쿠폰일련번호
    private Integer custNo;                 // 고객번호
    private String  availStdt;              // 유효시작일시
    private String  availEddt;              // 유효종료일시
    private String  pubReason;              // 발행사유(공통코드G250)
    private String  pubReasonDtl;           // 발행사유상세
    private String  usedDt;                 // 사용된일시
    private String  endAlimSendYn;          // 만료알림발송여부
    private String  useYn;                  // 사용여부
    private String  rdCpnNm;                // 랜덤쿠폰 및 시리얼쿠폰 키
    private String  custId;                 // 고객 아이디
    private String  custNm;                 // 고객명
    private String  pdGb;                   // 기간/일수구분(P:기간, D:일수)
    private int   availDays;                // 유효일수
    private int maxDcAmt;                   // 최고할인금액
    private int cpnCnt;

    private String siteCd;
    private String dcWay;
    private int dcVal;
    private String frontGb;

    // 그리드 컬럼
    private String  custList;
    private String  cpnNm;                  // 쿠폰명
    private Integer ordNo;                  // 주문번호

    //배치
    private String email;
    private String cellPhnno;
    private String birthYmd;
    private String smsAgreeYn;
    private String emailAgreeYn;
    private String snsType;
    private String custGrade;
    private String useCondition;
    private String tgtCondition;
    private String availStdtTime;
    private String availEddtTime;
    private String emailAgreeDt;


    public String getCustNm() {
        this.custNm = CryptoUtils.decryptAES(this.custNm);
        return this.custNm;
    }

    public String getEmail() {
        this.email = CryptoUtils.decryptAES(this.email);
        return this.email;
    }

    public String getCellPhnno() {
        this.cellPhnno = CryptoUtils.decryptAES(this.cellPhnno);
        return this.cellPhnno;
    }


}
