public BoardStep SaveBoardStepBySprintId(int _sprintId, int _projectId, int _personId) { try { using (var context = new ProjectManagementEntities()) { int numberOfInserted = 0; var boardStep = new BoardStep(); var gorev = context.Step.Where(x => x.SprintId == _sprintId && x.Status != 0).ToList(); foreach (var item in gorev) { item.Status = 2; boardStep = new BoardStep() { StepId = item.Id, BoardId = context.Board.FirstOrDefault(x => x.ProjectId == _projectId && x.Status == 1).Id, PersonId = _personId, Description = "", Date = DateTime.Now }; context.BoardStep.Add(boardStep); numberOfInserted = context.SaveChanges(); } return(numberOfInserted > 0 ? boardStep : null); } } catch (System.Exception exc) { throw exc; } }
public Sprint StartSprint(int _sprintId, int _personId) { try { using (var context = new ProjectManagementEntities()) { var sprint = context.Sprint.FirstOrDefault(x => x.Id == _sprintId); var tasks = context.Step.Where(x => x.SprintId == sprint.Id && x.Status > 0).ToList(); var board = context.Board.Where(x => x.ProjectId == sprint.ProjectId).ToList().OrderBy(x => x.Id).ToList().FirstOrDefault(); foreach (var item in tasks) { var taskWorkerIds = context.StepPerson.Where(x => x.StepId == item.Id).ToList().Select(x => x.PersonId).ToList(); taskWorkerIds.Add(_personId); taskWorkerIds = taskWorkerIds.Distinct().ToList(); var boardstep = new BoardStep() { BoardId = board.Id, Date = DateTime.Now, Description = "", PersonId = 0, StepId = item.Id }; context.BoardStep.Add(boardstep); context.SaveChanges(); //foreach (var workerId in taskWorkerIds) //{ // var boardStep = new BoardStep() // { // BoardId = board.Id, // StepId = item.Id, // PersonId = workerId, // Description = "", // Date = DateTime.Now // }; // context.BoardStep.Add(boardStep); // int numberOfInserted = context.SaveChanges(); //} } sprint.Status = 2; context.SaveChanges(); return(sprint); } } catch (Exception exc) { throw exc; } }
public Step SaveWhatsappTaskAsStep(int _redirectId, int _milestoneId, int _sprintId, int _headOfDepartmentPersonId, int _personId, string _title, string _desc) { try { using (var context = new ProjectManagementEntities()) { var redirect = context.WhatsappMessageRedirect.FirstOrDefault(x => x.Id == _redirectId); var message = context.WhatsappMessage.FirstOrDefault(x => x.Id == redirect.MessageId); var step = new Step() { AssigneeUser = _headOfDepartmentPersonId, Description = _desc, MilestoneId = _milestoneId, Name = _title, SprintId = _sprintId, Status = 1 }; context.Step.Add(step); int numberOfInserted = context.SaveChanges(); if (numberOfInserted > 0) { var stepPerson = new StepPerson() { Description = "", PersonId = _personId, StepId = step.Id }; context.StepPerson.Add(stepPerson); context.SaveChanges(); var sprint = context.Sprint.FirstOrDefault(x => x.Id == _sprintId); if (sprint.Status == 2) { var boardStep = new BoardStep() { Date = DateTime.Now, Description = "Whatsapp üzerinden yönlendirilmiştir.", PersonId = _headOfDepartmentPersonId, BoardId = context.Board.Where(x => x.ProjectId == sprint.ProjectId && x.Status > 0).ToList().FirstOrDefault().Id, StepId = step.Id }; context.BoardStep.Add(boardStep); context.SaveChanges(); } redirect.Status = 0; context.SaveChanges(); return(step); } return(null); } } catch (Exception exc) { throw exc; } }
public Step SaveStep(Step _s, List <int> _workerIds) { try { using (var context = new ProjectManagementEntities()) { context.Step.Add(_s); int numberOfInserted = context.SaveChanges(); if (numberOfInserted > 0) { foreach (var item in _workerIds) { var stepPerson = new StepPerson() { PersonId = item, StepId = _s.Id }; context.StepPerson.Add(stepPerson); context.SaveChanges(); } var sprint = context.Sprint.FirstOrDefault(x => x.Id == _s.SprintId); if (sprint.Status == 2) { var boardstep = new BoardStep() { BoardId = context.Board.Where(x => x.ProjectId == sprint.ProjectId).ToList().OrderBy(x => x.Id).ToList().FirstOrDefault().Id, Date = DateTime.Now, Description = "", PersonId = 0, StepId = _s.Id }; context.BoardStep.Add(boardstep); context.SaveChanges(); //foreach (var item in _workerIds) //{ // var boardstep = new BoardStep() // { // BoardId = context.Board.Where(x => x.ProjectId == sprint.ProjectId).ToList().OrderBy(x => x.Id).ToList().FirstOrDefault().Id, // Date = DateTime.Now, // Description = "", // PersonId = item, // StepId = _s.Id // }; // context.BoardStep.Add(boardstep); // context.SaveChanges(); //} } } return(numberOfInserted > 0 ? _s : null); } } catch (System.Exception exc) { throw exc; } }