/// <summary> /// Metodo para agregar los Acuerdos de una Minuta a la BD /// </summary> /// <param name="paramtreo">Parametro del tipo generico (clase Entidad) que representa el acuerdo a agregar</param> /// <returns>Retorna un boolean para saber si se realizo con exito o no la operación</returns> public bool AgregarAcuerdo(Entidad parametro, int idMinuta, string idProyecto) { Acuerdo elAcuerdo = (Acuerdo)parametro; Fabrica.FabricaDAOSqlServer laFabrica = new FabricaDAOSqlServer(); IntefazDAO.Modulo8.IDaoInvolucradosMinuta DAOInvolucradosMinuta = laFabrica.ObtenerDAOInvolucradosMinuta(); bool success = false; List<Parametro> parametros = new List<Parametro>(); Parametro elParametro = new Parametro(RecursosBDModulo8.ParametroFechaAcuerdo, SqlDbType.DateTime, elAcuerdo.Fecha.ToString("yyyy-MM-dd HH':'mm':'ss"), false); parametros.Add(elParametro); elParametro = new Parametro(RecursosBDModulo8.ParametroDesarrolloAcuerdo, SqlDbType.VarChar, elAcuerdo.Compromiso, false); parametros.Add(elParametro); elParametro = new Parametro(RecursosBDModulo8.ParametroIDMinuta, SqlDbType.Int, idMinuta.ToString(), false); parametros.Add(elParametro); DataTable resultado = new DataTable(); try { resultado = EjecutarStoredProcedureTuplas(RecursosBDModulo8.ProcedimientoAgregarAcuerdo, parametros); foreach (DataRow row in resultado.Rows) { if (elAcuerdo.ListaContacto != null) { foreach (Contacto contacto in elAcuerdo.ListaContacto) { bool contactoBool = DAOInvolucradosMinuta.AgregarContactoEnAcuerdo(contacto, row[RecursosBDModulo8.AtributoIDAcuerdo].ToString(), idProyecto); } } if (elAcuerdo.ListaUsuario != null) { foreach (Usuario usuario in elAcuerdo.ListaUsuario) { bool usuarioBool = DAOInvolucradosMinuta.AgregarUsuarioEnAcuerdo(usuario, row[RecursosBDModulo8.AtributoIDAcuerdo].ToString(), idProyecto); } } success = true; } } catch (NullReferenceException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionNullReference, RecursosBDModulo8.Mensaje_ExcepcionNullReference, ex); } catch (SqlException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionSql, RecursosBDModulo8.Mensaje_ExcepcionSql, ex); } catch (ParametroIncorrectoException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new ParametroIncorrectoException(RecursosBDModulo8.Codigo_ExcepcionParametro, RecursosBDModulo8.Mensaje__ExcepcionParametro, ex); } catch (AtributoIncorrectoException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new AtributoIncorrectoException(RecursosBDModulo8.Codigo_ExcepcionAtributo, RecursosBDModulo8.Mensaje_ExcepcionAtributo, ex); } catch (Exception ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionGeneral, RecursosBDModulo8.Mensaje_ExcepcionGeneral, ex); } return success; }
/// <summary> /// Metodo para obtener los responsables Usuarios de un Acuerdo de una Minuta /// </summary> /// <param name="IdAcuerdo">Id del acuerdo del que se desea consultar</param> /// <returns>Retorna un DataTable de Usuarios</returns> public List<Entidad> ObtenerUsuarioAcuerdo(int IdAcuerdo) { FabricaEntidades laFabrica = new FabricaEntidades(); List<Entidad> laLista = new List<Entidad>(); List<Resultado> usuario = new List<Resultado>(); DataTable idUsuarios = new DataTable(); List<Parametro> parametros = new List<Parametro>(); Parametro elParametro = new Parametro(RecursosBDModulo8.ParametroIDAcuerdo, SqlDbType.Int, IdAcuerdo.ToString(), false); parametros.Add(elParametro); try { idUsuarios = EjecutarStoredProcedureTuplas(RecursosBDModulo8.ProcedimientoUsuarioAcuerdo, parametros); if (idUsuarios.Rows.Count > 0) { foreach (DataRow row in idUsuarios.Rows) { DaoInvolucradosMinuta daoInvolucradosMinuta; FabricaDAOSqlServer fabricaDAO = new FabricaDAOSqlServer(); daoInvolucradosMinuta = (DaoInvolucradosMinuta)fabricaDAO.ObtenerDAOInvolucradosMinuta(); Usuario usuarioR = (Usuario)daoInvolucradosMinuta.ConsultarUsuarioMinutas(int.Parse(row[RecursosBDModulo8.AtributoAcuerdoUsuario].ToString())); if (usuarioR != null) { laLista.Add(usuarioR); } } } else { idUsuarios = null; laLista = null; } } catch (NullReferenceException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionNullReference, RecursosBDModulo8.Mensaje_ExcepcionNullReference, ex); } catch (SqlException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionSql, RecursosBDModulo8.Mensaje_ExcepcionSql, ex); } catch (ParametroIncorrectoException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new ParametroIncorrectoException(RecursosBDModulo8.Codigo_ExcepcionParametro, RecursosBDModulo8.Mensaje__ExcepcionParametro, ex); } catch (AtributoIncorrectoException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new AtributoIncorrectoException(RecursosBDModulo8.Codigo_ExcepcionAtributo, RecursosBDModulo8.Mensaje_ExcepcionAtributo, ex); } catch (Exception ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionGeneral, RecursosBDModulo8.Mensaje_ExcepcionGeneral, ex); } return laLista; }
/// <summary> /// Metodo para eliminar un acuerdo de la BD /// </summary> /// <param name="idAcuerdo">ID del Acuerdo que se desea eliminar</param> /// <returns>Retorna un Boolean para saber si se realizo con exito o no la operacion</returns> public bool Eliminar(Entidad parametro, String codigoProyecto) { bool success = false; Acuerdo acuerdo = (Acuerdo)parametro; Fabrica.FabricaDAOSqlServer laFabrica = new FabricaDAOSqlServer(); IntefazDAO.Modulo8.IDaoInvolucradosMinuta DAOInvolucradosMinuta = laFabrica.ObtenerDAOInvolucradosMinuta(); List<Parametro> parametros = new List<Parametro>(); Parametro elParametro = new Parametro(RecursosBDModulo8.ParametroIDAcuerdo, SqlDbType.Int, acuerdo.Id.ToString(), false); parametros.Add(elParametro); try { List<Resultado> tmp = EjecutarStoredProcedure(RecursosBDModulo8.ProcedimientoEliminarAcuerdo, parametros); if (tmp != null) { return true; } else { return false; } } catch (NullReferenceException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionNullReference, RecursosBDModulo8.Mensaje_ExcepcionNullReference, ex); } catch (SqlException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionSql, RecursosBDModulo8.Mensaje_ExcepcionSql, ex); } catch (ParametroIncorrectoException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new ParametroIncorrectoException(RecursosBDModulo8.Codigo_ExcepcionParametro, RecursosBDModulo8.Mensaje__ExcepcionParametro, ex); } catch (AtributoIncorrectoException ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new AtributoIncorrectoException(RecursosBDModulo8.Codigo_ExcepcionAtributo, RecursosBDModulo8.Mensaje_ExcepcionAtributo, ex); } catch (Exception ex) { ExcepcionesTotem.Logger.EscribirError(this.GetType().Name, ex); throw new BDMinutaException(RecursosBDModulo8.Codigo_ExcepcionGeneral, RecursosBDModulo8.Mensaje_ExcepcionGeneral, ex); } return success; }