public Response <Project> GetProjectInfo(GetProjectByProjectIdRequest request) { Response <Project> response = new Response <Project>(); if (request == null) { ArgumentNullException ex = new ArgumentNullException("GetProjectInfo request"); LogError(ex); response.ErrorCode = ErrorCode.Argument; response.Exception = ex; return(response); } ProjectAccessor accessor = new ProjectAccessor(); try { response.Result = accessor.GetProjectById(request.ProjectID, request.State); response.IsSuccess = true; } catch (Exception ex) { LogError(ex); response.IsSuccess = false; response.ErrorCode = ErrorCode.Technical; } return(response); }
public ActionResult Create(FormCollection form) { ProjectModel vm = new ProjectModel(); if (ModelState.IsValid) { ProjectService PS = new ProjectService(); try { GetProjectByProjectIdRequest myRequest = new GetProjectByProjectIdRequest() { Name = Request.Form["Name"].ToString(), Description = Request.Form["Description"].ToString(), Code = Request.Form["Code"].ToString() }; Response <GetProjectByProjectIdRequest> respone = PS.SaveProject(myRequest); if (respone.IsSuccess) { vm.Name = myRequest.Name; vm.Description = myRequest.Description; vm.Code = myRequest.Code; //刷新项目缓存 ApplicationConfigHelper.RefreshProject(); //刷新项目角色缓存 ApplicationConfigHelper.RefreshProjectRole(new GetRoleByProjectIDRequest { ProjectID = base.UserInfo.ProjectID, GetAll = false }); //刷新新增项目下的所有用户 如果要获取当前项目想的所有用户 取 ProjectId=base.UserInfo.ProjectID 即可 ApplicationConfigHelper.RefreshUserByProjectId(new UserRequest { ProjectId = base.UserInfo.ProjectID }); //刷新项目下的用户角色 ApplicationConfigHelper.GetProjectUserRoles(base.UserInfo.ProjectID); if (base.UserInfo.ProjectRoleID != 1) //排除超级管理员角色 因为其本身是最高级 //刷新某个角色下的菜单 { ApplicationConfigHelper.RefreshProjectRoleMenu(base.UserInfo.ProjectRoleID); } } ViewBag.Message = respone.SuccessMessage; } catch (Exception ex) { ViewBag.Message = ex.Message; } } return(View(vm)); }
public ActionResult Edit(long ID, string state) { ProjectModel vm = null; try { ProjectService service = new ProjectService(); GetProjectByProjectIdRequest PID = new GetProjectByProjectIdRequest(); PID.ProjectID = ID; PID.State = state.ToLower().Equals("false") ? "0" : "1"; vm = new ProjectModel(service.GetProjectInfo(PID).Result); }catch (Exception err) { } return(View(vm)); }
public Response <GetProjectByProjectIdRequest> SaveProject(GetProjectByProjectIdRequest request) { Response <GetProjectByProjectIdRequest> response = new Response <GetProjectByProjectIdRequest>(); if (request == null) { ArgumentNullException ex = new ArgumentNullException("GetProject request"); LogError(ex); response.IsSuccess = false; } ProjectAccessor accessor = new ProjectAccessor(); Project project = new Project(); project.Name = request.Name; project.Description = request.Description; project.Code = request.Code; try { int returnValue = accessor.SaveProject(project); if (returnValue == -1) { response.SuccessMessage = "公司名称已存在!"; } else { response.SuccessMessage = "保存成功!"; response.IsSuccess = true; } } catch (Exception ex) { response.SuccessMessage = ex.Message; LogError(ex); } return(response); }