/** delete user story */ public void deleteUserStory() { try { boolean flag = true; Member owner = memberService.findProjectOwner(getProjectId()); UserStory userStoryTemp = userStoryService.findUserStoryById(Long.parseLong(deleteId)); userStoryService.delete(Long.parseLong(deleteId)); Member member = utils.getLoggedInMember(); String mailContent = "User story #" + userStoryTemp.getUserStoryId() + " has been removed by <b>" + member.getLastName() + " " + member.getFirstName() + "</b><br/>"; mailContent += "<hr>"; mailContent += "<h3>User story #" + userStoryTemp.getUserStoryId() + ": " + userStoryTemp.getName() + "</h3>"; mailContent += "<ul><li>Name: " + userStoryTemp.getName() + "</li>"; mailContent += "<li>Description: " + userStoryTemp.getDescription() + "</li>"; mailContent += "<li>Value: " + userStoryTemp.getValue() + "</li>"; mailContent += "<li>Status: " + userStoryTemp.getStatus() + "</li></ul>"; mailContent += "<hr>"; mailContent += "You have received this notification because you have either subscribed to it, or are involved in it."; List<Team> teamList = teamService.findTeamsByProjectId(getProjectId()); for (int i = 0; i < teamList.size(); i++) { List<TeamMember> teamMemberList = memberService.findTeamMemberListByTeamId(teamList.get(i).getTeamId()); for (int j = 0; j < teamMemberList.size(); j++) { if (teamMemberList.get(j).getMember().getUsername().equals(owner.getUsername())) { flag = false; } mailService.sendMail( "Inform about remove user story", mailContent, teamMemberList.get(j).getMember().getUsername()); } } if (flag) { mailService.sendMail("Inform about remove user story", mailContent, owner.getUsername()); } this.setValueForUsList(); JSFUtils.resloveMethodExpression( "#{homeBean.setDefaultHistoryList}", Void.class, new Class<?>[0], new Object[0]); } catch (Exception e) { } }
/** Set status VOID for current user story */ public void setVoid() { try { UserStory usTemp = userStoryService.findUserStoryById(selectedUserStoryId); usTemp.setPreviousStatus(usTemp.getStatus()); usTemp.setStatus(UserStory.StatusType.VOID); // kanbanIssueService.deleteAllKanbanIssueByUserStoryID(usTemp.getUserStoryId()); issueService.setVoidAllUnexpiredIssuesWhenSetUserStoryVoid(usTemp.getUserStoryId()); kanbanIssueService.setVoidAllKanbanIssueWhenSetVoidUserStory(usTemp.getUserStoryId()); userStoryService.update(usTemp); setValueForUsList(); JSFUtils.resloveMethodExpression( "#{homeBean.setDefaultHistoryList}", Void.class, new Class<?>[0], new Object[0]); } catch (Exception e) { LOGGER.error(e); } }
public void updateUserStory() { RequestContext context = RequestContext.getCurrentInstance(); if (userStory == null) { context.addCallbackParam("userStoryId", userStory.getUserStoryId()); context.addCallbackParam("error", EXCEPTION); return; } if (userStory.getName().equals("")) { context.addCallbackParam("userStoryId", userStory.getUserStoryId()); context.addCallbackParam("error", EMPTY_ERROR); return; } if (userStoryService.checkExistUserStory( Utils.standardizeString(userStory.getName()), getProjectId()) != null && !(userStory.getName().equals(Utils.standardizeString(userStory.getName())))) { context.addCallbackParam("userStoryId", userStory.getUserStoryId()); context.addCallbackParam("error", DUPPLICATE_ERROR); return; } if (userStory.getValue() > MAX_BUSSINESS_VALUE || userStory.getValue() < 0) { context.addCallbackParam("userStoryId", userStory.getUserStoryId()); context.addCallbackParam("error", VALUE_ERROR); return; } userStory.setName(userStory.getName().replaceAll("\\p{Cntrl}", "")); userStory.setDescription(userStory.getDescription().replaceAll("\\p{Cntrl}", "")); if (userStoryService.update(userStory)) { userStoryService.updateAllIssueOfUserStoryHaveTheSameContent(userStory); setValueForUsList(); context.addCallbackParam("error", NO_ERROR); context.addCallbackParam("userStoryId", userStory.getUserStoryId()); JSFUtils.resloveMethodExpression( "#{homeBean.setDefaultHistoryList}", Void.class, new Class<?>[0], new Object[0]); } else { context.addCallbackParam("userStoryId", userStory.getUserStoryId()); context.addCallbackParam("error", EXCEPTION); } }
/** Create new user story with information entered in view, then save it into database */ public void addUserStory() { RequestContext requestContext = RequestContext.getCurrentInstance(); if (getProjectId() == 0) { requestContext.addCallbackParam("success", false); return; } try { UserStory us = new UserStory(); // Remove Control Characters us.setName(Utils.standardizeString(userStory.getName()).replaceAll("\\p{Cntrl}", "")); us.setDescription(userStory.getDescription().replaceAll("\\p{Cntrl}", "")); us.setStatus(UserStory.StatusType.TODO); us.setValue(userStory.getValue()); us.setProject(projectService.findProjectById(getProjectId())); us.setRisk(0); us.setPriority(UserStory.PriorityType.NONE); if (userStoryService.create(us)) { saveAttachmentsToDatabase(us); resetUserStoryValue(); setValueForUsList(); setCreateMode(false); requestContext.addCallbackParam("success", true); JSFUtils.resloveMethodExpression( "#{homeBean.setDefaultHistoryList}", Void.class, new Class<?>[0], new Object[0]); } else { throw new Exception(); } } catch (Exception e) { requestContext.addCallbackParam("success", false); LOGGER.error("HomePage addUserStory: " + e); } }