Beispiel #1
0
        public async Task <bool> ChangeStatusProject([FromForm] int projectId, [FromForm] StatusProject newStatus)
        {
            string userId = AuthJWT.GetCurrentId(HttpContext, out int statusId);

            if (statusId != 0 || userId == null)
            {
                Response.StatusCode = 401;
                return(false);
            }

            var proj = await ApplicationUser.CheckAccessEditProject(_db, projectId, userId);

            if (proj == null)
            {
                Response.StatusCode = 404;
                return(false);
            }
            try
            {
                await proj.SetStatus(_db, newStatus);
            }
            catch (DbUpdateConcurrencyException)
            {
                Response.StatusCode = 527;
                return(false);
            }

            return(true);
        }
        public async Task <IActionResult> AddProject([FromBody] ProjectModel project)
        {
            string  str = "Create successfully";
            Project p   = new Project();

            foreach (var item in project.projectData)
            {
                p.Name              = item.Name;
                p.Description       = item.Description;
                p.StartDate         = item.StartDate;
                p.FinishDate        = item.FinishDate;
                p.WorkingTimePerDay = item.WorkingTimePerDay;
                p.WorkingDayPerWeek = item.WorkingDayPerWeek;
                p.Color             = item.Color;
                p.Status            = "null";
                p.User_id           = item.User_id;
            }
            _context.Project.Add(p);
            await _context.SaveChangesAsync();

            foreach (var item in project.statusData)
            {
                StatusProject sp = new StatusProject();
                sp.StatusName = item.StatusName;
                sp.Serial     = item.Serial;
                sp.Relation   = item.Relation;
                sp.ProjectId  = p.Id;
                _context.StatusProject.Add(sp);
            }
            await _context.SaveChangesAsync();

            var result = JsonConvert.SerializeObject(new { result = str });

            return(Ok(result));
        }
        public async Task <IActionResult> AddNewStatus([FromBody] StatusProjectModel status)
        {
            string        str           = "Create Successfully";
            StatusProject statusProject = new StatusProject();

            foreach (var item in status.statusData)
            {
                statusProject.StatusName = item.StatusName;
                statusProject.Serial     = item.Serial;
                statusProject.ProjectId  = item.ProjectId;
                statusProject.Relation   = 0;
            }
            _context.StatusProject.Add(statusProject);
            await _context.SaveChangesAsync();

            var result = JsonConvert.SerializeObject(new { result = str });

            return(Ok(result));
        }
Beispiel #4
0
 public async Task SetStatus(ApplicationDbContext db, StatusProject newStatus)
 {
     this.Status = newStatus;
     await db.SaveChangesAsync();
 }