package cokr.xit.ens.modules.common.ctgy.intgrnbill.kko.service.process.model;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.google.gson.annotations.SerializedName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import lombok.Data;

import javax.validation.constraints.NotEmpty;

@Builder
@Data
@Schema(name = "CustomUrl")
public class CustomUrl {
    @NotEmpty(message = "청구서조회URL은 필수 입력값 입니다.")
    @Schema(required = true, title = "청구서 조회 URL", example = "http://wwww.xit.co.kr/kakao/notice")

    @JsonAlias({"noticeUrl"})
    @SerializedName(value = "notice_url", alternate = {"noticeUrl"})
    private String noticeUrl;

    @NotEmpty(message = "납부가능조회URL은 필수 입력값 입니다.")
    @Schema(required = true, title = "납부 가능 조회 URL", example = "http://wwww.xit.co.kr/kakao/prepay")
    @JsonAlias({"prepayUrl"})
    @SerializedName(value = "prepay_url", alternate = {"prepayUrl"})
    private String prepayUrl;

    @NotEmpty(message = "납부결과전달URL은 필수 입력값 입니다.")
    @Schema(required = true, title = "납부 결과 전달 URL", example = "http://wwww.xit.co.kr/kakao/pay-result")
    @JsonAlias({"payResultUrl"})
    @SerializedName(value = "pay_result_url", alternate = {"payResultUrl"})
    private String payResultUrl;

}
