public void DeleteStaticShoppingList(string staticPublicID, string userName) { EveShoppingContext contexto = new EveShoppingContext(); eshSnapshot snap = contexto.eshSnapshots.Where(s => s.publicID == staticPublicID).FirstOrDefault(); DeleteStaticShoppingList(snap, userName, contexto); }
public eshSnapshot CreateStaticShoppingListFromGroup(string groupPublicID, string name, IImageResolver iresolver) { LogicaGroupLists logica = new LogicaGroupLists(); EVListSummary ev = logica.SelectGroupListSummaryPorPublicID(groupPublicID, iresolver); eshSnapshot snap = new eshSnapshot(); if (ev == null) { return(null); } snap.name = ev.Name; snap.description = ev.Description; snap.totalVolume = ev.TotalVolume; snap.totalPrice = ev.TotalPrice; snap.publicID = Guid.NewGuid().ToString(); snap.creationDate = System.DateTime.Now; foreach (var item in ev.Items) { eshSnapshotInvType sit = new eshSnapshotInvType(); sit.typeID = item.ItemID; sit.unitPrice = item.UnitPrice; sit.units = item.Units; sit.volume = item.Volume; snap.eshSnapshotInvTypes.Add(sit); } return(snap); }
public eshSnapshot CreateStaticShoppingList(string publicID, string name, IImageResolver iresolver) { LogicaShoppingLists logica = new LogicaShoppingLists(); EVListSummary summ = logica.SelectListSummaryPorPublicID(publicID, iresolver); if (summ == null) { return(null); } eshSnapshot shot = new eshSnapshot(); shot.creationDate = System.DateTime.Now; shot.shoppingListID = summ.ShoppingListID; shot.totalPrice = summ.TotalPrice; shot.totalVolume = summ.TotalVolume; shot.publicID = Guid.NewGuid().ToString(); shot.name = (string.IsNullOrEmpty(name))? summ.Name:name; shot.description = summ.Description; foreach (var item in summ.Items) { if ((item.Units) > 0) { eshSnapshotInvType shotitem = new eshSnapshotInvType(); shotitem.typeID = item.ItemID; shotitem.unitPrice = item.UnitPrice; shotitem.units = item.Units; shotitem.volume = item.Volume; shot.eshSnapshotInvTypes.Add(shotitem); } } EveShoppingContext contexto = new EveShoppingContext(); contexto.eshSnapshots.Add(shot); contexto.SaveChanges(); return(shot); }
public void DeleteStaticShoppingList(eshSnapshot snap, string userName, EveShoppingContext contexto) { if (snap == null) { throw new ApplicationException(Messages.err_staticShoppingListNoExiste); } if (userName == null) { if (snap.eshShoppingList.userID.HasValue) { throw new ApplicationException(Messages.err_notOwner); } } UserProfile user = contexto.UserProfiles.Where(u => u.UserName == userName).FirstOrDefault(); if (user == null) { throw new ApplicationException(Messages.err_usuarioNoExiste); } if (snap.eshShoppingList.userID.HasValue && snap.eshShoppingList.userID.Value != user.UserId) { throw new ApplicationException(Messages.err_notOwner); } Repositorios.RepositorioShoppingLists repo = new Repositorios.RepositorioShoppingLists(contexto); repo.ShoppingListUpdated(snap.eshShoppingList.shoppingListID); IEnumerable <eshSnapshotInvType> sit = snap.eshSnapshotInvTypes.Where(s => s.snapshotID == snap.snapshotID).ToList(); foreach (var item in sit) { contexto.eshSnapshotInvTypes.Remove(item); } contexto.eshSnapshots.Remove(snap); contexto.SaveChanges(); }