public static void UpdateWarningForItem(Item item) { var warningEnabled = item.Quantity < item.MinQuantity; var shouldUpdateExisting = false; try { using (var db = new DBUnitOfWork()) { var existing = db.Repository<Warning>().Find(x => x.ItemEntityId.Equals(item.EntityId)); if (warningEnabled) { if (existing == null) { var warning = new Warning { ItemEntityId = item.EntityId, Message = "Warning, [ " + item.Name + " ] is insuficiently stocked, need [ " + (item.MinQuantity - item.Quantity) + " ] more!" }; item.Status = "Warning"; db.Repository<Warning>().Add(warning); shouldUpdateExisting = true; } } else { if (existing != null) { item.Status = string.Empty; db.Repository<Warning>().Delete(existing.EntityId); shouldUpdateExisting = true; } } } if (shouldUpdateExisting) { using (var db = new DBUnitOfWork()) { db.Repository<Item>().Update(item, item.EntityId); } } } catch (Exception) { } }
public void CopyFrom(Warning warning) { ItemEntityId = warning.ItemEntityId; Message = warning.Message; }