Exemplo n.º 1
0
        public async Task <IActionResult> Edit(ProjectResponseDTO project)
        {
            if (!ModelState.IsValid)
            {
                return(View(project));
            }

            var editedProyect = await CallApiPUTAsync <ProjectResponseDTO>(uri : "/api/projects/myprojects/" + project.Id.ToString(), body : project, isSecured : true);

            if (editedProyect == null)
            {
                return(View(project));
            }

            return(RedirectToAction("Edit", new { projectId = project.Id }));
        }
Exemplo n.º 2
0
        public IActionResult Publish()
        {
            var userCredentials = GetUserCredentials();

            if (userCredentials is null || userCredentials.Role != "Contratista")
            {
                return(PageNotFound());
            }

            var newProject = new ProjectResponseDTO();

            newProject.UserId          = userCredentials.Id;
            newProject.CloseDate       = DateTime.Now.AddDays(15);
            newProject.PostulantsLimit = 10;

            return(View(newProject));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Publish(ProjectResponseDTO project)
        {
            if (!ModelState.IsValid)
            {
                return(View(project));
            }

            if (project.NotCloseDate)
            {
                project.CloseDate = DateTime.MinValue;
            }

            if (project.MaxPostulants)
            {
                project.PostulantsLimit = 50;
            }

            var newProject = await CallApiPOSTAsync <ProjectResponseDTO>(uri : "/api/projects", body : project, isSecured : true);

            return(RedirectToRoute(new { action = "Index", controller = "Project", projectId = newProject.Id }));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> CloseProject(ProjectResponseDTO project)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("Index", project));
            }

            var userCredentials = GetUserCredentials();

            if (userCredentials.Id != project.UserId)
            {
                return(RedirectToAction("AccessDenied", "Authorization"));
            }

            var editedProyect = await CallApiPUTAsync <ProjectResponseDTO>(uri : "/api/projects/myprojects/" + project.Id.ToString(), body : project, isSecured : true);

            if (editedProyect == null)
            {
                return(RedirectToAction("Index", new { projectId = project.Id }));
            }

            return(RedirectToAction("Index", "Review"));
        }