package com.eactive.eai.rms.onl.loader.intf.deploy;

import com.eactive.eai.data.entity.onl.b2bextractor.B2BExtract;
import com.eactive.eai.data.entity.onl.b2bextractor.B2BExtractId;
import com.eactive.eai.rms.onl.loader.service.DeployResource;
import com.fasterxml.jackson.annotation.JsonProperty;
import edu.emory.mathcs.backport.java.util.Arrays;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Data
public class B2BExtractDeploy extends DeployResource<B2BExtract> {

    @Override
    public B2BExtract probeForExample() {
        B2BExtractId id = new B2BExtractId();
        id.setEaisvcname(this.eaisvcname);
        B2BExtract probe = new B2BExtract();
        probe.setId(id);
        return probe;
    }

    @Override
    public List<String> exactMatchFields() {
        return Arrays.asList(new String[]{
                "id.eaisvcname"
        });
    }

    @JsonProperty("InterfaceServiceCode")
    private String eaisvcname;

    @JsonProperty("Sequence")
    private Integer svcprcssno;

    /*어댑터라우팅클래스명*/
    @JsonProperty("AdapterRoutingClass")
    private String adptrroutclsname;

    /*서비스라우팅클래스명*/
    @JsonProperty("ServiceRoutingClass")
    private String svcroutclsname;

    /*최종수정일시*/
    @JsonProperty("LastDateTime")
    private LocalDateTime eailastamndyms;

    /*EAI서버구분코드*/
    @JsonProperty("ServerType")
    private String eaisevrdstcd;

    /*변경관리상태구분코드*/
    @JsonProperty("StatusCode")
    private String modfimgtstusdstcd;

}
