Package com.insacosa.utils

Source Code of com.insacosa.utils.FilterBeanInmobles

package com.insacosa.utils;


import com.google.appengine.api.datastore.Key;

import java.io.Serializable;  
import java.util.Iterator;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;  
import javax.faces.context.FacesContext;
import javax.faces.event.ValueChangeEvent;
import javax.faces.model.SelectItem;
import javax.inject.Inject;

import org.richfaces.model.Filter;

import com.insacosa.Inmobles.domain.*;

import com.insacosa.presentation.CiutatsFinder;
import com.insacosa.presentation.InmoblesFinder;
import com.insacosa.presentation.ProvinciesFinder;
import com.insacosa.presentation.SolicitudsFinder;
import com.insacosa.presentation.TipusFinder;
import com.insacosa.presentation.UsuarisFinder;
import com.insacosa.vo.CiutatsForm;
import com.insacosa.vo.InmobleForm;
import com.insacosa.vo.ProvinciesForm;
@ManagedBean
@SessionScoped
public class FilterBeanInmobles implements Serializable {   
 
  // FinderS (lectura)
  //---------------------
  
    @Inject
    private SolicitudsFinder solicitudsFinder;
    @Inject
    private TipusFinder tipusFinder;
    @Inject
    private InmoblesFinder inmoblesFinder;
    @Inject
    private CiutatsFinder ciutatsFinder;
    @Inject
    private ProvinciesFinder provinciesFinder;
    @Inject
    private UsuarisFinder usuarisFinder;
   
 
  private static final long serialVersionUID = -5680001353441022183L;    


private String nomFilter;
private int habitacionsFilter;
private int banysFilter;
// combos
private String localitatFilter;
private String provinciaFilter;
private Key tipusFilter;

private int metresFilter;
private int preuFilter;

public String getNomFilter() {
  return nomFilter;
}
public void setNomFilter(String nomFilter) {
  this.nomFilter = nomFilter;
}
public String getLocalitatFilter() {
  return localitatFilter;
}
public void setLocalitatFilter(String localitatFilter) {
  this.localitatFilter = localitatFilter;
}
public String getProvinciaFilter() {
  return provinciaFilter;
}
public void setProvinciaFilter(String provinciaFilter) {
  this.provinciaFilter = provinciaFilter;
}
public Key getTipusFilter() {
  return tipusFilter;
}
public void setTipusFilter(Key tipusFilter) {
  this.tipusFilter = tipusFilter;


/*
public Filter<?> getHabitacionsFilterImpl() {   
 
  return new Filter<InmobleForm>() {            
    public boolean accept(InmobleForm item) {                
      int habitacions = getHabitacionsFilter();                
      if (habitacions == 0 || habitacions >=item.getHabitacions())  {                   
        return true;                
        }                
      return false;            
  }        
};    
}
*/
/*
public Filter<?> getBanysFilterImpl() {   
 
  return new Filter<InmobleForm>() {            
    public boolean accept(InmobleForm item) {                
      int banys = getBanysFilter();                
      if (banys == 0 || banys >=item.getBanys())  {                   
        return true;                
        }                
      return false;            
  }        
};    
}
*/

public Filter<?> getMetresFilterImpl() {   
 
  return new Filter<InmobleForm>() {            
    public boolean accept(InmobleForm item) {                
      int metres = getMetresFilter();                
      if (metres == 0 || metres >=item.getMetres())  {                   
        return true;                
        }                
      return false;            
  }        
};    
}


public Filter<?> getPreuFilterImpl() {   
 
  return new Filter<InmobleForm>() {            
    public boolean accept(InmobleForm item) {                
      int preu = getPreuFilter();                
      if (preu == 0 || preu >=item.getPreu())  {                   
        return true;                
        }                
      return false;            
  }        
};    
}
/*
public Filter<?> getFilterTipus() { 
 
  return new Filter<InventoryItem>() {            
  public boolean accept(InventoryItem t) {                
    String tipus = getTipusFilter();                
    if (tipus == null || tipus.length() == 0 || tipus.equals(t.getTipus())) {                    
      return true;                
    }                
    return false;            
  }        
  };    
}
*/

public int getMetresFilter() {
  return metresFilter;
}
public int getHabitacionsFilter() {
  return habitacionsFilter;
}
public void setHabitacionsFilter(int habitacionsFilter) {
  this.habitacionsFilter = habitacionsFilter;
}
public int getBanysFilter() {
  return banysFilter;
}
public void setBanysFilter(int banysFilter) {
  this.banysFilter = banysFilter;
}
public void setMetresFilter(int metresFilter) {
  this.metresFilter = metresFilter;
}
public int getPreuFilter() {
  return preuFilter;
}
public void setPreuFilter(int preuFilter) {
  this.preuFilter = preuFilter;
}


/*
* Al cambiar el valor de la provincia construim la combo de les ciutats
* de la provincia en questio
*/
public void cambiarProvincia(ValueChangeEvent event)
{
 
  FacesContext context = FacesContext.getCurrentInstance();
  CiutatsForm ciutatsForm = (CiutatsForm) context.getApplication().evaluateExpressionGet(context, "#{ciutats}", CiutatsForm.class);
  ProvinciesForm provinciesForm = (ProvinciesForm) context.getApplication().evaluateExpressionGet(context, "#{provincies}", ProvinciesForm.class);
 
  List<SelectItem> novesCiutats = ciutatsForm.getCiutats();
  novesCiutats.clear();
 
  //Inmoble_Impl r = new Inmoble_Impl();
 
   if (null != event.getNewValue())
   {                
    Provincies provincia = new Provincies();
   
    // Recuperem l'objecte Provincia que hem seleccionat
    provincia = provinciesFinder.provinciaPerKey((String)event.getNewValue());
   
    // Actualitzem les ciutats de la provincia seleccionada   
    Iterator<Ciutats> iter = ciutatsFinder.ciutatsProvincia(provincia).iterator();
    while (iter.hasNext())
    {
      Ciutats ciutatHBM = (Ciutats)(iter.next())
     
      SelectItem item = new SelectItem(ciutatHBM.getEntityId(), ciutatHBM.getName() , "", false, false);
                        
      // hem de modificar també el combi de ciutats del formulari d'entrada
      novesCiutats.add(item);
     
    }
   

    // Modifiquem la provincia  i localitat dels corresponents filtres
    setLocalitatFilter((String) novesCiutats.get(0).getValue());
    setProvinciaFilter(provincia.getProvinciaKey());
   
    // actualitzem el necessari per actualitzar els combos de la ciutat i provincia del formulari d'entrada
    //inmobleForm.setProvincia(provincia.getId());
    ///////inmobleForm.setProvinciaStr(provincia.getName());
    provinciesForm.setValorActual(provincia.getProvinciaKey());
    ciutatsForm.setValorActual((String) novesCiutats.get(0).getValue());
    
      }
 
   
}



/*
* Al cambiar el valor de la provincia construim la combo de les ciutats
* de la provincia en questio
*/
public void cambiarCiutat(ValueChangeEvent event)
{
 
  FacesContext context = FacesContext.getCurrentInstance();
  CiutatsForm ciutatsForm = (CiutatsForm) context.getApplication().evaluateExpressionGet(context, "#{ciutats}", CiutatsForm.class);
 

   if (null != event.getNewValue())
   {                
     ciutatsForm.setValorActual((String) event.getNewValue());
    
      }
   
}



}
TOP

Related Classes of com.insacosa.utils.FilterBeanInmobles

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.