Exemplo n.º 1
0
        public ActionResult ShowStep(int stepid)
        {
            Step   step   = stepService.findStep(stepid);
            string idUser = User.Identity.GetUserId();

            //file
            string             stepPath = string.Format("Upload/{0}/{1}/{2}", step.Process.IdGroup, step.Process.Id, step.Id);
            List <FileManager> files    = fileService.findFiles(step.Process.IdGroup, stepPath);

            ViewData["Files"]       = files;
            ViewData["UserRoles"]   = participateService.getRoleOfMember(idUser, step.Process.IdGroup);
            ViewData["FileMaxSize"] = db.ConfigRules.Find("filesize");

            return(View(step));
        }
Exemplo n.º 2
0
        public JsonResult AddTask(int stepid, string name, int?idRole, string description, string inputConfig, string fileConfig, HttpPostedFileBase fileupload)
        {
            HttpStatusCode status = HttpStatusCode.OK;
            string         message;
            object         response;
            //int idstep = (int)Session["idStep"];
            Step step = stepService.findStep(stepid);


            if (name == "")
            {
                status   = HttpStatusCode.InternalServerError;
                message  = "Name task is required";
                response = new { message = message, status = status };
                return(Json(response, JsonRequestBehavior.AllowGet));
            }

            if (idRole != null)
            {
                int  idR  = idRole.GetValueOrDefault();
                Role role = roleService.findRoleOfProcess(idR, step.Process.Id);
                if (role == null)
                {
                    //role not exist
                    status   = HttpStatusCode.InternalServerError;
                    message  = "Role not exist";
                    response = new { message = message, status = status };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
            }

            TaskProcess task = taskService.addtask(step.Id, name, idRole, description, inputConfig, fileConfig);
            //create directory
            Group  group         = groupService.findGroup(step.Process.Group.Id);
            string directoryPath = String.Format("Upload/{0}/{1}/{2}/{3}", group.Id, step.Process.Id, step.Id, task.Id);

            fileService.createDirectory(directoryPath);
            //file
            fileService.saveFile(group.Id, fileupload, directoryPath, Direction.Task);

            SetFlash(FlashType.success, "Created Task Successfully");
            message  = "Created Task Successfully";
            response = new { message = message, status = status };
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 3
0
        public JsonResult uploadFile(int groupid, int?processid, int?stepid, int?taskid, HttpPostedFileBase FileUpload, Direction direction)
        {
            HttpStatusCode status = HttpStatusCode.OK;
            string         message;
            object         response;

            if (FileUpload.ContentLength == 0)
            {
                status   = HttpStatusCode.NoContent;
                message  = "Your File is empty";
                response = new { message = message, status = status };
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            ConfigRule fileSizeRule   = db.ConfigRules.Find("filesize");
            bool       isFileOverSize = fileService.checkFileOverSize(FileUpload);

            if (isFileOverSize)
            {
                status   = HttpStatusCode.InternalServerError;
                message  = string.Format("This file is too big ({0} {1} maximum)", fileSizeRule.Value, fileSizeRule.Unit);
                response = new { message = message, status = status };
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            string filePath;

            if (direction == Direction.Process)
            {
                Process pr = processService.findProcess(processid.GetValueOrDefault());
                if (pr == null)
                {
                    status   = HttpStatusCode.NotFound;
                    message  = "Process not found";
                    response = new { message = message, status = status };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                filePath = String.Format("Upload/{0}/{1}", pr.IdGroup, pr.Id);
            }
            else if (direction == Direction.Step)
            {
                Step st = stepService.findStep(stepid.GetValueOrDefault());
                if (st == null)
                {
                    status   = HttpStatusCode.NotFound;
                    message  = "Step not found";
                    response = new { message = message, status = status };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                filePath = String.Format("Upload/{0}/{1}/{2}", st.Process.Group.Id, st.Process.Id, st.Id);
            }
            else if (direction == Direction.Task)
            {
                TaskProcess tp = taskService.findTask(taskid.GetValueOrDefault());
                if (tp == null)
                {
                    status   = HttpStatusCode.NotFound;
                    message  = "Task not found";
                    response = new { message = message, status = status };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                filePath = String.Format("Upload/{0}/{1}/{2}/{3}", tp.Step.Process.Group.Id, tp.Step.Process.Id, tp.Step.Id, tp.Id);
            }
            else
            {
                Group gr = groupService.findGroup(groupid);
                if (gr == null)
                {
                    status   = HttpStatusCode.NotFound;
                    message  = "Group not found";
                    response = new { message = message, status = status };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                filePath = String.Format("Upload/{0}", gr.Id);
            }
            FileManager f    = fileService.saveFile(groupid, FileUpload, filePath, direction);
            object      data = new
            {
                id   = f.Id,
                name = f.Name
            };

            message  = "Save File Sucessfull";
            response = new { message = message, data = data, status = status };
            return(Json(response, JsonRequestBehavior.AllowGet));
        }