Пример #1
0
        /// <summary>
        /// Metodo que añade un nuevo contacto a la base de datos a partir de un objeto contacto de tipo ContactoData
        /// </summary>
        /// <param name="contacto"></param>
        /// <returns></returns>
        public int AddContacto(ContactoData contacto)
        {
            if (contacto == null) return -1;
            if (contacto.nif == "" || contacto.nombre == "") return -1;

            try
            {
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    Contacto nueva = new Contacto();

                    nueva.idContacto = contacto.idContacto;
                    nueva.nif = contacto.nif;
                    nueva.nombre = contacto.nombre;
                    nueva.idEmpresa = contacto.idEmpresa;

                    bd.Contacto.Add(nueva);
                    bd.SaveChanges();
                    return nueva.idContacto;
                }
            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("Error SQL: " + ex.Message, new FaultCode("SQL"));

                throw fault;
            }
            catch (Exception ex)
            {
                FaultException fault = new FaultException("Error: " + ex.Message, new FaultCode("General"));

                throw fault;
            }
        }
Пример #2
0
        /// <summary>
        /// Metodo que a partir de un objeto e id me edita un contacto
        /// </summary>
        /// <param name="contacto"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public int EditContacto(ContactoData contacto, int id)
        {
            try
            {
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    var consulta = from contact in bd.Contacto
                                   where contact.idContacto == id
                                   select contact;

                    Contacto nueva = consulta.First();

                    nueva.idContacto = contacto.idContacto;
                    nueva.idEmpresa = contacto.idEmpresa;
                    nueva.nif = contacto.nif;
                    nueva.nombre = contacto.nombre;

                    bd.SaveChanges();
                    return nueva.idContacto;
                }
            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("Error SQL: " + ex.Message, new FaultCode("SQL"));

                throw fault;
            }
            catch (Exception ex)
            {
                FaultException fault = new FaultException("Error: " + ex.Message, new FaultCode("General"));

                throw fault;
            }
        }
Пример #3
0
        /// <summary>
        /// Metodo que elimina un contacto a partir de un objeto contacto de tipo ContactoData y de un id
        /// </summary>
        /// <returns></returns>
        public bool DeleteContacto(ContactoData contacto, int id)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var resultado = from contact in db.Contacto
                                    where (contact.idContacto == id)
                                    select contact;

                    // eliminamos los telefonos, emails y direcciones asociados al contacto
                    foreach (Telefono t in resultado.First().Telefono)
                    {
                        db.Telefono.Remove(t);
                    }
                    foreach (Email e in resultado.First().Email)
                    {
                        db.Email.Remove(e);
                    }
                    foreach (Direccion d in resultado.First().Direccion)
                    {
                        db.Direccion.Remove(d);
                    }

                    db.Contacto.Remove(resultado.First()); // Borra el objeto

                    db.SaveChanges(); // Se guarda los campios realizados
                    return true;
                }
            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("ERROR SQL: " + ex.Message,
                                                            new FaultCode("SQL"));
                throw fault;
            }
            catch (Exception ex)
            {
                FaultException fault = new FaultException("ERROR: " + ex.Message,
                                                            new FaultCode("GENERAL"));
                throw fault;
            }
        }
Пример #4
0
        /// <summary>
        /// Permite insertar un teléfono que no exista en la base de datos. Como el teléfono está relacionado obligatoriamente con una empresa o un contacto uno de los dos parámetros será null.
        /// </summary>
        /// <param name="t">Teléfono a insertar.</param>
        /// <param name="empData">Empresa a la que pertenece el teléfono a insertar.</param>
        /// <param name="conData">Contacto al que pertenece el teléfono a insertar.</param>
        /// <returns>True si se ha insertado.</returns>
        public int AddTelefono(TelefonoData t, EmpresaData empData, ContactoData conData)
        {
            if (t == null) return -1;
            if (empData == null && conData == null) return -1;
            if (empData != null && conData != null) return -1;

            try
            {
                int id;
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    Telefono telefono = new Telefono()
                    {
                        idTelefono = t.idTelefono,
                        numero = t.numero,
                    };

                    if (empData != null)
                    {
                        var datos = from empresas in bd.Empresa
                                    where empresas.idEmpresa == empData.EmpresaID
                                    select empresas;
                        telefono.Empresa.Add(datos.First());
                    }
                    else
                    {
                        var datos = from contactos in bd.Contacto
                                    where contactos.idContacto == conData.idContacto
                                    select contactos;
                        telefono.Contacto.Add(datos.First());
                    }

                    bd.Telefono.Add(telefono);
                    bd.SaveChanges();
                    return telefono.idTelefono;
                }
            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("ERROR SQL: " + ex.Message, new FaultCode("SQL"));
                throw fault;
            }
            catch (Exception ex)
            {
                FaultException fault = new FaultException("ERROR: " + ex.Message, new FaultCode("GENERAL"));
                throw fault;
            }
        }
Пример #5
0
        /// <summary>
        /// Método que devuelve un contacto segun su nif.
        /// </summary>
        /// <param name="nif"></param>
        /// <returns></returns>
        public ContactoData getContactoNif(string nif)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var resulta = from contacto in db.Contacto
                                  where contacto.nif == nif
                                  select contacto;

                    if (resulta.ToList().Count == 0) return null;
                    foreach (Contacto em in resulta)
                    {
                        ContactoData cntData = new ContactoData()
                        {
                            idEmpresa = Convert.ToInt32(em.idEmpresa),
                            idContacto = em.idContacto,
                            nif = em.nif,
                            nombre = em.nombre
                        };

                        return cntData;
                    }

                    return null;
                }

            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("EError SQL" + ex.Message, new FaultCode("SQL"));

                throw fault;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message, new FaultCode(""));
            }
        }
Пример #6
0
        /********************************************************************/
        /*******************************LUISMI*******************************/
        /********************************************************************/
        /***************************************************************
        ****Métodos tabla Email.
         *AddEmail -- Añadir ,
         *getAllEmail -- Devuelve todos los registros
         *getEmail -- Devuelve un registro concreto de la tabla Email
         *deleteEmail -- Elimina un registro de la tabla según su identificador
         *editEmail -- Modificacion de un registro concreto
        ***************************************************************/
        /// <summary>
        /// /// Permite insertar un email que no exista en la base de datos. Como el Email está relacionado obligatoriamente con una empresa o un contacto uno de los dos parámetros será null.
        /// </summary>
        /// <param name="correo"></param>
        /// <param name="empData"></param>
        /// <param name="conData"></param>
        /// <returns></returns>
        public int addEmail(string correo, EmpresaData empData, ContactoData conData)
        {
            int indice = -1;

            if (correo == "" || correo == null || empData == null && conData == null) return -1;

            try
            {
                Email p = new Email();
                p.correo = correo;

                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    if (empData != null)
                    {
                        var datos = from empresas in db.Empresa
                                    where empresas.idEmpresa == empData.EmpresaID
                                    select empresas;
                        p.Empresa.Add(datos.First());
                    }
                    else
                    {
                        var datos = from contactos in db.Contacto
                                    where contactos.idContacto == conData.idContacto
                                    select contactos;
                        p.Contacto.Add(datos.First());
                    }

                    db.Email.Add(p);
                    db.SaveChanges();

                    indice = p.idEmail;

                    return indice;
                }
            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("EError SQL" + ex.Message, new FaultCode("SQL"));

                throw fault;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message, new FaultCode("ERROR SERVICIO LISTADO DE EMAILS"));
            }
        }
Пример #7
0
        /************************FIN Empresa ****************************************/
        /************************Contactos***********************************/
        public List<ContactoData> filtrosContacto(string nif, string nombre, int idEmpresa)
        {
            List<ContactoData> datos = new List<ContactoData>();
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    //nif
                    if (nif != null && nombre == null)
                    {
                        var resulta = from contacto in db.Contacto
                                      where contacto.nif == nif && contacto.Empresa.idEmpresa == idEmpresa
                                      select contacto;

                        foreach (Contacto em in resulta)
                        {
                            ContactoData cntData = new ContactoData()
                            {
                                idEmpresa = Convert.ToInt32(em.idEmpresa),
                                idContacto = em.idContacto,
                                nif = em.nif,
                                nombre = em.nombre
                            };

                            datos.Add(cntData);
                        }
                        return datos;
                    }

                    //email
                    if (nif == null && nombre != null)
                    {
                        var resulta = from contacto in db.Contacto
                                      where contacto.nombre.Contains(nombre) && contacto.Empresa.idEmpresa == idEmpresa
                                      select contacto;

                        foreach (Contacto em in resulta)
                        {
                            ContactoData cntData = new ContactoData()
                            {
                                idEmpresa = Convert.ToInt32(em.idEmpresa),
                                idContacto = em.idContacto,
                                nif = em.nif,
                                nombre = em.nombre
                            };

                            datos.Add(cntData);
                        }
                        return datos;
                    }

                    //email y nombre
                    if (nif != null && nombre != null)
                    {
                        var resulta = from contacto in db.Contacto
                                      where contacto.nombre.Contains(nombre) && contacto.nif == nif && contacto.Empresa.idEmpresa == idEmpresa
                                      select contacto;

                        foreach (Contacto em in resulta)
                        {
                            ContactoData cntData = new ContactoData()
                            {
                                idEmpresa = Convert.ToInt32(em.idEmpresa),
                                idContacto = em.idContacto,
                                nif = em.nif,
                                nombre = em.nombre
                            };

                            datos.Add(cntData);
                        }
                        return datos;
                    }

                    return datos;
                }

            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("EError SQL" + ex.Message, new FaultCode("SQL"));

                throw fault;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message, new FaultCode(""));
            }
        }
Пример #8
0
        /***************************************************************
           *******************************FIN EMAIL-CONTACTO********************
           ***************************************************************/
        /********************************************************************/
        /*******************************FIN LUISMI***************************/
        /********************************************************************/
        /********************************************************************/
        /*******************************JORGE********************************/
        /********************************************************************/
        /***************************************************************
        ****************************  Direccion ************************
        ***************************************************************/
        /// <summary>
        /// Metodo que añade un objeto street de tipo DireccionData a la bd
        /// </summary>
        /// <param name="street"></param>
        /// <returns></returns>
        public int AddDireccion(DireccionData t, EmpresaData empData, ContactoData conData)
        {
            if (t == null) return -1;
            if (empData == null && conData == null) return -1;
            if (empData != null && conData != null) return -1;

            try
            {
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    Direccion nueva = new Direccion();

                    nueva.idDireccion = t.idDireccion;
                    nueva.domicilio = t.domicilio;
                    nueva.poblacion = t.poblacion;
                    nueva.provincia = t.provincia;
                    nueva.codPostal = t.codPostal;

                    if (empData != null)
                    {
                        var datos = from empresas in bd.Empresa
                                    where empresas.idEmpresa == empData.EmpresaID
                                    select empresas;
                        nueva.Empresa.Add(datos.First());
                    }
                    else
                    {
                        var datos = from contactos in bd.Contacto
                                    where contactos.idContacto == conData.idContacto
                                    select contactos;
                        nueva.Contacto.Add(datos.First());
                    }

                    bd.Direccion.Add(nueva);
                    bd.SaveChanges();
                    return nueva.idDireccion;
                }
            }
            catch (SqlException ex)
            {
                FaultException fault = new FaultException("Error SQL: " + ex.Message, new FaultCode("SQL"));

                throw fault;
            }
            catch (Exception ex)
            {
                FaultException fault = new FaultException("Error: " + ex.Message, new FaultCode("General"));

                throw fault;
            }
        }