package com.eksad.masterdata.common.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.util.Date;
import java.util.List;

@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class PullNotaJBSCResponseDTO {
    private String woid;

    private String noNJB;
    private String tanggalnjb;
    private Integer totalharganjb;

    private String noNSC;
    private String tanggalnsc;
    private Integer totalhargansc;

    private String hondaidsa;
    private String hondaidmekanik;
    private String dealerid;
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/MM/yyyy HH:mm:ss", timezone = "Asia/Jakarta")
    private Date createdtime;
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/MM/yyyy HH:mm:ss", timezone = "Asia/Jakarta")
    private Date modifiedtime;
    private List<WorkOrderServiceOrafinDTO> njb;
    private List<WorkOrderPartOrafinDTO> nsc;


    @JsonProperty("noWorkOrder")
    public String getWoid() {
        return woid;
    }

    @JsonProperty("noWorkOrder")
    public void setWoid(String woid) {
        this.woid = woid;
    }

    @JsonProperty("noNJB")
    public String getNoNJB() {
        return noNJB;
    }

    @JsonProperty("noNJB")
    public void setNoNJB(String noNJB) {
        this.noNJB = noNJB;
    }

    @JsonProperty("tanggalNJB")
    public String getTanggalnjb() {
        return tanggalnjb;
    }

    @JsonProperty("tanggalNJB")
    public void setTanggalnjb(String tanggalnjb) {
        this.tanggalnjb = tanggalnjb;
    }

    @JsonProperty("totalHargaNJB")
    public Integer getTotalharganjb() {
        return totalharganjb;
    }

    @JsonProperty("totalHargaNJB")
    public void setTotalharganjb(Integer totalharganjb) {
        this.totalharganjb = totalharganjb;
    }

    @JsonProperty("noNSC")
    public String getNoNSC() {
        return noNSC;
    }

    @JsonProperty("noNSC")
    public void setNoNSC(String noNSC) {
        this.noNSC = noNSC;
    }

    @JsonProperty("tanggalNSC")
    public String getTanggalnsc() {
        return tanggalnsc;
    }

    @JsonProperty("tanggalNSC")
    public void setTanggalnsc(String tanggalnsc) {
        this.tanggalnsc = tanggalnsc;
    }

    @JsonProperty("totalHargaNSC")
    public Integer getTotalhargansc() {
        return totalhargansc;
    }

    @JsonProperty("totalHargaNSC")
    public void setTotalhargansc(Integer totalhargansc) {
        this.totalhargansc = totalhargansc;
    }

    @JsonProperty("hondaIdSA")
    public String getHondaidsa() {
        return hondaidsa;
    }

    @JsonProperty("hondaIdSA")
    public void setHondaidsa(String hondaidsa) {
        this.hondaidsa = hondaidsa;
    }

    @JsonProperty("hondaIdMekanik")
    public String getHondaidmekanik() {
        return hondaidmekanik;
    }

    @JsonProperty("hondaIdMekanik")
    public void setHondaidmekanik(String hondaidmekanik) {
        this.hondaidmekanik = hondaidmekanik;
    }

    @JsonProperty("dealerId")
    public String getDealerid() {
        return dealerid;
    }

    @JsonProperty("dealerId")
    public void setDealerid(String dealerid) {
        this.dealerid = dealerid;
    }

    @JsonProperty("createdTime")
    public Date getCreatedtime() {
        return createdtime;
    }

    @JsonProperty("createdTime")
    public void setCreatedtime(Date createdtime) {
        this.createdtime = createdtime;
    }

    @JsonProperty("modifiedTime")
    public Date getModifiedtime() {
        return modifiedtime;
    }

    @JsonProperty("modifiedTime")
    public void setModifiedtime(Date modifiedtime) {
        this.modifiedtime = modifiedtime;
    }

    @JsonProperty("njb")
    public List<WorkOrderServiceOrafinDTO> getNjb() {
        return njb;
    }

    @JsonProperty("njb")
    public void setNjb(List<WorkOrderServiceOrafinDTO> njb) {
        this.njb = njb;
    }

    @JsonProperty("nsc")
    public List<WorkOrderPartOrafinDTO> getNsc() {
        return nsc;
    }

    @JsonProperty("nsc")
    public void setNsc(List<WorkOrderPartOrafinDTO> nsc) {
        this.nsc = nsc;
    }
}