Esempio n. 1
0
        // PUT api/TodoList/5
        public HttpResponseMessage PutProject(int id, ProjectDto projectDto)
        {
            if (ModelState.IsValid && id == projectDto.ProjectId)
            {
                Project todoList = projectDto.ToEntity();
                if (db.Entry(todoList).Entity.UserId != User.Identity.Name)
                {
                    // Trying to modify a record that does not belong to the user
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized));
                }

                db.Entry(todoList).State = EntityState.Modified;

                try
                {
                    db.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError));
                }

                return(Request.CreateResponse(HttpStatusCode.OK));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }
        }
Esempio n. 2
0
        public async Task <ProjectDto> CreateAsync(int companyId, ProjectDto projectDto)
        {
            var company = await Uow.Companies.GetByIdAsync(companyId);

            if (company == null)
            {
                throw new ArgumentException($"Company with id: '{companyId}' not found", nameof(companyId));
            }

            try
            {
                var project = projectDto.ToEntity();
                project.CompanyId = companyId;

                Uow.Projects.Create(project);
                await Uow.CommitAsync();

                return(project.ToDto());
            }
            catch (Exception e)
            {
                Logger.LogError(e, "Error while creating project");
                throw;
            }
        }
Esempio n. 3
0
        public ProjectDto UpdateProject(ProjectDto projectDto)
        {
            if (projectDto.Id <= 0)
            {
                return(null);
            }

            var project = projectDto.ToEntity();
            var updated = _projectDao.Update(project);

            _projectDao.Commit();

            return(updated.ToDto());
        }
Esempio n. 4
0
        // POST api/TodoList
        public HttpResponseMessage PostProject(ProjectDto projectDto)
        {
            if (ModelState.IsValid)
            {
                projectDto.UserId = User.Identity.Name;
                Project todoList = projectDto.ToEntity();
                db.Projects.Add(todoList);
                db.SaveChanges();
                projectDto.ProjectId = todoList.ProjectId;

                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, projectDto);
                response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = projectDto.ProjectId }));
                return(response);
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }
        }
Esempio n. 5
0
        public string CreateProject(ProjectDto projectDto)
        {
            string returnMessage;

            var project = projectDto.ToEntity();

            if (project.Id > 0)
            {
                _projectDao.Update(project);
                returnMessage = "Project updated";
            }
            else
            {
                _projectDao.Create(project);
                returnMessage = "Project created";
            }

            _projectDao.Commit();

            return(returnMessage);
        }
 public async Task <IActionResult> NewProject([FromBody] ProjectDto project)
 {
     return(Success(await _projectService.Add(project.ToEntity(), true)));
 }
Esempio n. 7
0
        // POST api/TodoList
        public HttpResponseMessage PostProject(ProjectDto projectDto)
        {
            if (ModelState.IsValid)
            {
                projectDto.UserId = User.Identity.Name;
                Project todoList = projectDto.ToEntity();
                db.Projects.Add(todoList);
                db.SaveChanges();
                projectDto.ProjectId = todoList.ProjectId;

                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, projectDto);
                response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = projectDto.ProjectId }));
                return response;
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }
        }
Esempio n. 8
0
        // PUT api/TodoList/5
        public HttpResponseMessage PutProject(int id, ProjectDto projectDto)
        {
            if (ModelState.IsValid && id == projectDto.ProjectId)
            {
                Project todoList = projectDto.ToEntity();
                if (db.Entry(todoList).Entity.UserId != User.Identity.Name)
                {
                    // Trying to modify a record that does not belong to the user
                    return Request.CreateResponse(HttpStatusCode.Unauthorized);
                }

                db.Entry(todoList).State = EntityState.Modified;

                try
                {
                    db.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    return Request.CreateResponse(HttpStatusCode.InternalServerError);
                }

                return Request.CreateResponse(HttpStatusCode.OK);
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }
        }