Exemplo n.º 1
0
        public ActionResult Compily(Model.Models.Projects[] projectList)
        {
            string sessionId   = Request.Cookies["sessionId"].Value;
            Users  LoginUser   = _UsersService.GetCurrentUserBySessionId(sessionId);
            bool   isSucessful = false;
            string errMsg      = string.Empty;

            foreach (Model.Models.Projects project in projectList)
            {
                StringBuilder compilyCommand = new StringBuilder();
                compilyCommand.Append("MSBuild");
                compilyCommand.Append(" " + project.ProjectPath);
                compilyCommand.Append(" " + @"/t:Build /p:Configuration=Debug;WarningLevel=2");
                //string result = PMY.Common.ExecuteCMDHelper.ExecuteCMD(compilyCommand.ToString());
                Model.Models.TaskList task = new Model.Models.TaskList()
                {
                    CMDCommand = compilyCommand.ToString(),
                    TaskType   = Model.TaskType.编译,
                    TaskStatus = Model.TaskStatus.未处理,
                    ActionPath = project.ProjectPath,
                    CreateTime = DateTime.Now,
                    Creator    = LoginUser.UserName
                };
                isSucessful = _TaskListService.AddEntity(task);
                if (isSucessful)
                {
                    project.CreateTime      = DateTime.Now;//必须赋值,否则默认最小值0001.1.1,会出现“从 datetime2 数据类型到 datetime 数据类型的转换产生一个超出范围的值”
                    project.LastCompileTime = DateTime.Now;
                    _ProjectsService.EditEntity(project);
                }
                else
                {
                    errMsg = project.ProjectName + "任务添加失败";
                    break;
                }
            }

            AjaxResult ajaxResult = null;

            if (isSucessful)
            {
                ajaxResult = new AjaxResult()
                {
                    Result    = DoResult.Success,
                    PromptMsg = "任务添加成功"
                };
            }
            else
            {
                ajaxResult = new AjaxResult()
                {
                    Result    = DoResult.Success,
                    PromptMsg = errMsg
                };
            }
            return(Json(ajaxResult));
        }
        public ActionResult Update([Bind(Include = "Id, FolderName, FolderPath, Sort, CreateTime")] Model.Models.SVNFolders[] svnFoldersList)
        {
            string        sessionId     = Request.Cookies["sessionId"].Value;
            Users         LoginUser     = _UsersService.GetCurrentUserBySessionId(sessionId);
            StringBuilder updateCommand = new StringBuilder();

            updateCommand.Append("svn update");
            foreach (Model.Models.SVNFolders folder in svnFoldersList)
            {
                updateCommand.Append(" " + folder.FolderPath);
            }
            Model.Models.TaskList task = new Model.Models.TaskList()
            {
                CMDCommand = updateCommand.ToString(),
                TaskType   = Model.TaskType.更新,
                TaskStatus = Model.TaskStatus.未处理,
                ActionPath = "",
                CreateTime = DateTime.Now,
                Creator    = LoginUser.UserName
            };
            bool isSucessful = _TaskListService.AddEntity(task);
            //string result = PMY.Common.ExecuteCMDHelper.ExecuteCMD(updateCommand.ToString());
            AjaxResult ajaxResult = null;

            if (isSucessful)
            {
                ajaxResult = new AjaxResult()
                {
                    Result    = DoResult.Success,
                    PromptMsg = "任务添加成功"
                };
            }
            else
            {
                ajaxResult = new AjaxResult()
                {
                    Result    = DoResult.Failed,
                    PromptMsg = "任务添加失败"
                };
            }
            return(Json(ajaxResult));
        }