package incheon.cmm.g2f.basemap.vo;

import incheon.com.cmm.ComDefaultVO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import java.time.LocalDateTime;


@lombok.Getter @lombok.Setter
@EqualsAndHashCode(callSuper = true)
public class G2FBasemapVO extends ComDefaultVO {
    final static String USE_AT_REGEXP = "^[YN]$";
    
    @NotBlank
    @Size(max = 50)
    private String bcrnLyrId;
    
    @NotBlank
    @Size(max = 50)
    private String bcrnLyrTtl;
    
    @Size(max = 1000)
    private String sourcUrl;
    
    @Size(max = 1000)
    private String thmbUrl;
    
    @Size(max = 4000)
    private String cprgtCn;
    
    private Boolean useEn;  // true / false
    
    private Boolean iconuseEn;  // 추가
    
    private LocalDateTime crtYmd;
    private String crtId;
    private LocalDateTime chgYmd;
    private String chgId;
    
    public String getCprgtCnDecoded() {
        if (this.cprgtCn == null || this.cprgtCn.trim().isEmpty()) {
            return "";
        }
        return this.cprgtCn
            .replace("&copy;", "©")
            .replace("&reg;", "®")
            .replace("&trade;", "™")
            .replace("&amp;", "&");
    }
}
