Esempio n. 1
0
        public static BacklogViewModel GetBacklogViewModel(int productBacklogId)
        {
            using (var db = new ScrumApplicationDbContext())
            {
                var backlogModel = new BacklogViewModel();
                backlogModel.Backlog = db.ProductBacklogs.FirstOrDefault
                                           (x => x.ProductBacklogId == productBacklogId);
                var existProject = new Project();
                existProject = db.Projects.FirstOrDefault(x => x.ProjectId == backlogModel.Backlog.ProjectId);
                backlogModel.ProjectEpics   = EpicRepository.GetEpics(backlogModel.Backlog.ProjectId);
                backlogModel.Epic.ProjectId = backlogModel.Backlog.ProjectId;
                var query = from btm in db.BacklogToMembers
                            where btm.ProductBacklogId == backlogModel.Backlog.ProductBacklogId
                            select btm;
                var teamMembers = new List <Member>();
                var tquery      = from member in db.Members
                                  where member.TeamId == existProject.TeamId
                                  select member;
                teamMembers = tquery.ToList();
                var unAssignedTeamMembers = new List <Member>();
                unAssignedTeamMembers = teamMembers.ToList();
                unAssignedTeamMembers = unAssignedTeamMembers.OrderBy(x => x.MemberId).ToList();
                foreach (var btm in query.ToList())
                {
                    var member = new MemberViewModel();
                    member.MemberId = btm.MemberId;
                    member.Name     = btm.MemberName;
                    backlogModel.AssignedMembers.Add(member);
                    foreach (var tmember in teamMembers)
                    {
                        if (tmember.MemberId == member.MemberId)
                        {
                            unAssignedTeamMembers.Remove(tmember);
                        }
                    }
                }
                foreach (var umember in unAssignedTeamMembers)
                {
                    var memberModel = new MemberViewModel();
                    memberModel.MemberId = umember.MemberId;
                    memberModel.Name     = umember.Name;
                    backlogModel.UnAssignedMembers.Add(memberModel);
                }
                var cquery = from comment in db.Comments
                             where comment.ProductBacklogId == backlogModel.Backlog.ProductBacklogId
                             orderby comment.CommentId descending
                             select comment;

                backlogModel.BacklogComments = cquery.ToList();
                if (IsUserAssigned(backlogModel.Backlog.ProductBacklogId, null) == 1)
                {
                    backlogModel.IsUserAssigned = true;
                }
                else
                {
                    backlogModel.IsUserAssigned = false;
                }
                return(backlogModel);
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> Post(BacklogViewModel data)
        {
            var content = JsonConvert.SerializeObject(data);
            await http.PostAsync("http://localhost:62021/api/backlog", new StringContent(content, Encoding.UTF8, "application/json"));

            return(Redirect("/backlog"));
        }
Esempio n. 3
0
        public ActionResult EditBacklog(BacklogViewModel backlogModel)
        {
            var _existBacklog = new ProductBacklog();

            _existBacklog = db.ProductBacklogs.FirstOrDefault(x => x.ProductBacklogId
                                                              == backlogModel.Backlog.ProductBacklogId);
            _existBacklog.Name               = backlogModel.Backlog.Name;
            _existBacklog.Priority           = backlogModel.Backlog.Priority;
            _existBacklog.StoryPoint         = backlogModel.Backlog.StoryPoint;
            _existBacklog.AcceptanceCriteria = backlogModel.Backlog.AcceptanceCriteria;
            _existBacklog.EpicId             = backlogModel.Backlog.EpicId;
            _existBacklog.SprintNo           = backlogModel.Backlog.SprintNo;
            _existBacklog.BacklogStatus      = backlogModel.Backlog.BacklogStatus;

            if (backlogModel.AssignMember != null)
            {
                var existMember = db.Members.FirstOrDefault
                                      (x => x.MemberId == backlogModel.AssignMember.MemberId);
                var backlogToMember = new BacklogToMember();
                if (existMember != null && backlogToMember != null)
                {
                    backlogToMember.MemberId         = existMember.MemberId;
                    backlogToMember.MemberName       = existMember.Name;
                    backlogToMember.ProductBacklogId = backlogModel.Backlog.ProductBacklogId;
                    db.BacklogToMembers.Add(backlogToMember);
                }
            }
            db.SaveChanges();

            ActivityRepository.ActivityCreator
                ("edited " + _existBacklog.Name + " backlog.", _existBacklog.ProjectId, _existBacklog.ProductBacklogId);
            return(RedirectToAction("EditBacklog", new { id = _existBacklog.ProductBacklogId,
                                                         sprintNo = backlogModel.ViewSprintNo, sortBy = backlogModel.ViewSortBy }));
        }
Esempio n. 4
0
        public ActionResult CreateBacklog(int projectId, int sprintNo = 0, int sortBy = 0)
        {
            var backlogModel = new BacklogViewModel();

            backlogModel.Backlog.ProjectId = projectId;
            backlogModel.ProjectEpics      = EpicRepository.GetEpics(projectId);
            backlogModel.Epic.ProjectId    = backlogModel.Backlog.ProjectId;

            backlogModel.ViewSortBy   = sortBy;
            backlogModel.ViewSprintNo = sprintNo;
            return(View(backlogModel));
        }
Esempio n. 5
0
        public ActionResult Index()
        {
            var viewModel = new BacklogViewModel();

            using (var database = new DatabaseEntities())
            {
                viewModel.Backlog = new List <Item>(
                    from i in database.Items
                    where !i.Approved
                    select i);
            }
            return(View(viewModel));
        }
Esempio n. 6
0
        public ActionResult CreateBacklog(BacklogViewModel backlogModel)
        {
            var backlogEpic = db.Epics.FirstOrDefault(x => x.EpicId == backlogModel.Backlog.EpicId);

            if (backlogEpic != null)
            {
                backlogModel.Backlog.EpicName = backlogEpic.Name;
                db.ProductBacklogs.Add(backlogModel.Backlog);
                db.SaveChanges();

                ActivityRepository.ActivityCreator
                    ("created " + backlogModel.Backlog.Name + " backlog.",
                    backlogModel.Backlog.ProjectId, backlogModel.Backlog.ProductBacklogId);

                return(RedirectToAction("EditBacklog", new { id = backlogModel.Backlog.ProductBacklogId, sprintNo = backlogModel.ViewSprintNo, sortBy = backlogModel.ViewSortBy }));
            }

            return(Content("Please assign a epic task first."));
        }
Esempio n. 7
0
        public IActionResult Index()
        {
            var backLogDetailList = new List <BacklogDetail>();
            var _projectId        = JsonConvert.DeserializeObject <Project>(HttpContext.Session.GetString("SelectedProject")).Id;
            var stepList          = StepDB.GetInstance().GetAllStep(_projectId);

            foreach (var item in stepList)
            {
                var assigneeUser = PersonDB.GetInstance().GetPersonById(item.AssigneeUser);
                var milestone    = MilestoneDB.GetInstance().GetMilestoneById(item.MilestoneId);

                if (milestone == null)
                {
                    continue;
                }

                backLogDetailList.Add(new BacklogDetail()
                {
                    SprintId            = item.SprintId,
                    AssigneeUserName    = $"{assigneeUser.Name} {assigneeUser.Surname}",
                    Descripton          = item.Description,
                    DetailName          = item.Name,
                    MilestoneName       = milestone.Name,
                    AssignedPersonNames = StepDB.GetInstance().GetStepPersonsByStepId(item.Id),
                    StepId     = item.Id,
                    StepStatus = item.Status
                });
            }

            var viewModel = new BacklogViewModel()
            {
                SprintList = SprintDB.GetInstance().GetAllSprintByProjectId(_projectId),
                Details    = backLogDetailList
            };

            return(View(viewModel));
        }