コード例 #1
0
        public bool DeleteBacklog(int teamID, int backlogID)
        {
            BacklogInfoModel backlogInfoModel = this.GetBacklogInfoModel(teamID, backlogID);

            if (backlogInfoModel == null)
            {
                Enforce.Throw(new LogicErrorException("不存在该Backlog"));
            }
            backlogInfoModel.state = (int)BacklogState.REMOVE;
            return(this._backlogBll.Update(Mapper.Map <BacklogInfoModel, T_BACKLOG>(backlogInfoModel)));
        }
コード例 #2
0
        public BacklogInfoModel ModifyBackLog(int teamID, int backlogID, string title, string content, string standard, string assignUserMail, int selectProjectID, int state, int?level)
        {
            var userInfoModel = this._userRepository.GetUser(assignUserMail, 1);

            if (userInfoModel == null)
            {
                Enforce.Throw(new LogicErrorException("负责人账号不存在"));
            }

            var projectRepoModel = this._projectRepository.GetProjectDetail(selectProjectID);

            if (projectRepoModel == null || projectRepoModel.info == null)
            {
                Enforce.Throw(new LogicErrorException("所选项目不存在"));
            }
            if (this._projectRepository.GetProjectMember(selectProjectID, assignUserMail) == null)
            {
                Enforce.Throw(new LogicErrorException("负责人不在所选项目中"));
            }

            BacklogInfoModel backlogInfoModel = this.GetBacklogInfoModel(teamID, backlogID);

            if (backlogInfoModel == null)
            {
                Enforce.Throw(new LogicErrorException("不存在该Backlog"));
            }

            backlogInfoModel.title          = title;
            backlogInfoModel.content        = content;
            backlogInfoModel.standard       = standard;
            backlogInfoModel.assignUserMail = userInfoModel.info.mail;
            backlogInfoModel.assignUserName = userInfoModel.info.userName;
            backlogInfoModel.projectID      = selectProjectID;
            backlogInfoModel.projectName    = projectRepoModel.info.projectName;
            backlogInfoModel.state          = state;
            backlogInfoModel.level          = level;
            if (this._backlogBll.Update(Mapper.Map <BacklogInfoModel, T_BACKLOG>(backlogInfoModel)))
            {
                return(backlogInfoModel);
            }
            else
            {
                return(null);
            }
        }
コード例 #3
0
        public BacklogInfoModel GetBacklogInfoModel(int teamID, int backlogID)
        {
            BacklogInfoModel backlogInfoModel = null;
            var backlogEntity = this._backlogBll.GetEntity(new DapperExQuery <T_BACKLOG>().AndWhere(s => s.ID, OperationMethod.Equal, backlogID));

            if (backlogEntity != null)
            {
                backlogInfoModel = Mapper.Map <T_BACKLOG, BacklogInfoModel>(backlogEntity);
                if (!backlogInfoModel.teamID.Equals(teamID))
                {
                    Enforce.Throw(new LogicErrorException("当前团队不存在该Backlog"));
                }
                if (backlogInfoModel.state.Equals((int)BacklogState.REMOVE))
                {
                    Enforce.Throw(new LogicErrorException("该Backlog已被删除"));
                }
            }
            return(backlogInfoModel);
        }
コード例 #4
0
        public BacklogInfoModel CreateBackLog(int teamID, string title, string content, string standard, string assignUserMail, int selectProjectID, int state, int?level, string createUserMail)
        {
            var projectInfoModel = this._projectRepository.GetProjectDetail(selectProjectID);

            if (projectInfoModel == null)
            {
                Enforce.Throw(new LogicErrorException("项目不存在"));
            }
            var userInfoModel = this._userRepository.GetUser(assignUserMail, 1);

            if (userInfoModel == null)
            {
                Enforce.Throw(new LogicErrorException("负责人账号不存在"));
            }
            if (this._projectRepository.GetProjectMember(selectProjectID, userInfoModel.info.mail) == null)
            {
                Enforce.Throw(new LogicErrorException("负责人不在项目中"));
            }
            BacklogInfoModel backlogInfoModel = new BacklogInfoModel();

            backlogInfoModel.teamID         = teamID;
            backlogInfoModel.title          = title;
            backlogInfoModel.content        = content;
            backlogInfoModel.standard       = standard;
            backlogInfoModel.sprintID       = 0;
            backlogInfoModel.assignUserMail = userInfoModel.info.mail;
            backlogInfoModel.assignUserName = userInfoModel.info.userName;
            backlogInfoModel.projectID      = selectProjectID;
            backlogInfoModel.projectName    = projectInfoModel.info.projectName;
            backlogInfoModel.state          = state;
            backlogInfoModel.level          = level;
            backlogInfoModel.createUserMail = createUserMail;
            backlogInfoModel.createTime     = DateTime.Now;
            var backlog = Mapper.Map <BacklogInfoModel, T_BACKLOG>(backlogInfoModel);

            if (this._backlogBll.Add(backlog))
            {
                backlogInfoModel = Mapper.Map <T_BACKLOG, BacklogInfoModel>(backlog);
            }
            return(backlogInfoModel);
        }