internal IResult <Note> Execute(Data.Models.Notebook notebook, DateTime timestamp, Employee employee, string text) { if (notebook == null) { throw new ArgumentNullException("notebook"); } if (timestamp == null) { throw new ArgumentNullException("timestamp"); } if (employee == null) { throw new ArgumentNullException("employee"); } if (text == null) { throw new ArgumentNullException("text"); } var newSequence = new EFUnitOfWorkHelper(_notebookUnitOfWork).GetNextSequence <Note>(n => n.NotebookDate == notebook.NotebookKey_Date && n.NotebookSequence == notebook.NotebookKey_Sequence, n => n.Sequence); var newNote = _notebookUnitOfWork.NoteRepository.Add(new Note { NotebookDate = notebook.Date, NotebookSequence = notebook.Sequence, Sequence = newSequence, EmployeeId = employee.EmployeeId, TimeStamp = timestamp, Text = text }); return(new SuccessResult <Note>(newNote)); }
internal IResult Delete(Data.Models.Notebook notebook) { var notes = notebook.Notes.ToList(); foreach (var note in notes) { _notebookUnitOfWork.NoteRepository.Remove(note); } _notebookUnitOfWork.NotebookRepository.Remove(notebook); return(new SuccessResult()); }