public InventoryDialogService(IUserDataStorage storage, IInputParserService parser, IResultCache resultCache, IInventoryEmailService emailService) { _services = new Services { Storage = storage, Parser = parser, ResultCache = resultCache, EmailService = emailService }; }
private static ProcessingResult SubtractMaterial(IUserDataStorage storage, string userId, Entry entry) { try { var entries = storage.ReadAllEntries(userId); var dataUnitOfMeasure = entry.UnitOfMeasure.ToData(); var dbEntry = entries.FirstOrDefault(e => e.Name == entry.Name && e.UnitOfMeasure == dataUnitOfMeasure); if (dbEntry is null) { return(new EntryNotFoundInDatabaseError(entry.Name, entry.UnitOfMeasure)); } var updateValue = dbEntry.Quantity - entry.Quantity; if (updateValue < 0) { return(new NotEnoughEntryToDeleteError(entry.Name, entry.Quantity, dbEntry.Quantity)); } if (updateValue == 0) { storage.DeleteEntry(dbEntry.Id); } else { storage.UpdateEntry(dbEntry.Id, dbEntry.Quantity - entry.Quantity); } return(new ProcessingResult(ProcessingResultType.Deleted, entry)); } catch (Exception e) { return(new ProcessingResult(e)); } }
private static ProcessingResult AddMaterial(IUserDataStorage storage, string userId, Entry entry) { try { var entries = storage.ReadAllEntries(userId); var dbEntry = entries.FirstOrDefault(e => e.Name == entry.Name && e.UnitOfMeasure == entry.UnitOfMeasure.ToData()); if (dbEntry is null) { storage.CreateEntry(userId, entry.Name, entry.Quantity, entry.UnitOfMeasure.ToData()); } else { storage.UpdateEntry(dbEntry.Id, dbEntry.Quantity + entry.Quantity); } return(new ProcessingResult(ProcessingResultType.Added, entry)); } catch (Exception e) { return(new ProcessingResult(e)); } }
public UserStore(IUserDataStorage storage) { this.userDataStorage = storage; }
// automatically passed by IoC container public MyController(IUserDataStorage <MyObject> objectData) { }
public UserService(IUserDataStorage dataStorage) { _dataStorage = dataStorage; }