private void AssignJobScreen_Load(object sender, EventArgs e) { switch (selectedJob.JobCategory) { case "Software": skillCategories = employeeSkillCategories.software; break; case "Hardware": skillCategories = employeeSkillCategories.hardware; break; default: skillCategories = employeeSkillCategories.software; break; } switch (selectedJob.JobType) { case "Installation": employeeSkills = employeeSkillsTypes.installation; break; case "Repair": employeeSkills = employeeSkillsTypes.repair; break; default: employeeSkills = employeeSkillsTypes.installation; break; } List <Employee> assignableUsers = employeeBusinessLogic.listEmployeesBySkillCategoryAndType(skillCategories, employeeSkills, true); lstTechnicians.DataSource = assignableUsers; }
public List <Employee> listEmployeesBySkillCategoryAndType(employeeSkillCategories category, employeeSkillsTypes type, bool onlyActiveUsers = false) { try { string ct = ""; string tp = ""; List <Employee> employees = new List <Employee>(); DataTable employeeData = new DataTable(); switch (category) { case employeeSkillCategories.software: ct = "Software"; break; case employeeSkillCategories.hardware: ct = "Hardware"; break; default: break; } switch (type) { case employeeSkillsTypes.installation: tp = "Installation"; break; case employeeSkillsTypes.repair: tp = "Repair"; break; default: break; } employeeData = db.ListEmployeesForJob(category: ct, type: tp); List <Employee> activeEmployees = employeesOnStandBy(employeeType.technician); for (int i = 0; i < employeeData.Rows.Count; i++) { if (onlyActiveUsers) { if (activeEmployees.FindIndex(employee => employee.Id == new TechnicalStaff(i, employeeData, new Pay("Technician", 600)).Id) >= 0) { employees.Add(new TechnicalStaff(i, employeeData, new Pay("Technician", 600))); } } else { employees.Add(new TechnicalStaff(i, employeeData, new Pay("Technician", 600))); } } return(employees); } catch (Exception e) { MessageBox.Show("EmployeeBusinessLogic : listEmployeesBySkillCategoryAndType ERROR:" + e.Message); throw; } }
public void updateEmployeeSkill(string skillID, string skillDescription, employeeSkillCategories category, employeeSkillsTypes type) { try { Skill newSkill = new Skill(); newSkill.ID = skillID; newSkill.Description = skillDescription; switch (category) { case employeeSkillCategories.software: newSkill.Category = "Software"; break; case employeeSkillCategories.hardware: newSkill.Category = "Hardware"; break; default: break; } switch (type) { case employeeSkillsTypes.installation: newSkill.Type = "Installation"; break; case employeeSkillsTypes.repair: newSkill.Type = "Repair"; break; default: break; } db.UpdateSkill(newSkill); } catch (Exception e) { MessageBox.Show("EmployeeBusinessLogic : updateEmployeeSkill ERROR:" + e.Message); throw; } }