Пример #1
0
        private static Employee GetSuperior(DataContext ctx, WorkRole workRole)
        {
            if (WorkRole.BusinessAnalyst == workRole ||
                WorkRole.TeamLeader == workRole ||
                WorkRole.HumanResourceManager == workRole ||
                WorkRole.ProjectManager == workRole ||
                WorkRole.OfficeAssistant == workRole)
            {
                return(ctx.Employees.SingleOrDefault(e => e.WorkRole == WorkRole.CEO));
            }
            else if (WorkRole.SoftwareTester == workRole ||
                     WorkRole.SoftwareEngineer == workRole)
            {
                return(ctx.Employees.SingleOrDefault(e => e.WorkRole == WorkRole.TeamLeader));
            }
            else if (WorkRole.CEO == workRole)
            {
                throw new CeoSuperiorException();
            }

            throw new InvalidWorkRoleException(workRole.ToString());
        }
Пример #2
0
        private static OrganizationUnit GetOrganizationUnit(DataContext ctx, WorkRole workRole)
        {
            if (WorkRole.BusinessAnalyst == workRole ||
                WorkRole.CEO == workRole ||
                WorkRole.HumanResourceManager == workRole ||
                WorkRole.ProjectManager == workRole)
            {
                return(ctx.OrganizationUnits.SingleOrDefault(o => o.Abbreviation == "MGT"));
            }
            else if (WorkRole.SoftwareTester == workRole ||
                     WorkRole.SoftwareEngineer == workRole ||
                     WorkRole.TeamLeader == workRole)
            {
                return(ctx.OrganizationUnits.SingleOrDefault(o => o.Abbreviation == "IT"));
            }
            else if (WorkRole.OfficeAssistant == workRole)
            {
                return(ctx.OrganizationUnits.SingleOrDefault(o => o.Abbreviation == "BO"));
            }

            throw new InvalidWorkRoleException(workRole.ToString());
        }