/// <summary> /// Agregar nuevo dispositivo. /// </summary> /// <param name="dispositivo">Objeto dispositivo del modelo DispositivosModel.</param> /// <returns></returns> internal RespuestaBase AgregarDispositivo(DispositivosModel dispositivo) { log.Info("Llamada al metodo"); RespuestaBase respuesta = new RespuestaBase(); try { dispositivo.registro = dispositivo.registro != null ? dispositivo.registro : DateTime.Now; DISPOSITIVO new_dispositivo = BaseModel.GetModel <DISPOSITIVO>(dispositivo, new DISPOSITIVO()); DispositivosRepository.AgregarDispositivo(new_dispositivo); if (new_dispositivo.id != 0) { dispositivo.id = new_dispositivo.id; respuesta.Datos = dispositivo; if (dispositivo.Componentes.Count > 0) { foreach (ComponentesModel componenete in dispositivo.Componentes) { COMPONENTE new_componenete = BaseModel.GetModel <COMPONENTE>(componenete, new COMPONENTE()); if (new_componenete.nombre != null) { try { new_componenete.registro = DateTime.Now; new_componenete.dispositivo_id = new_dispositivo.id; ComponentesRepository.AgregarComponente(new_componenete); componenete.registro = new_componenete.registro; componenete.id = new_componenete.id; componenete.dispositivo_id = new_dispositivo.id; } catch (Exception ex) { respuesta.Mensaje += " " + ex.Message; log.Error(respuesta.Mensaje, ex); } } } } } else { string mensaje = String.Format("No fue posible agregar nuevo dispositivo nombre-->{0}.", dispositivo.nombre); respuesta.Estatus = false; respuesta.Mensaje += " " + mensaje; log.Error(mensaje); } } catch (Exception ex) { respuesta.Mensaje += " " + ex.Message; respuesta.Estatus = false; log.Error(respuesta.Mensaje, ex); } return(respuesta); }
/// <summary> /// Agrega nuevo dispositivo. /// </summary> /// <param name="new_dispositivo">Nuevo objeto dispositivo de la tabla DISPOSITIVOS</param> /// <returns></returns> internal static DISPOSITIVO AgregarDispositivo(DISPOSITIVO new_dispositivo) { log.Info("Llamada al metodo"); using (play0dbEntities dbEntities = new play0dbEntities()) { DISPOSITIVO existe_dispositivo = dbEntities.DISPOSITIVOS.Where(x => x.nombre == new_dispositivo.nombre).Select(s => s).FirstOrDefault(); if (existe_dispositivo != null) { throw new ArgumentException(string.Format("Ya existe un dispositivo con el nombre {0}", new_dispositivo.nombre)); } dbEntities.DISPOSITIVOS.Add(new_dispositivo); dbEntities.SaveChanges(); if (new_dispositivo.id != 0) { return(new_dispositivo); } else { throw new Exception(string.Format("No fue posible guardar un nuevo dispositivo {0}.", new_dispositivo.nombre)); } } }