public void AddToTomato(List <int> elementIds) { Domain.Tomato curentTomato = _taskUnitOfWork.TomatoRepository.GetCurrent(); if (curentTomato == null) { curentTomato = new Domain.Tomato(); curentTomato.Status = Status.New; } List <Domain.Element> elements = _taskUnitOfWork.TaskRepository.GetElements(elementIds); elements.ForEach(x => { x.AddToTomato(curentTomato); _taskUnitOfWork.TaskRepository.Update(x); }); _taskUnitOfWork.Commit(); //pw: move to repository //var tomatoItems = elementIds.ToList().Select(x => new Infrastructure.TomatoElement() { ElementId = x }).ToList(); //var tomato = new Infrastructure.Tomato() { Status = CoreObjects.Tomato.Status.New, Items = tomatoItems }; //_taskUnitOfWork.TomatoRepository.Add(tomato); //_taskUnitOfWork.Commit(); }
public void AddToTomato(string name, string details, int parentId) { Domain.Tomato curentTomato = _taskUnitOfWork.TomatoRepository.GetCurrent(); if (curentTomato == null) { curentTomato = new Domain.Tomato(); curentTomato.Status = Status.New; } var element = new Domain.Element(name, details, CoreObjects.ElementType.Task, parentId); element.AddToTomato(curentTomato); _taskUnitOfWork.TaskRepository.Add(element); // _taskUnitOfWork.TomatoRepository.Update(curentTomato); _taskUnitOfWork.Commit(); }
public void FinishTomato(bool finishAlsoTask) { Domain.Tomato tomato = _taskUnitOfWork.TomatoRepository.GetCurrent(); tomato.Finish(); _taskUnitOfWork.TomatoRepository.Update(tomato); if (finishAlsoTask) { List <Domain.Element> elements = _taskUnitOfWork.TaskRepository.GetElements(tomato.Elements.Select(x => x.ElementId).ToList()); //pw: chage it elements.ForEach(x => { x.Finish(DateTime.Now); _taskUnitOfWork.TaskRepository.Update(x); }); } _taskUnitOfWork.Commit(); }
public void AddElementForExistingTomatoTest() { IMapper mapper = GetMapper(); var taskContext = GetTaskContextInMemory(); taskContext.Tomato.Add(new Tomato() { Status = CoreObjects.Tomato.Status.New }); taskContext.SaveChanges(); // var taskContext = GetTaskContextInMemory(); TomatoRepository tomatoRepository = new TomatoRepository(taskContext, mapper); TaskRepository taskRepository = new TaskRepository(taskContext, mapper, new DateTimeTools.DateTimePT()); TaskUnitOfWork taskUnitOfWork = new TaskUnitOfWork(taskContext, taskRepository, tomatoRepository, null); Domain.Tomato currentTomato = taskUnitOfWork.TomatoRepository.GetCurrent(); var element = new Domain.Element("pawel", "Details", CoreObjects.ElementType.Task, 1); element.Tomatoes.Add(currentTomato); taskUnitOfWork.TaskRepository.Add(element); taskUnitOfWork.Commit(); }