List of usage examples for org.hibernate.criterion DetachedCriteria forEntityName
@SuppressWarnings("UnusedDeclaration") public static DetachedCriteria forEntityName(String entityName)
From source file:ro.cs.cm.model.dao.impl.DaoProjectImpl.java
License:Open Source License
/** * Returns a list of projects for the corresponding team members * @author Coni//from ww w .j a v a 2 s .co m * @param teamMembers * @return */ public ArrayList<Project> getProjectsByTeamMembers(ArrayList<TeamMember> teamMembers, boolean isFinishedAndAbandoned) { logger.debug("getProjectsByTeamMembers - START"); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectAllEntity); ArrayList<Project> projects = null; if (teamMembers != null && teamMembers.size() > 0) { List<Integer> projectTeamsIds = new ArrayList<Integer>(); for (TeamMember member : teamMembers) { projectTeamsIds.add(member.getProjectTeamId()); } if (projectTeamsIds.size() > 0) { List<ProjectTeam> projectTeams = projectTeamDao.getByProjectTeamIds(projectTeamsIds); List<Integer> projectIds = new ArrayList<Integer>(); for (ProjectTeam projectTeam : projectTeams) { projectIds.add(projectTeam.getProjectId()); } if (!projectIds.isEmpty()) { dc.add(Restrictions.in("projectId", projectIds)); if (isFinishedAndAbandoned) { dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_STATUS_DELETED)); } else { dc.add(Restrictions.eq("status", IConstant.NOM_PROJECT_STATUS_OPENED)); } projects = (ArrayList<Project>) getHibernateTemplate().findByCriteria(dc); for (Project project : projects) { for (ProjectTeam projectTeam : projectTeams) { if (project.getProjectId() == projectTeam.getProjectId()) { project.setProjectTeam(projectTeam); break; } } } } } } logger.debug("getProjectsByTeamMembers - END"); return projects; }
From source file:ro.cs.cm.model.dao.impl.DaoProjectImpl.java
License:Open Source License
/** * Gets a Project with the project team by its projectId * //w ww . j av a 2s. c om * @author Coni * @author Adelina * * @param projectId * @return */ public Project getWithProjectTeamByProjectId(int projectId, boolean isNotDeleted) { logger.debug("getWithProjectTeamByProjectId - START"); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectAllEntity); List<Project> projects = null; dc.add(Restrictions.eq("projectId", projectId)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_STATUS_DELETED)); projects = getHibernateTemplate().findByCriteria(dc); logger.debug("getWithProjectTeamByProjectId - END , projects size = " + projects.size()); if (projects.size() > 0) { Project project = projects.get(0); project.setProjectTeam(projectTeamDao.getWithAllTeamMembers(project.getProjectId(), isNotDeleted)); Integer managerId = project.getManagerId(); logger.debug("managerId = " + managerId); Person manager = new Person(); try { manager = BLPerson.getInstance().get(managerId); } catch (BusinessException be) { logger.error("", be); } catch (Exception e) { logger.error("", e); } // set the manager project.setManager(manager); Integer clientId = project.getClientId(); if (clientId != null && clientId > 0) { Client client = new Client(); try { client = BLClient.getInstance().get(clientId); } catch (BusinessException be) { logger.error("", be); } catch (Exception e) { logger.error("", e); } project.setClient(client); } return project; } else { return null; } }
From source file:ro.cs.cm.model.dao.impl.DaoProjectImpl.java
License:Open Source License
/** * Gets a list of projects with the corresponding project ids * @author Coni//from www . j av a 2 s .c om * @param projectIds * @return * @throws BusinessException */ public List<Project> getSimpleByProjectIds(Set<Integer> projectIds) { logger.debug("getSimpleByProjectIds - START"); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectAllEntity); dc.add(Restrictions.in("projectId", projectIds)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_STATUS_DELETED)); List<Project> res = getHibernateTemplate().findByCriteria(dc); logger.debug("getSimpleByProjectIds - END"); return res; }
From source file:ro.cs.cm.model.dao.impl.DaoProjectTeamImpl.java
License:Open Source License
/** * Get the projectTeam identified by it's id * //w w w. ja v a 2 s . co m * @author Adelina * * @param projectId * @return */ public ProjectTeam get(Integer projectId, boolean withExternalPerson) { logger.debug("get - START - project with id = ".concat(Integer.toString(projectId))); List<ProjectTeam> projectTeams = new ArrayList<ProjectTeam>(); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectTeamAllEntity); dc.add(Restrictions.eq("projectId", projectId)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_TEAM_STATUS_DELETED)); projectTeams = getHibernateTemplate().findByCriteria(dc); ProjectTeam projectTeam = null; if (projectTeams != null && projectTeams.size() > 0) { projectTeam = projectTeams.get(0); List<TeamMember> members = new ArrayList<TeamMember>(); DetachedCriteria dc1 = DetachedCriteria.forEntityName(IModelConstant.teamMemberEntity); if (!withExternalPerson) { dc1.add(Restrictions.ne("personId", new Integer(0))); } dc1.add(Restrictions.eq("projectTeamId", projectTeam.getProjectTeamId())); dc1.add(Restrictions.ne("status", IConstant.NOM_TEAM_MEMBER_STATUS_DELETED)); members = getHibernateTemplate().findByCriteria(dc1); Tools.getInstance().printList(logger, members); logger.debug("projectTeam members = " + members); Set<Person> persons = new HashSet<Person>(); Set<TeamMember> teamMembers = new HashSet<TeamMember>(); for (TeamMember teamMember : members) { boolean changeStatus = false; if (teamMember != null && teamMember.getPersonId() > 0) { try { Person person = BLPerson.getInstance().get(teamMember.getPersonId()); logger.debug("person = " + person); Byte activated = new Byte(IConstant.NOM_PERSON_STATUS_ACTIVATED); if (person != null && !activated.equals(person.getStatus())) { changeStatus = true; } if (!changeStatus) { Person user = new Person(); user.setPersonId(teamMember.getPersonId()); user.setFirstName(teamMember.getFirstName()); user.setLastName(teamMember.getLastName()); user.setEmail(teamMember.getEmail()); persons.add(user); logger.debug("teamMember = " + teamMember); logger.debug("person = " + user); teamMembers.add(teamMember); } else { if (person != null) { teamMemberDao.changeStatus(teamMember, person.getStatus()); } } } catch (BusinessException e) { e.printStackTrace(); } } } projectTeam.setPersons(persons); projectTeam.setTeamMembers(teamMembers); logger.debug("projectTeam persons = " + persons); } logger.debug("get - END"); return projectTeam; }
From source file:ro.cs.cm.model.dao.impl.DaoProjectTeamImpl.java
License:Open Source License
/** * Updates a projectTeam to the database * //from w ww .ja va 2 s . c o m * @author Adelina * * @param projectTeam */ public void update(ProjectTeam projectTeam, List<TeamMember> externalMembers) { logger.debug("update - START"); Set<Person> persons = projectTeam.getPersons(); Set<Person> newPersons = new HashSet<Person>(); Set<TeamMember> teamMembers = new HashSet<TeamMember>(); List<TeamMember> members = new ArrayList<TeamMember>(); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.teamMemberEntity); dc.add(Restrictions.eq("projectTeamId", projectTeam.getProjectTeamId())); dc.add(Restrictions.ne("personId", new Integer(0))); members = getHibernateTemplate().findByCriteria(dc); logger.debug("members = " + members); logger.debug("project persons = " + persons); if (persons != null && persons.size() > 0) { for (Person person : persons) { if (person != null && person.getPersonId() != -1) { // Person user = null; // try { // user = BLPerson.getInstance().get(person.getPersonId()); // } catch (BusinessException e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } // logger.debug("user = " + user); // if(user != null && user.getStatus() == IConstant.NOM_PERSON_STATUS_DELETED) { // continue; // } newPersons.add(person); TeamMember teamMember = teamMemberDao.getMember(person.getPersonId(), projectTeam.getProjectTeamId()); logger.debug("teamMember = " + teamMember); boolean same = members.contains(teamMember); logger.debug("same = " + same); if (same) { if (teamMember != null && teamMember.getStatus() != IConstant.NOM_TEAM_MEMBER_STATUS_ACTIVATED) { teamMemberDao.changeStatusToOpen(teamMember); } members.remove(teamMember); teamMembers.add(teamMember); logger.debug("members = " + members); logger.debug("teamMembers = " + teamMembers); } else { TeamMember member = new TeamMember(); member.setProjectTeamId(projectTeam.getProjectTeamId()); member.setPersonId(person.getPersonId()); member.setFirstName(person.getFirstName()); member.setLastName(person.getLastName()); member.setEmail(person.getEmail()); member.setStatus(IConstant.NOM_TEAM_MEMBER_STATUS_ACTIVATED); teamMembers.add(member); projectTeam.setTeamMembers(teamMembers); teamMemberDao.add(member); } } } } // set the persons projectTeam.setPersons(newPersons); logger.debug("externalMembers = " + externalMembers); if (externalMembers != null && externalMembers.size() > 0) { for (TeamMember external : externalMembers) { logger.debug("external = " + external); if (external.getMemberId() > 0) { TeamMember teamMember = teamMemberDao.getByMemberId(external.getMemberId()); if (external.getFirstName().isEmpty() && external.getLastName().isEmpty()) { teamMemberDao.changeStatusToDelete(teamMember); } else { if (teamMember.compareTo(external) != 0) { teamMemberDao.update(external); } } } else { teamMemberDao.add(external); } } } // set the team members projectTeam.setTeamMembers(new HashSet<TeamMember>(teamMembers)); logger.debug("teamMembers = " + teamMembers); logger.debug("members = " + members); if (members != null && members.size() > 0) { for (TeamMember member : members) { teamMemberDao.changeStatusToDelete(member); } } getHibernateTemplate().update(IModelConstant.projectTeamAllEntity, projectTeam); logger.debug("update - END"); }
From source file:ro.cs.cm.model.dao.impl.DaoProjectTeamImpl.java
License:Open Source License
/** * Checks if a project has associated a project team * /* w w w. j a va2 s.c om*/ * @author Adelina * * @param projectId * @return */ public boolean hasProjectTeam(Integer projectId) { logger.debug("hasProjectTeam - START"); List<ProjectTeam> projectTeams = new ArrayList<ProjectTeam>(); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectTeamEntity); dc.add(Restrictions.eq("projectId", projectId)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_TEAM_STATUS_DELETED)); projectTeams = getHibernateTemplate().findByCriteria(dc); logger.debug("hasProjectTeam - END"); if (projectTeams.size() > 0) { return true; } else { return false; } }
From source file:ro.cs.cm.model.dao.impl.DaoProjectTeamImpl.java
License:Open Source License
/** * Gets all the project teams that have as a team member the person with the specified id * @author Coni/*from w ww . j a v a2s . com*/ * @param personId * @return */ public List<ProjectTeam> getByPerson(Integer personId) { logger.debug("getByTeamMember - START"); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectTeamAllEntity); List<Integer> projectTeamIds = new ArrayList<Integer>(); List<TeamMember> members = teamMemberDao.getByPersonId(personId, true); for (TeamMember member : members) { projectTeamIds.add(new Integer(member.getProjectTeamId())); } dc.add(Restrictions.in("projectTeamId", projectTeamIds)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_TEAM_STATUS_DELETED)); List<ProjectTeam> projectTeams = getHibernateTemplate().findByCriteria(dc); logger.debug("getByTeamMember - END"); return projectTeams; }
From source file:ro.cs.cm.model.dao.impl.DaoProjectTeamImpl.java
License:Open Source License
/** * Get the projectTeam identified by it's id with team members from inside and outside of the organization * //from ww w . j a v a 2s . c o m * @author Coni * * @param projectId * @return */ public ProjectTeam getWithAllTeamMembers(Integer projectId, boolean isNotDeleted) { logger.debug("getWithAllTeamMembers - START - project with id = ".concat(Integer.toString(projectId))); List<ProjectTeam> projectTeams = new ArrayList<ProjectTeam>(); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectTeamAllEntity); dc.add(Restrictions.eq("projectId", projectId)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_TEAM_STATUS_DELETED)); projectTeams = getHibernateTemplate().findByCriteria(dc); ProjectTeam projectTeam = null; if (projectTeams != null && projectTeams.size() > 0) { projectTeam = projectTeams.get(0); List<TeamMember> members = new ArrayList<TeamMember>(); DetachedCriteria dc1 = DetachedCriteria.forEntityName(IModelConstant.teamMemberEntity); dc1.add(Restrictions.eq("projectTeamId", projectTeam.getProjectTeamId())); logger.debug("isNotDeleted = " + isNotDeleted); if (isNotDeleted) { dc1.add(Restrictions.ne("status", IConstant.NOM_TEAM_MEMBER_STATUS_DELETED)); } members = getHibernateTemplate().findByCriteria(dc1); logger.debug("team members = " + members); List<TeamMember> teamMembers = new ArrayList<TeamMember>(); if (members != null && members.size() > 0) { for (TeamMember teamMember : members) { logger.debug("team member = " + teamMember); boolean changeStatus = false; if (teamMember != null && teamMember.getPersonId() > 0) { try { Person person = BLPerson.getInstance().get(teamMember.getPersonId()); logger.debug("person = " + person); Byte activated = new Byte(IConstant.NOM_PERSON_STATUS_ACTIVATED); if (person != null && !activated.equals(person.getStatus())) { changeStatus = true; } logger.debug("changeStatus = " + changeStatus); if (!changeStatus) { logger.debug("teamMember = " + teamMember); teamMembers.add(teamMember); } else { if (person != null) { teamMemberDao.changeStatus(teamMember, person.getStatus()); } } } catch (BusinessException e) { e.printStackTrace(); } } if (!isNotDeleted) { teamMembers.add(teamMember); } } } Tools.getInstance().printList(logger, teamMembers); projectTeam.setTeamMembers(new HashSet<TeamMember>(teamMembers)); } logger.debug("getWithAllTeamMembers - END"); return projectTeam; }
From source file:ro.cs.cm.model.dao.impl.DaoProjectTeamImpl.java
License:Open Source License
/** * Gets a list of project teams (without the team members) identified by the corresponding projectTeamIds * @author Coni/*from w w w . java 2s.com*/ * @param projectTeamIds * @return */ public List<ProjectTeam> getByProjectTeamIds(List<Integer> projectTeamIds) { logger.debug("getByProjectTeamIds - START"); List<ProjectTeam> projectTeams = new ArrayList<ProjectTeam>(); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.projectTeamEntity); dc.add(Restrictions.in("projectTeamId", projectTeamIds)); dc.add(Restrictions.ne("status", IConstant.NOM_PROJECT_TEAM_STATUS_DELETED)); projectTeams = getHibernateTemplate().findByCriteria(dc); logger.debug("getByProjectTeamIds - END"); return projectTeams; }
From source file:ro.cs.cm.model.dao.impl.DaoTeamMemberImpl.java
License:Open Source License
/** * Get the teamMember identified by it's id * /*w w w . ja va 2 s . c o m*/ * @author Adelina * * @param memberId * @return */ public TeamMember get(Integer personId) { logger.debug("get - START - teamMember with person id = ".concat(Integer.toString(personId))); List<TeamMember> members = new ArrayList<TeamMember>(); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.teamMemberEntity); dc.add(Restrictions.eq("personId", personId)); members = getHibernateTemplate().findByCriteria(dc); logger.debug("get - END"); return members.get(0); }