示例#1
0
        public async Task <IHttpActionResult> PostOrder(WorkItemReturnModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var developer = AppUserManager.Users.Single(e => e.Id == model.AssignedDeveloper.Id);
            var project   = DB.Projects.Single(a => a.Id == model.ProjectId);

            var workItem = new WorkItem()
            {
                DueDate           = model.DueDate,
                AssignedDeveloper = developer,
                Description       = model.Description,
                EstimatedTime     = model.EstimatedTime,
                Name    = model.Name,
                Status  = ProjectStatus.Initial,
                Project = project
            };

            DB.WorkItems.Add(workItem);
            DB.Entry(project).State = EntityState.Modified;
            await DB.SaveChangesAsync();

            return(Created("api/workItems/" + workItem.Id, TheModelFactory.Create(workItem)));
        }
示例#2
0
        public async Task <IHttpActionResult> UpdateTask(int id, WorkItemReturnModel model)
        {
            if (id != model.Id)
            {
                return(BadRequest());
            }

            var workItem = await DB.WorkItems.SingleOrDefaultAsync(st => st.Id == id);

            if (workItem == null)
            {
                return(NotFound());
            }

            workItem.Description   = model.Description;
            workItem.DueDate       = model.DueDate;
            workItem.EstimatedTime = model.EstimatedTime;
            workItem.Name          = model.Name;
            workItem.Status        = model.Status;

            DB.Entry(workItem).State = EntityState.Modified;
            await DB.SaveChangesAsync();

            return(Ok(this.TheModelFactory.Create(workItem)));
        }