/// <summary> /// Delete the given OrderMessage from the database /// </summary> public virtual void Delete(Model.OrderMessage delOrderMessage) { try { Trace.WriteInformation("({0})", Trace.GetMethodName(), CLASSNAME, delOrderMessage); //Begin Checks if (!Exists(delOrderMessage)) { throw new BusinessException(string.Format("There is no OrderMessage with this id. ({0})", delOrderMessage)); } DataAccess.OrderMessages orderMessages = new DataAccess.OrderMessages(); orderMessages.Delete(delOrderMessage); } catch (DalForeignKeyException ex_fk) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex_fk, delOrderMessage); throw new BusinessException(string.Format("The OrderMessage is still used by {0}", ex_fk.Table), ex_fk); } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, delOrderMessage); throw; } }
/// <summary> /// Add a new OrderMessage to the database /// </summary> public virtual Int32 Add(Model.OrderMessage newOrderMessage) { try { Trace.WriteVerbose("({0})", Trace.GetMethodName(), CLASSNAME, newOrderMessage.ToString()); var helper = Database.GetDbHelper(); DbParameter IdParam = helper.CreateOutputParam("@Id", DbType.Int32); int recordsAffected = helper.ExecuteSPNonQuery(_storedProcedure_Add, IdParam, helper.CreateInputParam("@Code", newOrderMessage.Code), helper.CreateInputParam("@SentDate", newOrderMessage.SentDate), helper.CreateInputParam("@ReceivedDate", newOrderMessage.ReceivedDate)); if (recordsAffected == 0) { throw new DalNothingUpdatedException("Unable to add OrderMessage with Id={0}", newOrderMessage); } return((Int32)IdParam.Value); } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, newOrderMessage.ToString()); throw DbHelper.TranslateException(ex); } }
/// <summary> /// Get a OrderMessage by id from the database /// </summary> public virtual Model.OrderMessage GetById(Int32 id) { DbDataReader reader = null; try { var helper = Database.GetDbHelper(); reader = helper.ExecuteSPReader(_storedProcedure_GetById, helper.CreateInputParam("@Id", id)); Model.OrderMessage result = null; if (reader.Read()) { result = CreateOrderMessage(reader); } return(result); } catch (Exception ex) { Trace.WriteError("{0}", Trace.GetMethodName(), CLASSNAME, ex, id); throw DbHelper.TranslateException(ex); } finally { if (reader != null) { reader.Close(); } } }
/// <summary> /// Equals function to compare class /// </summary> public virtual bool Exists(Model.OrderMessage orderMessage) { try { return(this.GetById(orderMessage.Id) != null); } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, orderMessage); throw; } }
/// <summary> /// Check Datafield constraints /// </summary> protected virtual void CheckConstraints(Model.OrderMessage orderMessage) { //Range checks, etc checks go here if (orderMessage.Code == null) { throw new BusinessException(string.Format("Code may not be NULL. ({0})", orderMessage.Code)); } if (orderMessage.Code.Length > 50) { throw new BusinessException(string.Format("Code may not be longer than 50 characters. ({0})", orderMessage.Code)); } }
/// <summary> /// Get a OrderMessage by id from the database /// </summary> public virtual Model.OrderMessage GetById(Int32 id) { try { DataAccess.OrderMessages orderMessages = new DataAccess.OrderMessages(); Model.OrderMessage result = orderMessages.GetById(id); return(result); } catch (Exception ex) { Trace.WriteError("{0}", Trace.GetMethodName(), CLASSNAME, ex, id); throw; } }
/// <summary> /// Delete the given OrderMessage from the database /// </summary> public virtual void Delete(Model.OrderMessage orderMessage) { try { Trace.WriteVerbose("({0})", Trace.GetMethodName(), CLASSNAME, orderMessage.ToString()); var helper = Database.GetDbHelper(); helper.ExecuteSPNonQuery(_storedProcedure_Delete, helper.CreateInputParam("@Id", orderMessage.Id)); } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, orderMessage.ToString()); throw DbHelper.TranslateException(ex); } }
/// <summary> /// Create a Model.OrderMessage /// </summary> protected virtual Model.OrderMessage CreateOrderMessage(DbDataReader reader) { try { Model.OrderMessage result = new Model.OrderMessage( (Int32)reader["Id"], (String)reader["Code"], (DateTime)reader["SentDate"], (DateTime)reader["ReceivedDate"] ); return(result); } catch (Exception ex) { Trace.WriteError("", Trace.GetMethodName(), CLASSNAME, ex); throw DbHelper.TranslateException(ex); } }
/// <summary> /// Add a new OrderMessage to the database /// </summary> public virtual Int32 Add(Model.OrderMessage newOrderMessage) { try { Trace.WriteInformation("({0})", Trace.GetMethodName(), CLASSNAME, newOrderMessage); CheckConstraints(newOrderMessage); DataAccess.OrderMessages orderMessages = new DataAccess.OrderMessages(); return(orderMessages.Add(newOrderMessage)); } catch (DalForeignKeyException ex_fk) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex_fk, newOrderMessage); throw new BusinessException(string.Format("No related object found in {0}", ex_fk.Table), ex_fk); } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, newOrderMessage); throw; } }
/// <summary> /// Modify the given OrderMessage in the database /// </summary> public virtual void Modify(Model.OrderMessage modifiedOrderMessage) { try { Trace.WriteInformation("({0})", Trace.GetMethodName(), CLASSNAME, modifiedOrderMessage); //Begin Checks CheckConstraints(modifiedOrderMessage); if (!Exists(modifiedOrderMessage)) { throw new BusinessException(string.Format("There is no OrderMessage with this id. ({0})", modifiedOrderMessage)); } DataAccess.OrderMessages orderMessages = new DataAccess.OrderMessages(); orderMessages.Modify(modifiedOrderMessage); } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, modifiedOrderMessage); throw; } }
/// <summary> /// Modify the given OrderMessage in the database /// </summary> public virtual void Modify(Model.OrderMessage modifiedOrderMessage) { try { Trace.WriteVerbose("({0})", Trace.GetMethodName(), CLASSNAME, modifiedOrderMessage.ToString()); var helper = Database.GetDbHelper(); int recordsAffected = helper.ExecuteSPNonQuery(_storedProcedure_Modify, helper.CreateInputParam("@Id", modifiedOrderMessage.Id), helper.CreateInputParam("@Code", modifiedOrderMessage.Code), helper.CreateInputParam("@SentDate", modifiedOrderMessage.SentDate), helper.CreateInputParam("@ReceivedDate", modifiedOrderMessage.ReceivedDate)); if (recordsAffected == 0) { throw new DalNothingUpdatedException("No records were updated (Table: OrderMessages). OrderMessage=" + modifiedOrderMessage.ToString()); } } catch (Exception ex) { Trace.WriteError("({0})", Trace.GetMethodName(), CLASSNAME, ex, modifiedOrderMessage.ToString()); throw DbHelper.TranslateException(ex); } }