Beispiel #1
0
        public async Task <IActionResult> UpdateFullAgileItem([FromBody] AgileItemVm agileItemVm)
        {
            var success = await _agileItemRepository.UpdateFullAgileItem(agileItemVm);

            if (success)
            {
                return(Ok(success));
            }
            return(new StatusCodeResult(500));
        }
        // used to update a full agile item, usually from the details page
        public async Task <bool> UpdateFullAgileItem(AgileItemVm updatedItem)
        {
            try
            {
                var item = await _context.AgileItems.Where(a => a.Id == updatedItem.Id).FirstOrDefaultAsync();

                if (item != null)
                {
                    item.AgileItemType = updatedItem.AgileItemType;
                    item.AssigneeId    = updatedItem.AssigneeId;
                    item.AssigneeName  = updatedItem.AssigneeName;
                    item.BoardId       = updatedItem.BoardId;
                    item.CreatedBy     = updatedItem.CreatedBy;
                    item.CreatedOn     = updatedItem.CreatedOn;
                    item.Description   = updatedItem.Description;
                    item.DueBy         = updatedItem.DueBy;
                    item.EstimatedTime = updatedItem.EstimatedTime;
                    item.Id            = updatedItem.Id;
                    item.IsComplete    = updatedItem.IsComplete;
                    item.IsActive      = updatedItem.IsActive;
                    item.LoggedTime    = updatedItem.LoggedTime;
                    item.Order         = updatedItem.Order;
                    item.ParentId      = updatedItem.ParentId;
                    item.Priority      = updatedItem.Priority;
                    item.Status        = updatedItem.Status;
                    item.StoryPoints   = updatedItem.StoryPoints;
                    item.Title         = updatedItem.Title;

                    if (updatedItem.BlockedReason != null)
                    {
                        item.BlockedReason = updatedItem.BlockedReason;
                    }

                    await _context.SaveChangesAsync();

                    return(true);
                }
            } catch (Exception e)
            {
                _logger.LogError("Exception when creating updating item, Exception:" + e + "Stack trace:" + e.StackTrace + "item: " + updatedItem);
            }
            return(false);
        }
 public void Setup()
 {
     _mockAgileItemsRepository = new Mock <IAgileItemRepository>();
     _agileItemsController     = new AgileItemsController(_mockAgileItemsRepository.Object);
     _stubShortVm = new AgileItemShortVm
     {
         Id    = Guid.Parse("08a60a7f-6d09-438c-97f7-cef7426b1b83"),
         Order = 1,
         Title = "Stub Title"
     };
     _stubCreateAgileItemDto = new CreateAgileItemDto
     {
         AssigneeId    = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         AssigneeName  = "Oli",
         Board         = Guid.Parse("aada6f2a-8854-4a5e-a907-2244f43408a1"),
         CreatedBy     = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         Description   = "Stub create",
         DueBy         = DateTime.Now.AddHours(1),
         EstimatedTime = 1,
         ItemType      = Models.Types.AgileItemType.Story,
         Order         = null,
         ParentId      = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
         Priority      = Models.Types.Priority.High,
         StoryPoints   = 3,
         Title         = "A stub creation of a story"
     };
     _stubUpdateItemVm = new BoardTaskVm
     {
         Id           = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
         AssigneeId   = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         AssigneeName = "Oli",
         Description  = "Updated",
         Order        = 3,
         Priority     = Models.Types.Priority.Low,
         Status       = Models.Types.Status.Complete,
         Title        = "Updated title"
     };
     _stubFullAgileItemVm = new AgileItemVm
     {
         Id            = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aee"),
         AssigneeId    = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         AssigneeName  = "Oli",
         CreatedBy     = Guid.Parse("0f294219-704d-40a5-afe9-a74fffa7003f"),
         Description   = "Stub Story",
         DueBy         = DateTime.Now.AddHours(1),
         EstimatedTime = 1,
         AgileItemType = Models.Types.AgileItemType.Story,
         Order         = null,
         Priority      = Models.Types.Priority.High,
         Title         = "A stub creation of a story",
         CreatedOn     = DateTime.Now,
         IsActive      = true,
         IsComplete    = false,
         Status        = Models.Types.Status.InProgress,
         ParentId      = Guid.Parse("5eb09b45-9c70-4465-b62d-535e28b16aed"),
         BoardId       = Guid.Parse("aada6f2a-8854-4a5e-a907-2244f43408a1"),
     };
     _stubOverviewVm = new AgileItemOverviewVm
     {
         AssigneeName = "Oli",
         Description  = "Stub Story",
         Order        = null,
         Priority     = Models.Types.Priority.High,
         Title        = "A stub creation of a story",
         IsComplete   = false,
         Status       = Models.Types.Status.InProgress,
     };
     _stubShortVmList = new List <AgileItemShortVm> {
         _stubShortVm
     };
     _stubOverviewVmList = new List <AgileItemOverviewVm> {
         _stubOverviewVm
     };
 }