package cokr.xit.ens.modules.common.ctgy.intgrnbill.nv.service.process.code;

import cokr.xit.ens.core.code.CodeMapperType;
import lombok.Getter;


/**
 * <ul>
 * <li>업무 그룹명: 네이버페이 간편결제API - 결제상품 분류</li>
 * <li>설 명: </li>
 * <li>작성일: 2023. 2. 22. 오후 2:47:43
 * </ul>
 *
 * @author 박민규
 */

public enum NvEpCtgyIdCd implements CodeMapperType {
    BOOK_GENERAL("일반 도서", NvEpCtgyTypeCd.BOOK),
    BOOK_EBOOK("전자책", NvEpCtgyTypeCd.BOOK),
    BOOK_USED("중고 도서", NvEpCtgyTypeCd.BOOK),
    MUSIC_CD("음악 CD", NvEpCtgyTypeCd.MUSIC),
    MUSIC_LP("음악 LP", NvEpCtgyTypeCd.MUSIC),
    MUSIC_USED("중고 음반", NvEpCtgyTypeCd.MUSIC),
    MOVIE_DVD("영화 DVD", NvEpCtgyTypeCd.MOVIE),
    MOVIE_BLUERAY("영화 블루레이", NvEpCtgyTypeCd.MOVIE),
    MOVIE_VOD("영화 VOD", NvEpCtgyTypeCd.MOVIE),
    MOVIE_TICKET("영화 티켓", NvEpCtgyTypeCd.MOVIE),
    MOVIE_USED("중고 DVD, 블루레이 등", NvEpCtgyTypeCd.MOVIE),
    PRODUCT_GENERAL("일반 상품", NvEpCtgyTypeCd.PRODUCT),
    PRODUCT_CASHABLE("환금성 상품", NvEpCtgyTypeCd.PRODUCT),
    PRODUCT_CLAIM("클레임", NvEpCtgyTypeCd.PRODUCT),
    PRODUCT_DIGITAL_CONTENT("디지털 컨텐츠", NvEpCtgyTypeCd.PRODUCT),
    PRODUCT_SUPPORT("후원", NvEpCtgyTypeCd.PRODUCT),
    PLAY_TICKET("공연/전시", NvEpCtgyTypeCd.PLAY),
    TRAVEL_DOMESTIC("국내 숙박", NvEpCtgyTypeCd.TRAVEL),
    TRAVEL_OVERSEA("해외 숙박", NvEpCtgyTypeCd.TRAVEL),
    INSURANCE_CAR("자동차보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_DRIVER("운전자보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_HEALTH("건강보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_CHILD("어린이보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_TRAVELER("여행자보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_GOLF("골프보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_ANNUITY("연금보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_ANNUITY_SAVING("연금저축보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_SAVING("저축보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_VARIABLE_ANNUITY("변액적립보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_CANCER("암보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_DENTIST("치아보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_ACCIDENT("상해보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_SEVERANCE("퇴직연금", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_PHONE("휴대폰 보험", NvEpCtgyTypeCd.INSURANCE),
    INSURANCE_PET("펫보험", NvEpCtgyTypeCd.INSURANCE),
    FLIGHT_TICKET("항공", NvEpCtgyTypeCd.FLIGHT),
    FOOD_DELIVERY("음식", NvEpCtgyTypeCd.FOOD),
    ETC_ETC("기타", NvEpCtgyTypeCd.ETC),
    ;
    @Getter
    private String code;
    @Getter
    private String codeNm;
    @Getter
    private NvEpCtgyTypeCd categoryTypeCd;

    NvEpCtgyIdCd(String codeNm, NvEpCtgyTypeCd categoryTypeCd) {
        this.code = this.name();
        this.codeNm = codeNm;
        this.categoryTypeCd = categoryTypeCd;
    }
}
