/DataAccess/DAOs/DAO_TipoTransportadora.cs

http://coopensens.googlecode.com/ · C# · 285 lines · 204 code · 33 blank · 48 comment · 5 complexity · 6b7511d20b2f783362d6da2fd2d615e6 MD5 · raw file

  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Data.Objects;
  5. using System.Linq;
  6. using System.Text;
  7. using Rubik.Coopecens.Framework.AbstractClass;
  8. using Rubik.Coopecens.EDM;
  9. using Rubik.Coopecens.EDM.DataContext;
  10. using Rubik.Coopecens.DataAccess.Interfaces;
  11. namespace Rubik.Coopecens.DataAccess.DAOs
  12. {
  13. public class DAO_TipoTransportadora: MainDAO, ITipoTransportadora
  14. {
  15. public DAO_TipoTransportadora()
  16. {
  17. }
  18. public DAO_TipoTransportadora(ref CoopecensDataContext DataContext)
  19. : base(ref DataContext)
  20. {
  21. }
  22. /// <summary>
  23. /// Obtiene un TipoTransportadora por un id.
  24. /// </summary>
  25. /// <param name="id">Identificador del TipoTransportadora</param>
  26. /// <returns></returns>
  27. public TipoTransportadora GetById(string id)
  28. {
  29. try
  30. {
  31. var oReturn = (from TipoTransportadora in oDataContext.TipoTransportadoras
  32. where TipoTransportadora.Id_TipoTransportadora == int.Parse(id)
  33. select TipoTransportadora).Single();
  34. return oReturn;
  35. }
  36. catch (Exception ex)
  37. {
  38. throw new Exception(string.Format("Error al obtener TipoTransportadora por id, Erro: {0}", ex.Message));
  39. }
  40. }
  41. /// <summary>
  42. /// Obtiene todos los TipoTransportadora que se encuentran en la BD
  43. /// </summary>
  44. /// <returns>Lista de TipoTransportadora de la BD</returns>
  45. public IList<TipoTransportadora> GetAll()
  46. {
  47. try
  48. {
  49. var oReturn = (from TipoTransportadora in oDataContext.TipoTransportadoras
  50. select TipoTransportadora).ToList<TipoTransportadora>();
  51. return oReturn;
  52. }
  53. catch (Exception ex)
  54. {
  55. throw new Exception(string.Format("Error al obtener TipoTransportadora, Erro: {0}", ex.Message));
  56. }
  57. }
  58. /// <summary>
  59. /// Obtiene una lista de TipoTransportadoraes por una busqueda de condiciones definida.
  60. /// </summary>
  61. /// <param name="parameters">Lista de parametros de busqueda/filtros.</param>
  62. /// <returns>Lista de resultados TipoTransportadoraes obtenidos por los filtros definidos.</returns>
  63. public IList<TipoTransportadora> GetListByParameters(IDictionary<object, object> parameters)
  64. {
  65. try
  66. {
  67. var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoTransportadora
  68. FROM CoopecensDataContext.TipoTransportadoras as TipoTransportadora
  69. WHERE '1'='1' ",
  70. (current, p) =>
  71. current +
  72. (" AND TipoTransportadora." + p.Key + " = @" + p.Key)) + " ";
  73. ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
  74. int i = 0;
  75. foreach (KeyValuePair<object, object> oParam in parameters)
  76. {
  77. oObjectParameters[i] = new ObjectParameter(oParam.Key.ToString().ToUpper(), oParam.Value.ToString().ToUpper());
  78. }
  79. ObjectQuery<TipoTransportadora> oUsiariosQuery = oDataContext.CreateQuery<TipoTransportadora>(query, oObjectParameters);
  80. return oUsiariosQuery.ToList<TipoTransportadora>();
  81. }
  82. catch (Exception ex)
  83. {
  84. throw new Exception(string.Format("Error al obtener TipoTransportadora por parametros, Error: {0}", ex.Message));
  85. }
  86. }
  87. /// <summary>
  88. /// Obtiene una lista de TipoTransportadoraes por una busqueda de condiciones definida.
  89. /// </summary>
  90. /// <param name="parameters">Lista de parametros de busqueda/filtros.</param>
  91. /// <returns>Lista de resultados TipoTransportadoraes obtenidos por los filtros definidos.</returns>
  92. public IList GetTipoTransportadoraParameters(IDictionary<object, object> parameters)
  93. {
  94. try
  95. {
  96. var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoTransportadora
  97. FROM CoopecensDataContext.TipoTransportadoras as TipoTransportadora
  98. WHERE '1'='1' ",
  99. (current, p) =>
  100. current +
  101. (" AND TipoTransportadora." + p.Key + " = @" + p.Key)) + " ";
  102. ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
  103. int i = 0;
  104. foreach (KeyValuePair<object, object> oParam in parameters)
  105. {
  106. oObjectParameters[i] = new ObjectParameter(oParam.Key.ToString().ToUpper(), oParam.Value.ToString().ToUpper());
  107. }
  108. ObjectQuery<TipoTransportadora> oUsiariosQuery = oDataContext.CreateQuery<TipoTransportadora>(query, oObjectParameters);
  109. return oUsiariosQuery.ToList();
  110. }
  111. catch (Exception ex)
  112. {
  113. throw new Exception(string.Format("Error al obtener TipoTransportadora por parametros, Error: {0}", ex.Message));
  114. }
  115. }
  116. /// <summary>
  117. /// Obtiene una lista de TipoTransportadoras por una busqueda de condiciones definida para el combo de Transportadora.
  118. /// </summary>
  119. /// <param name="parameters">Lista de parametros de busqueda/filtros.</param>
  120. /// <returns>Lista de resultados TipoTransportadoras obtenidos por los filtros definidos.</returns>
  121. public IList GetcbTipoTransportadoraParameters(IDictionary<object, object> parameters)
  122. {
  123. try
  124. {
  125. var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE TipoTransportadora
  126. FROM CoopecensDataContext.TipoTransportadoras as TipoTransportadora
  127. WHERE '1'='1' ",
  128. (current, p) =>
  129. current +
  130. (" AND TipoTransportadora." + p.Key + " = @" + p.Key)) + " ";
  131. ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
  132. int i = 0;
  133. foreach (KeyValuePair<object, object> oParam in parameters)
  134. {
  135. oObjectParameters[i] = new ObjectParameter((string)oParam.Key, (int)oParam.Value);
  136. }
  137. ObjectQuery<TipoTransportadora> oUsiariosQuery = oDataContext.CreateQuery<TipoTransportadora>(query, oObjectParameters);
  138. return oUsiariosQuery.ToList();
  139. }
  140. catch (Exception ex)
  141. {
  142. throw new Exception(string.Format("Error al obtener TipoTransportadora por parametros, Error: {0}", ex.Message));
  143. }
  144. }
  145. /// <summary>
  146. /// Retorna un nuevo objeto TipoTransportadora por una lista de parametros establecida
  147. /// </summary>
  148. /// <param name="parameters">Lista de parametros de filtro</param>
  149. /// <returns>Objeto usuario con los parametros definidos</returns>
  150. public TipoTransportadora GetObjectByParameter(IDictionary<object, object> parameters)
  151. {
  152. try
  153. {
  154. var query = parameters.Where(p => p.Value != null).Aggregate(@"SELECT VALUE Usuario
  155. FROM CoopecensDataContext.Usuarios as Usuario
  156. WHERE '1'='1' ",
  157. (current, p) =>
  158. current +
  159. (" AND Usuario." + p.Key + " = @" + p.Key)) + " ";
  160. ObjectParameter[] oObjectParameters = new ObjectParameter[parameters.Count];
  161. int i = 0;
  162. foreach (KeyValuePair<object, object> oParam in parameters)
  163. {
  164. oObjectParameters[i] = new ObjectParameter(oParam.Key.ToString(), oParam.Value.ToString());
  165. i++;
  166. }
  167. ObjectQuery<TipoTransportadora> oUsiariosQuery = oDataContext.CreateQuery<TipoTransportadora>(query, oObjectParameters);
  168. return (TipoTransportadora)oUsiariosQuery.Single();
  169. }
  170. catch (Exception ex)
  171. {
  172. throw new Exception(string.Format("Error al obtener usuario por parametros, Error: {0}", ex.Message));
  173. }
  174. }
  175. /// <summary>
  176. /// Inserta un nuevo TipoTransportadora a la BD
  177. /// </summary>
  178. /// <param name="entity">Nuevo TipoTransportadora a Insertar</param>
  179. /// <returns>Confirmacion de la transaccion</returns>
  180. public bool Insert(TipoTransportadora entity)
  181. {
  182. var oReturn = false;
  183. var oDBTransaction = oDataContext.Connection.BeginTransaction();
  184. try
  185. {
  186. oDataContext.AddToTipoTransportadoras(entity);
  187. oDataContext.SaveChanges(SaveOptions.DetectChangesBeforeSave);
  188. oDBTransaction.Commit();
  189. oReturn = true;
  190. }
  191. catch (Exception ex)
  192. {
  193. oDBTransaction.Rollback();
  194. throw new Exception(string.Format("Error al insertar TipoTransportadora por parametros, Error: {0}", ex.Message));
  195. }
  196. return oReturn;
  197. }
  198. /// <summary>
  199. /// Actualiza los valores de un TipoTransportadora
  200. /// </summary>
  201. /// <param name="entity">TipoTransportadora a actualizar</param>
  202. /// <returns>Confirmacion de la transaccion</returns>
  203. public bool Update(TipoTransportadora entity)
  204. {
  205. var oReturn = false;
  206. var oDBTransaction = oDataContext.Connection.BeginTransaction();
  207. try
  208. {
  209. oDataContext.SaveChanges(SaveOptions.DetectChangesBeforeSave);
  210. oDBTransaction.Commit();
  211. oReturn = true;
  212. }
  213. catch (Exception ex)
  214. {
  215. oDBTransaction.Rollback();
  216. throw new Exception(string.Format("Error al actualizar TipoTransportadora por parametros, Error: {0}", ex.Message));
  217. }
  218. return oReturn;
  219. }
  220. /// <summary>
  221. /// Elimina un TipoTransportadora de la BD
  222. /// </summary>
  223. /// <param name="entity">TipoTransportadora a eliminar</param>
  224. /// <returns>Confirmacion de la transaccion</returns>
  225. public bool Delete(TipoTransportadora entity)
  226. {
  227. var oReturn = false;
  228. var oDBTransaction = oDataContext.Connection.BeginTransaction();
  229. try
  230. {
  231. oDataContext.DeleteObject(entity);
  232. oDataContext.SaveChanges(SaveOptions.DetectChangesBeforeSave);
  233. oDBTransaction.Commit();
  234. oReturn = true;
  235. }
  236. catch (Exception ex)
  237. {
  238. oDBTransaction.Rollback();
  239. throw new Exception(string.Format("Error al eliminar TipoTransportadora por parametros, Error: {0}", ex.Message));
  240. }
  241. return oReturn;
  242. }
  243. /// <summary>
  244. /// Retorna una nueva Entidad TipoTransportadora
  245. /// </summary>
  246. /// <returns></returns>
  247. public TipoTransportadora GetEntity()
  248. {
  249. return oDataContext.TipoTransportadoras.CreateObject();
  250. }
  251. }
  252. }