Beispiel #1
0
        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);
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        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));
        }
Beispiel #4
0
        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);
        }