public static ItemOption Add(int itemOptionSetId, string optionValue, double?costForExtra, bool usesIngredient, int?productId, double?productAmount, MeasurementUnit?productMeasurementUnit) { ItemOption result = null; bool isDiscontinued = false; SqlConnection cn = GetConnection(); using (SqlCommand sqlCmd = new SqlCommand("AddItemOption", cn)) { sqlCmd.CommandType = CommandType.StoredProcedure; BuildSqlParameter(sqlCmd, "@ItemOptionItemOptionSetId", SqlDbType.Int, itemOptionSetId); BuildSqlParameter(sqlCmd, "@ItemOptionValue", SqlDbType.Text, optionValue); BuildSqlParameter(sqlCmd, "@ItemOptionCostForExtra", SqlDbType.Float, costForExtra); BuildSqlParameter(sqlCmd, "@ItemOptionUsesIngredient", SqlDbType.Bit, usesIngredient); BuildSqlParameter(sqlCmd, "@ItemOptionProductId", SqlDbType.Int, productId); BuildSqlParameter(sqlCmd, "@ItemOptionProductAmount", SqlDbType.Float, productAmount); BuildSqlParameter(sqlCmd, "@ItemOptionProductMeasurementUnit", SqlDbType.SmallInt, productMeasurementUnit); BuildSqlParameter(sqlCmd, "@ItemOptionIsDiscontinued", SqlDbType.Bit, isDiscontinued); BuildSqlParameter(sqlCmd, "@ItemOptionId", SqlDbType.Int, ParameterDirection.ReturnValue); if (sqlCmd.ExecuteNonQuery() > 0) { result = new ItemOption(Convert.ToInt32(sqlCmd.Parameters["@ItemOptionId"].Value), itemOptionSetId, optionValue, costForExtra, usesIngredient, productId, productAmount, productMeasurementUnit, isDiscontinued); } } FinishedWithConnection(cn); return(result); }
public IEnumerable <ItemOption> GetOptions() { if (options == null) { options = ItemOption.GetInSet(Id); } return(options); }
public void Discontinue() { foreach (ItemOption itemOption in ItemOption.GetInSet(Id)) { itemOption.Discontinue(); } IsDiscontinued = true; Update(this); }
/// <summary> /// Update an entry in the ItemOption table /// </summary> public static bool Update(ItemOption itemOption) { bool result = false; SqlConnection cn = GetConnection(); result = Update(cn, itemOption); FinishedWithConnection(cn); return(result); }
public static ItemOption Get(int itemOptionSetId, string optionName) { ItemOption result = null; SqlConnection cn = GetConnection(); result = Get(cn, itemOptionSetId, optionName); FinishedWithConnection(cn); return(result); }
public static ItemOption Get(int itemOptionId) { ItemOption result = null; SqlConnection cn = GetConnection(); result = Get(cn, itemOptionId); FinishedWithConnection(cn); return(result); }
public bool ContainsItemOptionUsingItem(int itemId) { foreach (ItemOption itemOption in ItemOption.GetInSet(Id)) { if ((itemOption.UsesItem) && (itemOption.ProductId != null) && (itemOption.ProductId.Value == itemId)) { return(true); } } return(false); }
private static ItemOption Get(SqlConnection cn, int itemOptionId) { ItemOption result = null; using (SqlCommand cmd = new SqlCommand("SELECT * FROM ItemOption WHERE ItemOptionId=" + itemOptionId, cn)) { using (SqlDataReader rdr = cmd.ExecuteReader()) { if (rdr.Read()) { result = BuildItemOption(rdr); } } } return(result); }
public static void AdjustInventory(TicketItemOption ticketItemOption, double portionSize, bool increaseInventory) { ItemOption itemOption = ItemOption.Get(ticketItemOption.ItemOptionId); if (itemOption.UsesItem && (itemOption.ProductId != null) && (itemOption.ProductAmount != null)) { PosModelHelper.AdjustInventoryByItem( itemOption.ProductId.Value, itemOption.ProductAmount.Value * portionSize, increaseInventory); } else if (itemOption.UsesIngredient && (itemOption.ProductId != null) && (itemOption.ProductAmount != null) && (itemOption.ProductMeasurementUnit != null)) { PosModelHelper.AdjustInventoryByIngredient( itemOption.ProductId.Value, increaseInventory, itemOption.ProductAmount.Value * portionSize, itemOption.ProductMeasurementUnit.Value); } }
private static bool Update(SqlConnection cn, ItemOption itemOption) { Int32 rowsAffected = 0; using (SqlCommand sqlCmd = cn.CreateCommand()) { sqlCmd.CommandText = "UPDATE ItemOption SET ItemOptionItemOptionSetId=@ItemOptionItemOptionSetId,ItemOptionValue=@ItemOptionValue,ItemOptionCostForExtra=@ItemOptionCostForExtra,ItemOptionUsesIngredient=@ItemOptionUsesIngredient,ItemOptionProductId=@ItemOptionProductId,ItemOptionProductAmount=@ItemOptionProductAmount,ItemOptionProductMeasurementUnit=@ItemOptionProductMeasurementUnit,ItemOptionIsDiscontinued=@ItemOptionIsDiscontinued WHERE ItemOptionId=@ItemOptionId"; BuildSqlParameter(sqlCmd, "@ItemOptionId", SqlDbType.Int, itemOption.Id); BuildSqlParameter(sqlCmd, "@ItemOptionItemOptionSetId", SqlDbType.Int, itemOption.SetId); BuildSqlParameter(sqlCmd, "@ItemOptionValue", SqlDbType.Text, itemOption.Name); BuildSqlParameter(sqlCmd, "@ItemOptionCostForExtra", SqlDbType.Float, itemOption.CostForExtra); BuildSqlParameter(sqlCmd, "@ItemOptionUsesIngredient", SqlDbType.Bit, itemOption.UsesIngredient); BuildSqlParameter(sqlCmd, "@ItemOptionProductId", SqlDbType.Int, itemOption.ProductId); BuildSqlParameter(sqlCmd, "@ItemOptionProductAmount", SqlDbType.Float, itemOption.ProductAmount); BuildSqlParameter(sqlCmd, "@ItemOptionProductMeasurementUnit", SqlDbType.SmallInt, itemOption.ProductMeasurementUnit); BuildSqlParameter(sqlCmd, "@ItemOptionIsDiscontinued", SqlDbType.Bit, itemOption.IsDiscontinued); rowsAffected = sqlCmd.ExecuteNonQuery(); } return(rowsAffected != 0); }
private static ItemOption Get(SqlConnection cn, int itemOptionSetId, string optionName) { ItemOption result = null; using (SqlCommand cmd = new SqlCommand("SELECT * FROM ItemOption WHERE ItemOptionItemOptionSetId=" + itemOptionSetId + " AND ItemOptionIsDiscontinued=0", cn)) { using (SqlDataReader rdr = cmd.ExecuteReader()) { while (rdr.Read()) { //result = new Category(); string lineName = rdr[2].ToString(); if (optionName == lineName) { result = BuildItemOption(rdr); break; } } } } return(result); }
public bool Update() { return(ItemOption.Update(this)); }