entities.fertilizacion.Lote.java Source code

Java tutorial

Introduction

Here is the source code for entities.fertilizacion.Lote.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package entities.fertilizacion;

import com.mongodb.Block;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import db.MongoManager;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import static java.util.Arrays.asList;
import java.util.Date;
import java.util.List;
import org.bson.Document;
import org.bson.types.ObjectId;

/**
 *
 * @author VICTOR OQUENDO
 */
public class Lote implements Serializable {

    ObjectId id;
    ObjectId idHacienda;

    String codigo;
    String hectareas;
    String tipoSuelo;
    String leyendaHacienda;
    String leyendaCliente;

    public Lote() {
        this.codigo = "";
        this.hectareas = "";
        this.tipoSuelo = "";
        this.leyendaHacienda = "";
        this.leyendaCliente = "";

    }

    public ObjectId getId() {
        return id;
    }

    public void setId(ObjectId id) {
        this.id = id;
    }

    public ObjectId getIdHacienda() {
        return idHacienda;
    }

    public void setIdHacienda(ObjectId idHacienda) {
        this.idHacienda = idHacienda;
    }

    public String getCodigo() {
        return codigo;
    }

    public void setCodigo(String codigo) {
        this.codigo = codigo;
    }

    public String getHectareas() {
        return hectareas;
    }

    public void setHectareas(String hectareas) {
        this.hectareas = hectareas;
    }

    public String getLeyendaHacienda() {
        return leyendaHacienda;
    }

    public void setLeyendaHacienda(String leyendaHacienda) {
        this.leyendaHacienda = leyendaHacienda;
    }

    public String getLeyendaCliente() {
        return leyendaCliente;
    }

    public void setLeyendaCliente(String leyendaCliente) {
        this.leyendaCliente = leyendaCliente;
    }

    public String getTipoSuelo() {
        return tipoSuelo;
    }

    public void setTipoSuelo(String tipoSuelo) {
        this.tipoSuelo = tipoSuelo;
    }

    public void save() {

        MongoManager mongo = MongoManager.getInstance();

        MongoCollection table = mongo.db.getCollection("lote");

        Document obj = new Document("idhacienda", this.idHacienda).append("codigo", this.codigo.toUpperCase())
                .append("hectareas", this.hectareas).append("tiposuelo", this.tipoSuelo);

        table.insertOne(obj);
    }

    public void update() {

        MongoManager mongo = MongoManager.getInstance();
        Document obj = new Document("idhacienda", this.idHacienda).append("codigo", this.codigo.toUpperCase())
                .append("hectareas", this.hectareas).append("tiposuelo", this.tipoSuelo);

        mongo.db.getCollection("lote").updateOne(new Document("_id", this.id), new Document("$set", obj));

    }

    public static Lote getLoteByCodigo(String cod) {
        Lote obj = new Lote();

        MongoManager mongo = MongoManager.getInstance();

        FindIterable<Document> iterable = mongo.db.getCollection("lote").find(new Document("codigo", cod));

        iterable.forEach(new Block<Document>() {
            @Override
            public void apply(final Document document) {

                obj.id = (ObjectId) document.get("_id");
                obj.idHacienda = (ObjectId) document.get("idhacienda");
                obj.codigo = document.get("codigo").toString();
                obj.hectareas = document.get("hectareas").toString();
                obj.tipoSuelo = document.get("tiposuelo").toString();
                obj.leyendaHacienda = Hacienda.getHaciendaById(obj.idHacienda).nombre;
                obj.leyendaCliente = Cliente
                        .getClienteById(Hacienda.getHaciendaById(obj.idHacienda).idCliente).nombre;
            }

        });

        return obj;
    }

    public static Lote getLoteById(ObjectId id) {
        Lote obj = new Lote();

        MongoManager mongo = MongoManager.getInstance();

        FindIterable<Document> iterable = mongo.db.getCollection("lote").find(new Document("_id", id));

        iterable.forEach(new Block<Document>() {
            @Override
            public void apply(final Document document) {

                obj.id = (ObjectId) document.get("_id");
                obj.idHacienda = (ObjectId) document.get("idhacienda");
                obj.codigo = document.get("codigo").toString();
                obj.hectareas = document.get("hectareas").toString();
                obj.tipoSuelo = document.get("tiposuelo").toString();
                obj.leyendaHacienda = Hacienda.getHaciendaById(obj.idHacienda).nombre;
                obj.leyendaCliente = Cliente
                        .getClienteById(Hacienda.getHaciendaById(obj.idHacienda).idCliente).nombre;
            }

        });

        return obj;
    }

    public static List<Lote> getAllLotesByHaciendaId(ObjectId id) {
        List<Lote> res = new ArrayList<>();

        MongoManager mongo = MongoManager.getInstance();
        FindIterable<Document> iterable = mongo.db.getCollection("lote").find(new Document("idhacienda", id))
                .sort(new Document("_id", -1));
        iterable.forEach(new Block<Document>() {
            @Override
            public void apply(final Document document) {
                Lote obj = new Lote();

                obj.id = (ObjectId) document.get("_id");
                obj.idHacienda = (ObjectId) document.get("idhacienda");
                obj.codigo = document.get("codigo").toString();
                obj.hectareas = document.get("hectareas").toString();
                obj.tipoSuelo = document.get("tiposuelo").toString();
                obj.leyendaHacienda = Hacienda.getHaciendaById(obj.idHacienda).nombre;
                obj.leyendaCliente = Cliente
                        .getClienteById(Hacienda.getHaciendaById(obj.idHacienda).idCliente).nombre;

                res.add(obj);
            }

        });

        return res;
    }

    public static List<Lote> getAllLotes() {
        List<Lote> res = new ArrayList<>();

        MongoManager mongo = MongoManager.getInstance();
        FindIterable<Document> iterable = mongo.db.getCollection("lote").find().sort(new Document("_id", -1));
        iterable.forEach(new Block<Document>() {
            @Override
            public void apply(final Document document) {
                Lote obj = new Lote();

                obj.id = (ObjectId) document.get("_id");
                obj.idHacienda = (ObjectId) document.get("idhacienda");
                obj.codigo = document.get("codigo").toString();
                obj.hectareas = document.get("hectareas").toString();
                obj.tipoSuelo = document.get("tiposuelo").toString();
                obj.leyendaHacienda = Hacienda.getHaciendaById(obj.idHacienda).nombre;
                obj.leyendaCliente = Cliente
                        .getClienteById(Hacienda.getHaciendaById(obj.idHacienda).idCliente).nombre;

                res.add(obj);
            }

        });

        return res;
    }

}