示例#1
0
        /********************************************************************/
        /*****************************FIN IVAN*******************************/
        /********************************************************************/
        /********************************************************************/
        /*****************************MIGUEL*********************************/
        /********************************************************************/
        /// <summary>
        /// Método que añade una accion comercial a la base de datos
        /// </summary>
        /// <param name="accion"> Objeto usuario a añadir en la base de datos</param>
        /// <returns>Devuelve true si se ha añadido el registro correctamente. False si no.</returns>
        public int addAccionComercial(AccionComercialData accion)
        {
            if (accion == null) return -1;
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    AccionComercial nuevo = new AccionComercial();
                    nuevo.descripcion = accion.descripcion;
                    nuevo.comentarios = accion.comentarios;
                    nuevo.fechaHora = accion.fechaHora;
                    nuevo.idUsuario = accion.idUsuario;
                    nuevo.idTipoAccion = accion.idTipoAccion;
                    nuevo.idEstadoAccion = accion.idEstadoAccion;
                    nuevo.idEmpresa = accion.idEmpresa;

                    db.AccionComercial.Add(nuevo);
                    db.SaveChanges();
                    return nuevo.idAccion;
                }
            }
            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ñ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;
            }
        }
示例#3
0
        /// <summary>
        /// Método que edita una accion comercial de un registro de la tabla AccionComercial
        /// </summary>
        /// <param name="idAccion">Identificador de la accion comercial a editar.</param>
        /// <param name="action">Objeto accion que contiene los datos a modificar</param>
        /// <returns>Devuelve true si se ha modificado el registro correctamente. False si no.</returns>
        public int editAccionComercial(AccionComercialData accion)
        {
            if (accion == null) return -1;
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consulta = from action in db.AccionComercial
                                   where action.idAccion == accion.idAccion
                                   select action;

                    if (consulta.ToList().Count == 0)
                    {
                        return -1;
                    }

                    AccionComercial a = consulta.First();

                    a.descripcion = accion.descripcion;
                    a.comentarios = accion.comentarios;
                    a.fechaHora = accion.fechaHora;
                    a.idUsuario = accion.idUsuario;
                    a.idTipoAccion = accion.idTipoAccion;
                    a.idEstadoAccion = accion.idEstadoAccion;
                    a.idEmpresa = accion.idEmpresa;

                    db.SaveChanges();
                    return a.idAccion;
                }
            }
            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>
        /// Método que elimina un registro usuario de la tabla Usuario
        /// </summary>
        /// <param name="idUsuario">identificador único de un registro usuario</param>
        /// <returns>Devuelve true si se ha eliminado correctamente y false si no.</returns>
        public bool deleteUsuario(int idUsuario)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consulta = from usuario in db.Usuario
                                   where usuario.idUsuario == idUsuario
                                   select usuario;

                    Usuario u = consulta.First();

                    db.Usuario.Remove(u);
                    db.SaveChanges();
                    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;
            }
        }
示例#5
0
        /// <summary>
        /// Permite eliminar un teléfono de la base de datos.
        /// </summary>
        /// <param name="t">El teléfono a eliminar</param>
        /// <returns>True si lo elimina, false si no.</returns>
        public bool DeleteTelefono(int idTelefono)
        {
            try
            {
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    var datos = from telefonos in bd.Telefono
                                where telefonos.idTelefono == idTelefono
                                select telefonos;

                    bd.Telefono.Remove(datos.First());
                    bd.SaveChanges();
                    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;
            }
        }
示例#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
        /// <summary>
        /// Permite editar un teléfono que 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">El teléfono a editar.</param>
        /// <returns>True si se ha editado.</returns>
        public int EditTelefono(TelefonoData t)
        {
            if (t == null) return -1;

            try
            {
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    var data = from telefonos in bd.Telefono
                               where telefonos.idTelefono == t.idTelefono
                               select telefonos;

                    Telefono telefono = data.First();
                    telefono.numero = t.numero;

                    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;
            }
        }
示例#8
0
        /// <summary>
        /// Método que edita el campo correo de un registro de la tabla email
        /// </summary>
        /// <param name="id">Identificador del email a editar po modificar.</param>
        /// <param name="correo">Correo a modificar.</param>
        /// <returns>Devuelve true si se ha editado correctamente el registro, False si no.</returns>
        public bool editEmail(int id, string correo)
        {
            if (id == null) return false;
            if (correo == null) return false;
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consult = from co in db.Email
                                  where co.idEmail == id
                                  select co;

                    if (consult.ToList().Count == 0) return false;
                    Email mailMod = consult.First();

                    mailMod.correo = correo;
                    db.SaveChanges();

                    return true;

                }

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

                throw fault;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message, new FaultCode("ERROR SERVICIO LISTADO DE EMAILS"));
            }
        }
示例#9
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;
            }
        }
示例#10
0
        /// <summary>
        /// Método que elimina un registro accion comercial de la tabla AccionComercial
        /// </summary>
        /// <param name="idAccion">identificador único de un registro accion comercial</param>
        /// <returns>Devuelve true si se ha eliminado correctamente y false si no.</returns>
        public bool deleteAccionComercial(int idAccion)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consulta = from accion in db.AccionComercial
                                   where accion.idAccion == idAccion
                                   select accion;

                    AccionComercial a = consulta.First();
                    db.AccionComercial.Remove(a);
                    db.SaveChanges();
                    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;
            }
        }
示例#11
0
        /***************************************************************
        ******************  Fin Estado de accion ***********************
        ****************************************************************/
        /***************************************************************
         *                      Usuario
         ***************************************************************/
        /// <summary>
        /// Método que añade un usuario a la base de datos
        /// </summary>
        /// <param name="usuario"> Objeto usuario a añadir en la base de datos</param>
        /// <returns>Devuelve true si se ha añadido el registro correctamente. False si no.</returns>
        public int addUsuario(UsuarioData usuario)
        {
            if (usuario == null) return -1;
            if (usuario.login == "" || usuario.password == "") return -1;
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    Usuario nuevo = new Usuario();
                    nuevo.login = usuario.login;
                    nuevo.nombre = usuario.nombre;
                    nuevo.password = PasswordManager.getMD5(usuario.password);

                    db.Usuario.Add(nuevo);
                    db.SaveChanges();
                    return nuevo.idUsuario;
                }
            }
            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;
            }
        }
示例#12
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;
            }
        }
示例#13
0
        /***************************************************************
        *******************************FIN EMAIL************************
        ***************************************************************/
        /// <summary>
        /// Método que añade un nuevo registro en la tabla Empresa
        /// </summary>
        /// <param name="cif">Cif de la empresa a insertar</param>
        /// <param name="nombreComercial">Nombre Comercial de la empresa a insertar</param>
        /// <param name="razon">Razón Social de la empresa a insertar</param>
        /// <param name="web">Página Web de la empresa a insertar</param>
        /// <param name="sector">Identificador de sector de la empresa a insertar</param>
        /// <returns>Devuelve True, si se ha insertado correctamente. Devuelve False si no.</returns>
        public int addEmpresa(string cif, string nombreComercial, string razon, string web, int sector)
        {
            int indice = -1;
            if (cif == "" || nombreComercial == "" || razon == "" || sector == -1) return -1;
            try
            {
                Empresa emp = new Empresa();
                emp.cif = cif;
                emp.nombreComercial = nombreComercial;
                emp.razonSocial = razon;
                emp.web = web;
                emp.idSector = sector;

                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consult = from sect in db.Sector
                                  where sect.idSector == sector
                                  select sect;

                    //si no existe el sector
                    if (consult.ToList().Count == 0) return -1;

                    db.Empresa.Add(emp);
                    db.SaveChanges();
                    indice = emp.idEmpresa;
                }

                return indice;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message, new FaultCode("ERROR SERVICIO AÑADIR EMAIL"));
            }
        }
示例#14
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;
            }
        }
示例#15
0
        /// <summary>
        /// Metodo que a partir de un objeto y un id elimina una direccion.
        /// </summary>
        /// <param name="street"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public bool DeleteDireccion(int id)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var resultado = from calle in db.Direccion
                                    where (calle.idDireccion == id)
                                    select calle;

                    foreach (var calle in resultado) // Un foreach que elimina la fila completa
                    {
                        db.Direccion.Remove(calle); // 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;
            }
        }
示例#16
0
        /// <summary>
        /// Meotodo que a partir  de un objeto street de tipo DireccionData y un id me borra un registro de la BD
        /// </summary>
        /// <param name="street"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public int EditDireccion(DireccionData street)
        {
            if (street == null) return -1;
            try
            {
                using (GestionEmpresasEntities bd = new GestionEmpresasEntities())
                {
                    var consulta = from calle in bd.Direccion
                                   where calle.idDireccion == street.idDireccion
                                   select calle;

                    Direccion nueva = consulta.First();

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

                    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;
            }
        }
示例#17
0
        /// <summary>
        /// Método que elimina un registro email de la tabla Email
        /// </summary>
        /// <param name="idEmail">identificador único de un registro email</param>
        /// <returns>Devuelve true si se ha eliminado correctamente y false si no.</returns>
        public bool deleteEmail(int idEmail)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consult = from correo in db.Email
                                  where correo.idEmail == idEmail
                                  select correo;

                    //si el objeto es nulo
                    if (idEmail == null) return false;
                    if (consult.ToList().Count == 0) return false; //si no devuelve ningun resultado.

                    Email email = consult.First();

                    db.Email.Remove(email);
                    db.SaveChanges();

                }
                return true;
            }
            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"));
            }
        }
示例#18
0
        /// <summary>
        /// Método que edita una empresa 
        /// </summary>
        /// <param name="idEmpresa">Identificador de la empresa a modificar</param>
        /// <param name="cif">Cif de la empresa modificada</param>
        /// <param name="nombreComercial">Nombre Comercial de la nueva empresa</param>
        /// <param name="razon">Razón Social de la nueva empresa</param>
        /// <param name="web">Web de la empresa a modificar</param>
        /// <param name="idSector">Sector de la empresa a modificar</param>
        /// <returns>Devuelve true si se ha modificado correctamente.</returns>
        public bool editEmpresa(int idEmpresa, string cif, string nombreComercial, string razon, string web, int idSector)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consult = from em in db.Empresa
                                  where em.idEmpresa == idEmpresa
                                  select em;

                    Empresa empMod = consult.First();

                    empMod.idEmpresa = idEmpresa;
                    empMod.cif = cif;
                    empMod.nombreComercial = nombreComercial;
                    empMod.razonSocial = razon;
                    empMod.web = web;
                    empMod.idSector = idSector;

                    db.SaveChanges();

                    return true;

                }
            }
            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"));
            }
        }
示例#19
0
        /// <summary>
        /// Método que elimina un registro empresa de la tabla Empresa
        /// </summary>
        /// <param name="idEmpresa"></param>
        /// <returns></returns>
        public bool deleteEmpresa(int idEmpresa)
        {
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consult = from emp in db.Empresa
                                  where emp.idEmpresa == idEmpresa
                                  select emp;

                    Empresa empe = consult.First();

                    //eliminamos los telefonos, emails y direcciones asociados a la empresa
                    int tamanoTel=empe.Telefono.Count;
                    for (int i = 0; i <tamanoTel ; i++)
                    {
                        db.Telefono.Remove((empe.Telefono.First()));
                    }

                    int tamanoMail = empe.Email.Count;
                    for (int i = 0; i < tamanoMail; i++)
                    {
                        db.Email.Remove((empe.Email.First()));
                    }

                    int tamanoDir = empe.Direccion.Count;
                    for (int i = 0; i < tamanoDir; i++)
                    {
                        db.Direccion.Remove((empe.Direccion.First()));
                    }

                    // eliminamos los contactos asociados a la empresa y sus respectivos telefonos, emails y direcciones

                    int numContacto=empe.Contacto.Count;
                    for (int i = 0; i < numContacto;i++ )
                    {
                        int numConTel=empe.Contacto.ElementAt(i).Telefono.Count;
                        int numConMail = empe.Contacto.ElementAt(i).Email.Count;
                        int numConDir = empe.Contacto.ElementAt(i).Direccion.Count;

                        for (int j = 0; j < numConTel; j++)
                        {
                            db.Telefono.Remove((empe.Contacto.ElementAt(i).Telefono.First()));
                        }
                        for (int k = 0; k < numConMail; k++)
                        {
                            db.Email.Remove((empe.Contacto.ElementAt(i).Email.First()));
                        }
                        for (int l = 0; l < numConDir; l++)
                        {
                            db.Direccion.Remove((empe.Contacto.ElementAt(i).Direccion.First()));
                        }

                        db.Contacto.Remove(empe.Contacto.First());
                    }

                       /* foreach (Contacto cont in empe.Contacto)
                        {
                            int tamanoConTel = cont.Telefono.Count;
                            int tamanoConMail = cont.Email.Count;
                            int tamanoConDir = cont.Direccion.Count;

                            for (int i = 0; i < tamanoConTel; i++)
                            {
                                db.Telefono.Remove((cont.Telefono.First()));
                            }
                            for (int i = 0; i < tamanoConMail; i++)
                            {
                                db.Email.Remove((cont.Email.First()));
                            }
                            for (int i = 0; i < tamanoConDir; i++)
                            {
                                db.Direccion.Remove((cont.Direccion.First()));
                            }

                        }*/

                    // eliminamos las acciones comerciales asociadas a la empresa
              /*      for (int i = 0; i < empe.AccionComercial.Count;i++)
                    {
                        empe.AccionComercial.Remove(empe.AccionComercial.ElementAt(i));
                    }
                       /* foreach (AccionComercial ac in empe.AccionComercial)
                        {
                            //deleteAccionComercial(ac.idAccion);
                            empe.AccionComercial.Remove(ac);
                        }*/

                    // eliminamos la empresa
                    db.Empresa.Remove(empe);

                    db.SaveChanges();

                }
                return true;
            }
            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"));
            }
        }
示例#20
0
        /// <summary>
        /// Método que edita un usuario de un registro de la tabla Usuario
        /// </summary>
        /// <param name="id">Identificador del usuario a editar.</param>
        /// <param name="correo">Objeto usuario que contiene los datos a modificar</param>
        /// <returns>Devuelve true si se ha modificado el registro correctamente. False si no.</returns>
        public int editUsuario(int idUsuario, UsuarioData user)
        {
            if (user == null) return -1;
            if (idUsuario < 0) return -1;
            if (user.login == "" || user.password == "") return -1;
            try
            {
                using (GestionEmpresasEntities db = new GestionEmpresasEntities())
                {
                    var consulta = from usuario in db.Usuario
                                   where usuario.idUsuario == idUsuario
                                   select usuario;

                    Usuario u = consulta.First();
                    u.idUsuario = idUsuario;
                    u.login = user.login;
                    u.nombre = user.nombre;
                    u.password = PasswordManager.getMD5(user.password);
                    db.SaveChanges();
                    return u.idUsuario;
                }
            }
            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;
            }
        }
示例#21
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;
            }
        }