public static Event newTechnology(Employee e) { Project p = e.getWorkingProject(); if (p != null) { Map<Skill, Employee> skill = e.getWorkingProject().getSkill_employeeMap(); Map<Skill, Integer> require = e.getWorkingProject().getSkillRequirementMap(); for (Skill sk : skill.keySet()) { if (skill.get(sk) != null && skill.get(sk).equals(e)) { require.put(sk, require.get(sk) - 50); e.getWorkingProject().decreaseRemainingPoint(50); } } return Event.NEW_TECHNOLOGY; } return Event.NO_EVENT; }
public static Event featureCut(Employee e) { Project p = e.getWorkingProject(); if (p != null) { Map<Skill, Employee> skill = e.getWorkingProject().getSkill_employeeMap(); Map<Skill, Integer> require = e.getWorkingProject().getSkillRequirementMap(); for (Skill sk : skill.keySet()) { if (skill.get(sk) != null && skill.get(sk).equals(e)) { int remainPoint = require.get(sk); require.put(sk, 0); e.getWorkingProject().decreaseRemainingPoint(remainPoint); } } return Event.FEATURE_CUT; } return Event.NO_EVENT; }
public static Event teamBuilding(Employee e) { Project p = e.getWorkingProject(); if (p != null) { Map<Skill, Employee> emList = p.getSkill_employeeMap(); for (Skill sk : emList.keySet()) { if (emList.get(sk) != null) { emList.get(sk).getTeamBuilding(); } } return Event.TEAM_BUILDING_EXERCISE; } return Event.NO_EVENT; }
public static Event projectStolen(Employee e, Company c) { try { Project p = e.getWorkingProject(); if (p != null) { c.cancelProject(p); Utilities.getInstance().unassignComputerToEmployee(c, e); c.removeEmployee(e); return Event.PROJECT_IS_STOLEN_BY_EMPLOYEE; } else { return Event.NO_EVENT; } } catch (EmployeeNotExist ex) { } finally { return Event.NO_EVENT; } }
public static Event redundancies(Employee e, Company c) throws EmployeeNotExist { Project p = e.getWorkingProject(); List<Employee> removeEmp = new ArrayList(); if (p != null) { Map<Skill, Employee> skill = p.getSkill_employeeMap(); for (Skill sk : skill.keySet()) { if (skill.get(sk) != null && skill.get(sk).equals(e)) { c.addEmployeeToRemoveList(e); } else if (skill.get(sk) != null) { skill.get(sk).sad(); } } for (Employee employee : removeEmp) { Utilities.getInstance().unassignComputerToEmployee(c, employee); c.removeEmployee(employee); } return Event.REDUNDANCIES; } return Event.NO_EVENT; }