/DataAccess/DAOs/DAO_TipoOficina.cs
http://coopensens.googlecode.com/ · C# · 285 lines · 210 code · 27 blank · 48 comment · 5 complexity · 765e85c4e48d095c952d5535cf94a160 MD5 · raw file
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Data.Objects;
- using System.Linq;
- using System.Text;
- using Rubik.Coopecens.Framework.AbstractClass;
- using Rubik.Coopecens.EDM;
- using Rubik.Coopecens.EDM.DataContext;
- using Rubik.Coopecens.DataAccess.Interfaces;
-
- namespace Rubik.Coopecens.DataAccess.DAOs
- {
- public class DAO_TipoOficina : MainDAO, ITipoOfi
- {
- public DAO_TipoOficina()
- {
- }
-
- public DAO_TipoOficina(ref CoopecensDataContext DataContext)
- : base(ref DataContext)
- {
-
- }
-
- /// <summary>
- /// Obtiene un TipoOficina por un id
- /// </summary>
- /// <param name="id">Identificador del TipoOficina</param>
- /// <returns></returns>
- public TipoOficina GetById(string id)
- {
- try
- {
- var oReturn = (from usr in oDataContext.TipoOficinas
- where usr.Id_TipoOficina == int.Parse(id)
- select usr).Single();
-
- return oReturn;
- }
- catch (Exception ex)
- {
- throw new Exception(string.Format("Error al obtener Tipo Oficina por id, Erro: {0}", ex.Message));
- }
- }
-
- /// <summary>
- /// Obtiene todos los TipoOficinas que se encuentran en la BD
- /// </summary>
- /// <returns>Lista de TipoOficinas de la BD</returns>
- public IList<TipoOficina> GetAll()
- {
- try
- {
- var oReturn = (from usr in oDataContext.TipoOficinas
- select usr).ToList<TipoOficina>();
- return oReturn;
- }
- catch (Exception ex)
- {
- throw new Exception(string.Format("Error al obtener TipoOficinas, Erro: {0}", ex.Message));
- }
- }
-
- /// <summary>
- /// Obtiene una lista de TipoOficinas por una busqueda de condiciones definida.
- /// </summary>
- /// <param name="parameters">Lista de parametros de busqueda/filtros.</param>
- /// <returns>Lista de resultados TipoOficinas obtenidos por los filtros definidos.</returns>
- public IList<TipoOficina> GetListByParameters(IDictionary<object, object> parameters)
- {
- try
- {
- var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoOficina
- FROM CoopecensDataContext.TipoOficinas as TipoOficina
- WHERE '1'='1' ",
- (current, p) =>
- current +
- (" AND TipoOficina." + p.Key + " LIKE @" + p.Key)) + " ";
-
- ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
- int i = 0;
- foreach (KeyValuePair<object, object> oParam in parameters)
- {
- oObjectParameters[i] = new ObjectParameter(oParam.Key.ToString().ToUpper(), oParam.Value.ToString().ToUpper());
- }
-
- ObjectQuery<TipoOficina> oUsiariosQuery = oDataContext.CreateQuery<TipoOficina>(query, oObjectParameters);
-
- return oUsiariosQuery.ToList<TipoOficina>();
- }
- catch (Exception ex)
- {
- throw new Exception(string.Format("Error al obtener TipoOficina por oarametros, Error: {0}", ex.Message));
- }
- }
-
- /// <summary>
- /// Obtiene una lista de TipoOficinas por una busqueda de condiciones definida.
- /// </summary>
- /// <param name="parameters">Lista de parametros de busqueda/filtros.</param>
- /// <returns>Lista de resultados TipoOficinas obtenidos por los filtros definidos.</returns>
- public IList GetTipoOfiParameters(IDictionary<object, object> parameters)
- {
- try
- {
- var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoOficina
- FROM CoopecensDataContext.TipoOficinas as TipoOficina
- WHERE '1'='1' ",
- (current, p) =>
- current +
- (" AND TipoOficina." + p.Key + " LIKE @" + p.Key)) + " ";
-
- ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
- int i = 0;
- foreach (KeyValuePair<object, object> oParam in parameters)
- {
- oObjectParameters[i] = new ObjectParameter(oParam.Key.ToString().ToUpper(), oParam.Value.ToString().ToUpper());
- }
-
- ObjectQuery<TipoOficina> oUsiariosQuery = oDataContext.CreateQuery<TipoOficina>(query, oObjectParameters);
-
- return oUsiariosQuery.ToList();
- }
- catch (Exception ex)
- {
- throw new Exception(string.Format("Error al obtener TipoOficina por parametros, Error: {0}", ex.Message));
- }
- }
-
-
- /// <summary>
- /// Obtiene una lista de TipoOficinas por una busqueda de condiciones definida para el combo de OFICINA.
- /// </summary>
- /// <param name="parameters">Lista de parametros de busqueda/filtros.</param>
- /// <returns>Lista de resultados TipoOficinas obtenidos por los filtros definidos.</returns>
- public IList GetcbTipoOfiParameters(IDictionary<object, object> parameters)
- {
- try
- {
- var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoOficina
- FROM CoopecensDataContext.TipoOficinas as TipoOficina
- WHERE '1'='1' ",
- (current, p) =>
- current +
- (" AND TipoOficina." + p.Key + " = @" + p.Key)) + " ";
-
- ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
- int i = 0;
- foreach (KeyValuePair<object, object> oParam in parameters)
- {
- oObjectParameters[i] = new ObjectParameter((string)oParam.Key, (int)oParam.Value);
- }
-
- ObjectQuery<TipoOficina> oUsiariosQuery = oDataContext.CreateQuery<TipoOficina>(query, oObjectParameters);
-
- return oUsiariosQuery.ToList();
- }
- catch (Exception ex)
- {
- throw new Exception(string.Format("Error al obtener TipoOficina por parametros, Error: {0}", ex.Message));
- }
- }
-
- /// <summary>
- /// Retorna un nuevo objeto TipoOficina por una lista de parametros establecida
- /// </summary>
- /// <param name="parameters">Lista de parametros de filtro</param>
- /// <returns>Objeto TipoOficina con los parametros definidos</returns>
- public TipoOficina GetObjectByParameter(IDictionary<object, object> parameters)
- {
- try
- {
- var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoOficina
- FROM CoopecensDataContext.TipoOficinas as TipoOficina
- WHERE '1'='1' ",
- (current, p) =>
- current +
- (" AND TipoOficina." + p.Key + " LIKE @" + p.Key)) + " ";
-
- ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
- int i = 0;
- foreach (KeyValuePair<object, object> oParam in parameters)
- {
- oObjectParameters[i] = new ObjectParameter(oParam.Key.ToString(), oParam.Value.ToString());
- i++;
- }
-
- ObjectQuery<TipoOficina> oUsiariosQuery = oDataContext.CreateQuery<TipoOficina>(query, oObjectParameters);
-
- return (TipoOficina)oUsiariosQuery.Single();
- }
- catch (Exception ex)
- {
- throw new Exception(string.Format("Error al obtener TipoOficina por oarametros, Error: {0}", ex.Message));
- }
- }
-
- /// <summary>
- /// Inserta un nuevo TipoOficina a la BD
- /// </summary>
- /// <param name="entity">Nuevo TipoOficina a Insertar</param>
- /// <returns>Confirmacion de la transaccion</returns>
- public bool Insert(TipoOficina entity)
- {
- var oReturn = false;
- oDataContext.Connection.Open();
- var oDBTransaction = oDataContext.Connection.BeginTransaction();
- try
- {
- oDataContext.AddToTipoOficinas(entity);
- oDataContext.SaveChanges(SaveOptions.DetectChangesBeforeSave);
- oDBTransaction.Commit();
- oReturn = true;
- }
- catch (Exception ex)
- {
- oDBTransaction.Rollback();
- throw new Exception(string.Format("Error al insertar TipoOficina por oarametros, Error: {0}", ex.Message));
- }
- oDataContext.Connection.Close();
- return oReturn;
- }
-
- /// <summary>
- /// Actualiza los valores de un TipoOficina
- /// </summary>
- /// <param name="entity">TipoOficina a actualizar</param>
- /// <returns>Confirmacion de la transaccion</returns>
- public bool Update(TipoOficina entity)
- {
- var oReturn = false;
- oDataContext.Connection.Open();
- var oDBTransaction = oDataContext.Connection.BeginTransaction();
- try
- {
- oDataContext.SaveChanges(SaveOptions.DetectChangesBeforeSave);
- oDBTransaction.Commit();
- oReturn = true;
- }
- catch (Exception ex)
- {
- oDBTransaction.Rollback();
- throw new Exception(string.Format("Error al actualizar TipoOficina por oarametros, Error: {0}", ex.Message));
- }
- oDataContext.Connection.Close();
- return oReturn;
- }
-
- /// <summary>
- /// Elimina un Usuairo de la BD
- /// </summary>
- /// <param name="entity">TipoOficina a eliminar</param>
- /// <returns>Confirmacion de la transaccion</returns>
- public bool Delete(TipoOficina entity)
- {
- var oReturn = false;
- oDataContext.Connection.Open();
- var oDBTransaction = oDataContext.Connection.BeginTransaction();
- try
- {
- oDataContext.DeleteObject(entity);
- oDataContext.SaveChanges(SaveOptions.DetectChangesBeforeSave);
- oDBTransaction.Commit();
- oReturn = true;
- }
- catch (Exception ex)
- {
- oDBTransaction.Rollback();
- throw new Exception(string.Format("Error al eliminar TipoOficina por oarametros, Error: {0}", ex.Message));
- }
- oDataContext.Connection.Close();
- return oReturn;
- }
-
- /// <summary>
- /// Retorna una nueva Entidad TipoOficina
- /// </summary>
- /// <returns></returns>
- public TipoOficina GetEntity()
- {
- return oDataContext.TipoOficinas.CreateObject();
- }
- }
- }