package negocios; import java.io.IOException; import java.util.Calendar; import java.util.Collection; import java.util.List; import javax.mail.MessagingException; import javax.naming.NamingException; import negocios.excepciones.EntidadNoExiste; import persistencia.Categoria; import persistencia.Empresa; import persistencia.Evento; import persistencia.Local; import persistencia.Oferta; @javax.ejb.Local public interface GestionEmpresas { public boolean chechLogin(String email, String password); public void agregarEmpresa(Empresa empresa) throws MessagingException; public Empresa modifciarEmpresa(Empresa empresa) throws EntidadNoExiste; public void agregarLocal(int idEmpresa, Local local) throws EntidadNoExiste; public void modificarLocal(Local local); public Empresa obtenerEmpresa(int id); public Empresa obtenerEmpresaPorMail(String mail); public List<Empresa> obtenerTodasLasEmpresas(); public List<Local> obtenerLocalesDeEmpresa(int idEmpresa) throws EntidadNoExiste; public void borrarEmpresa(int id) throws EntidadNoExiste; public void borrarLocal(int id) throws EntidadNoExiste; public void agregarOferta(int idLocal, Oferta oferta) throws EntidadNoExiste; public void altaCategoria(Categoria categoria); public List<Categoria> obtenerCategorias(); public List<Categoria> obtenerCategoriasDeSitioInteres(int idServicio); public int altaEvento(Evento evento); public List<Evento> obtenerEventos(Calendar desdeFecha); public Evento obtenerEvento(int idEvento); public Local obtenerLocal(int idLocal); public void agregarCategoriasOferta(int idOferta, Collection<Integer> idCategorias); public void borrarCategoriasOferta(int idOferta, Collection<Integer> idCategorias); public List<Oferta> obenerTodasLasOfertas(); public long obtenerCantPagosDeOferta(int idOferta, Calendar desde, Calendar hasta); void modificarEvento(Evento evento); public Oferta obtenerOferta(int idOferta); public List<Categoria> obtenerCategoriasOferta(int idOferta); public void modificarOferta(Oferta oferta); public List<Categoria> obtenerCategoriasEvento(int idEvento); public void agregarCategoriasEvento(int idEvento, Collection<Integer> idCategorias); public void borrarCategoriasEvento(int idEvento, Collection<Integer> idCategorias); public List<Oferta> obtenerOfertasDeLocal(int idLocal); }