Пример #1
0
  /**
   * Encargado de borrar la informacion de un riego apartir de su identificacion
   *
   * @param idIrr: Identificacion del riego
   * @return Estado del proceso
   */
  public String delete() {
    if (!usrDao.getPrivilegeUser(idUsrSystem, "crop/delete")) {
      return BaseAction.NOT_AUTHORIZED;
    }
    Integer idIrr = 0;
    try {
      idIrr = Integer.parseInt(this.getRequest().getParameter("idIrr"));
    } catch (NumberFormatException e) {
      idIrr = -1;
    }

    if (idIrr == -1) {
      state = "failure";
      info = "Fallo al momento de obtener la informacion a borrar";
      return "states";
    }

    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    Transaction tx = null;

    try {
      tx = session.beginTransaction();
      Irrigation pr = irrDao.objectById(idIrr);
      pr.setStatus(false);
      //            session.delete(pro);
      session.saveOrUpdate(pr);

      LogEntities log = new LogEntities();
      log.setIdLogEnt(null);
      log.setIdEntityLogEnt(idEntSystem);
      log.setIdObjectLogEnt(pr.getIdIrr());
      log.setTableLogEnt("irrigation");
      log.setDateLogEnt(new Date());
      log.setActionTypeLogEnt("D");
      session.saveOrUpdate(log);
      //            logDao.save(log);
      tx.commit();
      state = "success";
      info = "El riego ha sido borrado con exito";
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
      state = "failure";
      info = "Fallo al momento de borrar un riego";
    } finally {
      session.close();
    }

    return "states";
    //        return SUCCESS;
  }
  public HashMap findById(Integer id) {
    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();

    List<Object[]> events = null;
    Transaction tx = null;
    HashMap result = new HashMap();

    String sql = "";
    String sqlAdd = "";

    sql +=
        "select pe.id_pro_eve, l.id_farm_fie, l.name_fie, pe.id_crop_type_pro_eve, pe.expected_production_pro_eve, pe.former_crop_pro_eve, pe.draining_pro_eve, pe.status";
    sql += " from production_events pe";
    sql +=
        " inner join log_entities le on le.id_object_log_ent=pe.id_pro_eve and le.table_log_ent='production_events' and le.action_type_log_ent='C'";
    sql += " inner join fields l on l.id_fie=pe.id_field_pro_eve";
    sql += " where l.status=1 and pe.status=1";
    if (id != null) {
      sql += " and pe.id_pro_eve=" + id;
    }
    //        args.get("countTotal");
    //        events.toArray();
    //        System.out.println("sql->"+sql);
    try {
      tx = session.beginTransaction();
      Query query = session.createSQLQuery(sql);
      events = query.list();

      for (Object[] data : events) {
        //                System.out.println(data);
        HashMap temp = new HashMap();
        temp.put("idCrop", data[0]);
        temp.put("idField", data[1]);
        temp.put("nameField", data[2]);
        temp.put("typeCrop", data[3]);
        temp.put("performObj", data[4]);
        temp.put("lastCrop", data[5]);
        temp.put("drainPlot", data[6]);
        temp.put("status", data[8]);
        result = (temp);
      }
      tx.commit();
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
    } finally {
      session.close();
    }
    return result;
  }
  public List<ChemicalElements> findByParams(Integer idFert) {
    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    List<Object[]> events = null;
    Transaction tx = null;
    List<ChemicalElements> result = new ArrayList<ChemicalElements>();

    String sql = "";
    String sqlAdd = "";

    sql += "select p.id_che_ele, p.name_che_ele";
    sql += " from chemical_elements p";
    sql += " where p.status_che_ele=1";
    sql += " order by p.id_che_ele ASC";

    //        args.get("countTotal");

    //        int valIni = Integer.parseInt(String.valueOf(args.get("pageNow")));
    //        int maxResults = Integer.parseInt(String.valueOf(args.get("maxResults")));
    //        if(valIni!=1){
    //            valIni = (valIni-1)*maxResults+1;
    //        }
    //        events.toArray();
    //        System.out.println("sql->"+sql);
    try {
      tx = session.beginTransaction();
      Query query = session.createSQLQuery(sql);
      //            System.out.println("sql->"+query.list().size());
      events = query.list();

      for (Object[] data : events) {
        ChemicalElements temp = new ChemicalElements();
        Integer valId = Integer.parseInt(String.valueOf(data[0]));
        Double valChe = getValuePercentage(idFert, valId);
        temp.setIdCheEle(valId);
        temp.setNameCheEle(String.valueOf(data[1]));
        //                System.out.println("valName=>"+temp.getNameCheEle());
        //                temp.setStatusCheEle(true);
        temp.setValueCheEle(valChe);
        result.add(temp);
      }
      tx.commit();
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
    } finally {
      session.close();
    }
    return result;
  }
  public void delete(ChemicalElements event) {
    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();

    Transaction tx = null;
    try {
      tx = session.beginTransaction();
      session.delete(event);
      tx.commit();
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
    } finally {
      session.close();
    }
  }
  public Double getValuePercentage(Integer idFert, Integer idEle) {
    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    List<Object[]> events = null;
    Transaction tx = null;

    String sql = "";
    Double perEle = null;

    if (idFert != null && idFert > 0) {
      sql += "select p.id_che_ele, p.name_che_ele, eq.percentage_che_fer_com";
      sql += " from chemical_elements p";
      sql +=
          " left join chemical_fertilizer_composition eq on eq.id_elements_che_fer_com=p.id_che_ele";
      sql +=
          " left join chemical_fertilizers fq on fq.id_che_fer=eq.id_chemical_fertilizer_che_fer_com";
      sql += " left join chemical_fertilizations ep on ep.id_product_che_fer=fq.id_che_fer";
      sql += " where p.status_che_ele=1 and ep.status=1";
      sql += " and ep.id_che_fer=" + idFert;
      sql += " and p.id_che_ele=" + idEle;
      sql += " order by p.id_che_ele ASC";

      try {
        tx = session.beginTransaction();
        Query query = session.createSQLQuery(sql);
        events = query.list();

        for (Object[] data : events) {
          perEle = Double.parseDouble(String.valueOf(data[2]));
        }
        tx.commit();
      } catch (HibernateException e) {
        if (tx != null) {
          tx.rollback();
        }
        e.printStackTrace();
      } finally {
        session.close();
      }
    }
    return perEle;
  }
 public List<ChemicalElements> findAll() {
   SessionFactory sessions = HibernateUtil.getSessionFactory();
   Session session = sessions.openSession();
   List<ChemicalElements> events = null;
   Transaction tx = null;
   try {
     tx = session.beginTransaction();
     Query query = session.createQuery("from ChemicalElements");
     events = query.list();
     tx.commit();
   } catch (HibernateException e) {
     if (tx != null) {
       tx.rollback();
     }
     e.printStackTrace();
   } finally {
     session.close();
   }
   return events;
 }
  public ChemicalElements objectById(Integer id) {
    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();

    ChemicalElements event = null;
    Transaction tx = null;

    try {
      tx = session.beginTransaction();
      String hql = "FROM ChemicalElements E WHERE E.idIrr = :id_irr";
      Query query = session.createQuery(hql);
      query.setParameter("id_irr", id);
      event = (ChemicalElements) query.uniqueResult();
      tx.commit();
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
    } finally {
      session.close();
    }
    return event;
  }
Пример #8
0
  /**
   * Encargado de guardar la informacion suministrada por el usuario para un riego
   *
   * @return Estado del proceso
   */
  public String saveData() {
    if (!usrDao.getPrivilegeUser(idUsrSystem, "crop/create")
        || !usrDao.getPrivilegeUser(idUsrSystem, "crop/modify")) {
      return BaseAction.NOT_AUTHORIZED;
    }
    String action = "";
    //        System.out.println("Entre a guardar la info");
    /*
     * Se evalua dependiendo a la accion realizada:
     * 1) create: Al momento de guardar un registro por primera ves
     * 2) modify: Al momento de modificar un registro
     * 3) delete: Al momento de borrar un registro
     */
    if (actExe.equals("create")) {
      action = "C";
    } else if (actExe.equals("modify")) {
      action = "M";
    }

    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    Transaction tx = null;

    try {
      tx = session.beginTransaction();

      String dmy = new SimpleDateFormat("yyyy-MM-dd").format(irr.getDateIrr());
      Date dateIrr = new SimpleDateFormat("yyyy-MM-dd").parse(dmy);

      irr.setUseIrrigationIrr(true);
      irr.setProductionEvents(new ProductionEvents(idCrop));
      irr.setDateIrr(dateIrr);
      //            if (sowing.getChemicalsSowing().getIdCheSow()==-1) {
      //                sowing.setChemicalsSowing(null);
      //            }
      //
      //            if (sowing.getDoseUnits().getIdDosUni()==-1) {
      //                sowing.setDoseUnits(null);
      //            }
      irr.setStatus(true);
      session.saveOrUpdate(irr);

      LogEntities log = new LogEntities();
      log.setIdLogEnt(null);
      log.setIdEntityLogEnt(idEntSystem);
      log.setIdObjectLogEnt(irr.getIdIrr());
      log.setTableLogEnt("irrigation");
      log.setDateLogEnt(new Date());
      log.setActionTypeLogEnt(action);
      session.saveOrUpdate(log);
      tx.commit();
      state = "success";
      if (action.equals("C")) {
        info = "El riego ha sido agregado con exito";
        //                return "list";
      } else if (action.equals("M")) {
        info = "El riego ha sido modificado con exito";
        //                return "list";
      }
      HashMap prod = cropDao.findById(idCrop);
      Integer tyCro = Integer.parseInt(String.valueOf(prod.get("typeCrop")));
      SfGuardUserDao sfDao = new SfGuardUserDao();
      SfGuardUser sfUser = sfDao.getUserByLogin(user.getCreatedBy(), user.getNameUserUsr(), "");
      GlobalFunctions.sendInformationCrop(idCrop, tyCro, sfUser.getId());
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
      //            System.out.println("error->"+e.getMessage());
      state = "failure";
      info = "Fallo al momento de agregar un riego";
    } catch (ParseException e) {

    } finally {
      session.close();
    }

    //        return ERROR;
    return "states";
  }
Пример #9
0
  /**
   * Encargado de guardar la informacion suministrada por el usuario para una siembra
   *
   * @return Estado del proceso
   */
  public String saveData() {
    if (!usrDao.getPrivilegeUser(idUsrSystem, "crop/create")
        || !usrDao.getPrivilegeUser(idUsrSystem, "crop/modify")) {
      return BaseAction.NOT_AUTHORIZED;
    }
    String action = "";
    //        System.out.println("Entre a guardar la info");
    /*
     * Se evalua dependiendo a la accion realizada:
     * 1) create: Al momento de guardar un registro por primera ves
     * 2) modify: Al momento de modificar un registro
     * 3) delete: Al momento de borrar un registro
     */
    if (actExe.equals("create")) {
      action = "C";
    } else if (actExe.equals("modify")) {
      action = "M";
    }

    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    Transaction tx = null;
    //        info = "La siembra ha sido modificado con exito";

    try {
      tx = session.beginTransaction();

      String dmy = new SimpleDateFormat("yyyy-MM-dd").format(sowing.getDateSow());
      Date dateSow = new SimpleDateFormat("yyyy-MM-dd").parse(dmy);

      //            event.setFields(event.getFields());
      //            event.setCropsTypes(new CropsTypes(2));
      //            event.setIdProjectProEve(event.getIdProjectProEve());
      //            event.setStatus(event.isStatus());
      session.saveOrUpdate(event);

      if (sowing.getIdSow() == null) {
        Sowing sowTemp = sowDao.objectById(idCrop);
        if (sowTemp != null) {
          sowing.setIdSow(sowTemp.getIdSow());
        }
      }

      sowing.setProductionEvents(new ProductionEvents(idCrop));
      sowing.setDateSow(dateSow);
      if (sowing.getChemicalsSowing().getIdCheSow() == -1) {
        sowing.setChemicalsSowing(null);
      }

      if (sowing.getDoseUnits() != null
          && (sowing.getDoseUnits().getIdDosUni() == -1
              || sowing.getChemicalsSowing().getIdCheSow() == 3)) {
        sowing.setDoseUnits(null);
      }
      //            sowing.setSowingTypes(new SowingTypes(idCrop));
      sowing.setStatus(true);
      session.saveOrUpdate(sowing);

      Maize maizeOld = maizeDao.objectById(this.getIdCrop());
      if (maizeOld != null) session.delete(maizeOld);

      Beans beansOld = beansDao.objectById(this.getIdCrop());
      if (beansOld != null) session.delete(beansOld);

      if (typeCrop == 1) {
        maize.setProductionEvents(new ProductionEvents(idCrop));
        maize.setStatus(true);
        session.saveOrUpdate(maize);
      } else if (typeCrop == 2) {
        beans.setSeedsTypes(null);
        beans.setProductionEvents(new ProductionEvents(idCrop));
        beans.setStatus(true);
        session.saveOrUpdate(beans);
      } else if (typeCrop == 3) {
        //                Cassavas ca = new Cassavas();
        //                ca.setIdCas(null);
        //                ca.setProductionEvents(pro);
      }

      LogEntities log = new LogEntities();
      log.setIdLogEnt(null);
      log.setIdEntityLogEnt(idEntSystem);
      log.setIdObjectLogEnt(sowing.getIdSow());
      log.setTableLogEnt("sowing");
      log.setDateLogEnt(new Date());
      log.setActionTypeLogEnt(action);
      session.saveOrUpdate(log);

      tx.commit();
      state = "success";
      if (action.equals("C")) {
        info = "La siembra ha sido agregada con exito";
        //                return "list";
      } else if (action.equals("M")) {
        info = "La siembra ha sido modificada con exito";
        //                return "list";
      }
      SfGuardUserDao sfDao = new SfGuardUserDao();
      SfGuardUser sfUser = sfDao.getUserByLogin(user.getCreatedBy(), user.getNameUserUsr(), "");
      GlobalFunctions.sendInformationCrop(idCrop, typeCrop, sfUser.getId());
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
      //            System.out.println("error->"+e.getMessage());
      state = "failure";
      info = "Fallo al momento de agregar una siembra";
    } catch (ParseException e) {

    } finally {
      session.close();
    }

    //        return ERROR;
    return "states";
  }
Пример #10
0
  /**
   * Encargado de guardar la informacion suministrada por el usuario para una finca
   *
   * @return Estado del proceso
   */
  public String saveData() throws SQLException {
    if (!usrDao.getPrivilegeUser(idUsrSystem, "farm/create")
        || !usrDao.getPrivilegeUser(idUsrSystem, "farm/modify")) {
      return BaseAction.NOT_AUTHORIZED;
    }
    String action = "";
    /*
     * Se evalua dependiendo a la accion realizada:
     * 1) create: Al momento de guardar un registro por primera ves
     * 2) modify: Al momento de modificar un registro
     * 3) delete: Al momento de borrar un registro
     */
    if (actExe.equals("create")) {
      action = "C";
    } else if (actExe.equals("modify")) {
      action = "M";
    }

    ProducersDao proDao = new ProducersDao();
    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    Transaction tx = null;
    HashMap proData = proDao.findById(idProducer);

    Double altPro = Double.parseDouble(altitude_property.replace(',', '.'));
    Double latPro = Double.parseDouble(latitude_property.replace(',', '.'));
    Double lonPro = Double.parseDouble(length_property.replace(',', '.'));
    //        Double altPro = Double.parseDouble(altitude_property);
    //        Double latPro = Double.parseDouble(latitude_property);
    //        Double lonPro = Double.parseDouble(length_property);

    if (option_geo == 2) {
      latPro = (latitude_minutes_property / 60) + (latitude_seconds_property / 3600);
      latPro =
          (latitude_degrees_property < 0)
              ? ((Math.abs(latitude_degrees_property)) + latPro) * -1
              : (latitude_degrees_property + latPro);

      lonPro = (length_minutes_property / 60) + (length_seconds_property / 3600);
      lonPro =
          (length_degrees_property < 0)
              ? ((Math.abs(length_degrees_property)) + lonPro) * -1
              : (length_degrees_property + lonPro);
    }

    try {
      tx = session.beginTransaction();
      SfGuardUserDao sfDao = new SfGuardUserDao();
      SfGuardUser sfUser = sfDao.getUserByLogin(user.getCreatedBy(), user.getNameUserUsr(), "");
      Farms far = null;
      int idProOld = 0;
      if (idFarm <= 0) {
        far = new Farms();
        far.setIdFar(null);
        far.setGeorefFar(true);
        far.setIdProjectFar("1");
        far.setStatus(true);
      } else {
        HashMap fieldInfo = farDao.findById(idFarm);
        idProOld = Integer.parseInt(String.valueOf(fieldInfo.get("id_producer")));
        far = farDao.objectById(idFarm);
      }
      far.setNameFar(name_property);
      far.setAddressFar(direction_property);
      far.setLatitudeFar(latPro);
      far.setLongitudeFar(lonPro);
      far.setAltitudeFar(altPro);
      far.setNameCommuneFar(lane_property);
      far.setMunicipalities(new Municipalities(Integer.parseInt(cityFar)));
      Integer idUserMobile = null;
      if (sfUser != null) {
        idUserMobile = sfUser.getId().intValue();
      }
      far.setCreatedBy(idUserMobile);
      session.saveOrUpdate(far);
      depFar = String.valueOf(MunicipalitiesDao.getDepartmentId(Integer.parseInt(cityFar)));

      //            farDao.save(far);
      //            System.out.println("valId->"+far.getIdFar());

      if (far.getIdFar() > 0 && action.equals("M")) {
        if (idProOld != idProducer) {
          FarmsProducers farTemp = farDao.checkFarmProducer(far.getIdFar(), idProOld);
          session.delete(farTemp);
        }
        //                System.out.println("id field->"+fiePro.getFields().getIdFie());
        //                fiePro = new FieldsProducers();
        //                fiePro.setId(new FieldsProducersId(lot.getIdFie(), idProducer));
        //                fiePro.setFields(lot);
        //                fiePro.setProducers(proDao.objectById(idProducer));
        //                fiePro.setFieldTypes(new FieldTypes(typeLot));
        //                session.saveOrUpdate(fiePro);
      }

      if (idProOld != idProducer) {
        FarmsProducers farPro = new FarmsProducers();
        farPro.setId(new FarmsProducersId(far.getIdFar(), idProducer));
        farPro.setFarms(far);
        farPro.setProducers(proDao.objectById(idProducer));
        session.saveOrUpdate(farPro);
      }

      /*LogEntities log = new LogEntities();
      log.setIdLogEnt(null);
      log.setIdEntityLogEnt(idEntSystem); //Colocar el usuario registrado en el sistema
      log.setIdObjectLogEnt(far.getIdFar());
      log.setTableLogEnt("farms");
      log.setDateLogEnt(new Date());
      log.setActionTypeLogEnt(action);
      session.saveOrUpdate(log);*/
      //            logDao.save(log);

      /*
      "102": "Nombre de la finca" => nameFarm
      "103": "-30.98664622,-64.10017675,601" Capturar posicion => lat, lng, alt
      "105": "Vereda" => district
      "108": "Indicación (como llegar)" => address
      "241": "Seleccione el productor asociado" => Seleccion (solo dato seleccionado) => prodId
      "336": "Departamento" => department
      "338": "Municipio (Amazonas)" => municipality
      */

      // Manejo para ingresar datos en MongoDB

      HashMap valInfo = new HashMap();
      valInfo.put("farmId", far.getIdFar());
      valInfo.put("nameFarm", far.getNameFar());
      valInfo.put("prodId", idProducer);
      valInfo.put("nameProd", proData.get("name"));
      valInfo.put("district", far.getNameCommuneFar());
      valInfo.put("address", far.getAddressFar());
      valInfo.put("lat", latPro);
      valInfo.put("lng", lonPro);
      valInfo.put("alt", altPro);
      valInfo.put("department", depFar);
      valInfo.put("municipality", cityFar);
      valInfo.put("userMobileId", idUserMobile);
      //            System.out.println("valInfo=>"+valInfo);

      BasicDBObject query = new BasicDBObject();
      query.put("InsertedId", "" + far.getIdFar());
      query.put("form_id", "3");

      MongoClient mongo = null;
      try {
        mongo = new MongoClient("localhost", 27017);
      } catch (UnknownHostException ex) {
        Logger.getLogger(ActionField.class.getName()).log(Level.SEVERE, null, ex);
      }
      DB db = mongo.getDB("ciat");
      DBCollection col = db.getCollection("log_form_records");

      DBCursor cursor = col.find(query);
      WriteResult result = null;
      BasicDBObject jsonField = GlobalFunctions.generateJSONFarm(valInfo);

      if (cursor.count() > 0) {
        System.out.println("actualizo mongo");
        result = col.update(query, jsonField);
      } else {
        System.out.println("inserto mongo");
        result = col.insert(jsonField);
      }

      if (result.getError() != null) {
        throw new HibernateException("");
      }

      mongo.close();
      tx.commit();
      state = "success";
      if (action.equals("C")) {
        info = "La finca ha sido agregada con exito";
        //                return "list";
      } else if (action.equals("M")) {
        info = "La finca ha sido modificada con exito";
      }
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
      state = "failure";
      info = "Fallo al momento de agregar una finca";
    } finally {
      session.close();
    }

    return "states";
    //        return ERROR;
  }
Пример #11
0
  /**
   * Encargado de borrar la informacion de una finca apartir de su identificacion
   *
   * @param idFar: Identificacion de la finca
   * @return Estado del proceso
   */
  public String delete() {
    if (!usrDao.getPrivilegeUser(idUsrSystem, "farm/delete")) {
      return BaseAction.NOT_AUTHORIZED;
    }
    Integer idFar = 0;
    try {
      idFar = Integer.parseInt(this.getRequest().getParameter("idFar"));
    } catch (NumberFormatException e) {
      idFar = -1;
    }

    if (idFar == -1) {
      state = "failure";
      info = "Fallo al momento de obtener la informacion a borrar";
      return "states";
    }

    SessionFactory sessions = HibernateUtil.getSessionFactory();
    Session session = sessions.openSession();
    Transaction tx = null;

    try {
      tx = session.beginTransaction();
      Farms far = farDao.objectById(idFar);
      far.setStatus(false);
      session.saveOrUpdate(far);
      //            session.delete(far);
      //            farDao.delete(far);

      LogEntities log = new LogEntities();
      log.setIdLogEnt(null);
      log.setIdEntityLogEnt(idEntSystem); // Colocar el usuario registrado en el sistema
      log.setIdObjectLogEnt(far.getIdFar());
      log.setTableLogEnt("farms");
      log.setDateLogEnt(new Date());
      log.setActionTypeLogEnt("D");
      session.saveOrUpdate(log);
      //            logDao.save(log);

      BasicDBObject query = new BasicDBObject();
      query.put("InsertedId", "" + far.getIdFar());
      query.put("form_id", "3");

      MongoClient mongo = null;
      try {
        mongo = new MongoClient("localhost", 27017);
      } catch (UnknownHostException ex) {
        Logger.getLogger(ActionField.class.getName()).log(Level.SEVERE, null, ex);
      }
      DB db = mongo.getDB("ciat");
      DBCollection col = db.getCollection("log_form_records");
      WriteResult result = null;

      System.out.println("borro mongo");
      result = col.remove(query);

      if (result.getError() != null) {
        throw new HibernateException("");
      }
      mongo.close();

      FieldsDao fieDao = new FieldsDao();
      fieDao.deleteFieldsMongo(far.getIdFar());

      tx.commit();
      state = "success";
      info = "La finca ha sido borrada con exito";
    } catch (HibernateException e) {
      if (tx != null) {
        tx.rollback();
      }
      e.printStackTrace();
      state = "failure";
      info = "Fallo al momento de borrar una finca";
    } finally {
      session.close();
    }

    return "states";
    //        return SUCCESS;
  }