All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.carlosthe19916.beans.InvoiceBeanBuilder Maven / Gradle / Ivy

The newest version!
package io.github.carlosthe19916.beans;

import java.util.ArrayList;
import java.util.List;

public class InvoiceBeanBuilder {

    private final InvoiceBean invoice;

    public InvoiceBeanBuilder() {
        this.invoice = new InvoiceBean();
    }

    public static InvoiceBeanBuilder InvoiceBean() {
        return new InvoiceBeanBuilder();
    }

    public InvoiceBeanBuilder serie(String serie) {
        invoice.setSerie(serie);
        return this;
    }

    public InvoiceBeanBuilder numero(Integer numero) {
        invoice.setNumero(numero);
        return this;
    }

    public InvoiceBeanBuilder codigoTipoComprobante(String codigoTipoComprobante) {
        invoice.setCodigoTipoComprobante(codigoTipoComprobante);
        return this;
    }

    public InvoiceBeanBuilder fecha(FechaBean fecha) {
        invoice.setFecha(fecha);
        return this;
    }

    public InvoiceBeanBuilder moneda(MonedaBean moneda) {
        invoice.setMoneda(moneda);
        return this;
    }

    public InvoiceBeanBuilder impuestos(ImpuestosBean impuestos) {
        invoice.setImpuestos(impuestos);
        return this;
    }

    public InvoiceBeanBuilder total(TotalBean total) {
        invoice.setTotal(total);
        return this;
    }

    public InvoiceBeanBuilder totalInformacionAdicional(TotalInformacionAdicionalBean totalInformacionAdicional) {
        invoice.setTotalInformacionAdicional(totalInformacionAdicional);
        return this;
    }

    public InvoiceBeanBuilder observaciones(String observaciones) {
        invoice.setObservaciones(observaciones);
        return this;
    }

    public InvoiceBeanBuilder proveedor(ProveedorBean proveedor) {
        invoice.setProveedor(proveedor);
        return this;
    }

    public InvoiceBeanBuilder cliente(ClienteBean cliente) {
        invoice.setCliente(cliente);
        return this;
    }

    public InvoiceBeanBuilder addDetalle(DetalleBean detalle) {
        List list = invoice.getDetalle();
        if (list == null) {
            list = new ArrayList<>();
            invoice.setDetalle(list);
        }
        invoice.getDetalle().add(detalle);
        return this;
    }

    public InvoiceBean build() {
        return invoice;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy