public List <RaceRoleValues> getRaceRoleValues(List <List <GenericDataSurveyDTO> > genericDataSurveys) { List <RaceRoleValues> raceRoleValues = new List <RaceRoleValues>(); RaceRoleValues raceRoleValue; foreach (var race in Races) { raceRoleValue = new RaceRoleValues(); raceRoleValue.MyRoleValues = new List <RoleValues>(); foreach (var glds in genericDataSurveys) { var currentRace = glds.SingleOrDefault(x => x.RegionName == race); if (currentRace != null) { RoleValues roleValue = new RoleValues { Associates = currentRace.Associates, Counsel = currentRace.Counsel, EquityPartners = currentRace.EquityPartners, NonEquityPartners = currentRace.NonEquityPartners, OtherLawyers = currentRace.OtherLawyers, Year = companyProfiles.SingleOrDefault(x => x.CompanyProfileID == currentRace.CompanyProfileID).Datecomp.Year.ToString() }; roleValue.Total = Compute(roleValue); raceRoleValue.MyRoleValues.Add(roleValue); } } raceRoleValue.Race = race; //main RaceVSRoles raceRoleValues.Add(raceRoleValue); } return(raceRoleValues); }
private string Compute(RoleValues roleValue) { return(( ConvertToNumber(roleValue.EquityPartners) + ConvertToNumber(roleValue.NonEquityPartners) + ConvertToNumber(roleValue.OtherLawyers) + ConvertToNumber(roleValue.Associates) + ConvertToNumber(roleValue.Counsel) ).ToString()); }
private RoleValues getRate(string race, List <RoleValues> roleValues) { double baseAssociates = ConvertToNumber(roleValues.First().Associates); double baseCounsel = ConvertToNumber(roleValues.First().Counsel); double baseEquityPartners = ConvertToNumber(roleValues.First().EquityPartners); double baseNonEquityPartners = ConvertToNumber(roleValues.First().NonEquityPartners); double baseOtherLawyers = ConvertToNumber(roleValues.First().OtherLawyers); double baseTotal = ConvertToNumber(roleValues.First().Total); double topAssociates = ConvertToNumber(roleValues.Last().Associates); double topCounsel = ConvertToNumber(roleValues.Last().Counsel); double topEquityPartners = ConvertToNumber(roleValues.Last().EquityPartners); double topNonEquityPartners = ConvertToNumber(roleValues.Last().NonEquityPartners); double topOtherLawyers = ConvertToNumber(roleValues.Last().OtherLawyers); double topTotal = ConvertToNumber(roleValues.Last().Total); double rateAssociates = topAssociates == 0 || baseAssociates == 0 ? 0 : Math.Round(((topAssociates - baseAssociates) / baseAssociates) * 100, 2); double rateCounsel = topCounsel == 0 || baseCounsel == 0 ? 0 : Math.Round(((topCounsel - baseCounsel) / baseCounsel) * 100, 2); double rateEquityPartners = topEquityPartners == 0 || baseEquityPartners == 0 ? 0 : Math.Round(((topEquityPartners - baseEquityPartners) / baseEquityPartners) * 100, 2); double rateNonEquityPartners = topNonEquityPartners == 0 || baseNonEquityPartners == 0 ? 0 : Math.Round(((topNonEquityPartners - baseNonEquityPartners) / baseNonEquityPartners) * 100, 2); double rateOtherLawyers = topOtherLawyers == 0 || baseOtherLawyers == 0 ? 0 : Math.Round(((topOtherLawyers - baseOtherLawyers) / baseOtherLawyers) * 100, 2); double rateTotal = topTotal == 0 || baseTotal == 0 ? 0 : Math.Round(((topTotal - baseTotal) / baseTotal) * 100, 2); RoleValues roleValue = new RoleValues { Associates = rateAssociates.ToString(), Counsel = rateCounsel.ToString(), EquityPartners = rateEquityPartners.ToString(), NonEquityPartners = rateNonEquityPartners.ToString(), OtherLawyers = rateOtherLawyers.ToString(), Total = rateTotal.ToString() }; //roleValue.Total = Compute(roleValue); roleValue.Associates += "%"; roleValue.Counsel += "%"; roleValue.EquityPartners += "%"; roleValue.NonEquityPartners += "%"; roleValue.OtherLawyers += "%"; roleValue.Total += "%"; roleValue.Year = "Rate"; return(roleValue); }
protected override bool IsAuthorized(System.Web.Http.Controllers.HttpActionContext actionContext) { if (Sitecore.Context.User == null || !Sitecore.Context.User.IsAuthenticated) { return(false); } if (RoleValues.Any()) { return(RoleValues.Any(x => IsInRole(x))); } if (EditorRoles.Any()) { return(EditorRoles.Any(x => IsInRole(x))); } return(true); }
public List <RaceRoleValues> getCategoryOfAllValues(Guid BaseSurvey, Guid TopSurvey, IEnumerable <CompanyProfiles> insideScopeOfCompanyProfiles) { var fd = getCategoryValues(2, BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles); var pap = getCategoryValues(4, BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles); var ll = getCategoryValues(5, BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles); var jl = getCategoryValues(6, BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles); var rhl = getCategoryValues(7, BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles); var rrvFD = getRaceRoleValues(fd); var rrvPAP = getRaceRoleValues(pap); var rrvLL = getRaceRoleValues(ll); var rrvJL = getRaceRoleValues(jl); var rrvRHL = getRaceRoleValues(rhl); List <RaceRoleValues> allRaceRoleValues = new List <RaceRoleValues>(); foreach (var race in Races) { var racevalueofFD = rrvFD.Find(x => x.Race == race); var racevalueofpap = rrvPAP.Find(x => x.Race == race); var racevalueofLL = rrvLL.Find(x => x.Race == race); var racevalueofJL = rrvJL.Find(x => x.Race == race); var racevalueofRHL = rrvRHL.Find(x => x.Race == race); List <RoleValues> rolevalues = new List <RoleValues>(); for (int i = 0; i < racevalueofFD.MyRoleValues.Count(); i++) { var assoc = ConvertToNumber(racevalueofFD.MyRoleValues[i].Associates) + ConvertToNumber(racevalueofJL.MyRoleValues[i].Associates) + ConvertToNumber(racevalueofpap.MyRoleValues[i].Associates) + ConvertToNumber(racevalueofLL.MyRoleValues[i].Associates) + ConvertToNumber(racevalueofRHL.MyRoleValues[i].Associates); var counsel = ConvertToNumber(racevalueofFD.MyRoleValues[i].Counsel) + ConvertToNumber(racevalueofJL.MyRoleValues[i].Counsel) + ConvertToNumber(racevalueofpap.MyRoleValues[i].Counsel) + ConvertToNumber(racevalueofLL.MyRoleValues[i].Counsel) + ConvertToNumber(racevalueofRHL.MyRoleValues[i].Counsel); var ep = ConvertToNumber(racevalueofFD.MyRoleValues[i].EquityPartners) + ConvertToNumber(racevalueofJL.MyRoleValues[i].EquityPartners) + ConvertToNumber(racevalueofpap.MyRoleValues[i].EquityPartners) + ConvertToNumber(racevalueofLL.MyRoleValues[i].EquityPartners) + ConvertToNumber(racevalueofRHL.MyRoleValues[i].EquityPartners); var nep = ConvertToNumber(racevalueofFD.MyRoleValues[i].NonEquityPartners) + ConvertToNumber(racevalueofJL.MyRoleValues[i].NonEquityPartners) + ConvertToNumber(racevalueofpap.MyRoleValues[i].NonEquityPartners) + ConvertToNumber(racevalueofLL.MyRoleValues[i].NonEquityPartners) + ConvertToNumber(racevalueofRHL.MyRoleValues[i].NonEquityPartners); var ol = ConvertToNumber(racevalueofFD.MyRoleValues[i].OtherLawyers) + ConvertToNumber(racevalueofJL.MyRoleValues[i].OtherLawyers) + ConvertToNumber(racevalueofpap.MyRoleValues[i].OtherLawyers) + ConvertToNumber(racevalueofLL.MyRoleValues[i].OtherLawyers) + ConvertToNumber(racevalueofRHL.MyRoleValues[i].OtherLawyers); var total = ConvertToNumber(racevalueofFD.MyRoleValues[i].Total) + ConvertToNumber(racevalueofJL.MyRoleValues[i].Total) + ConvertToNumber(racevalueofpap.MyRoleValues[i].Total) + ConvertToNumber(racevalueofLL.MyRoleValues[i].Total) + ConvertToNumber(racevalueofRHL.MyRoleValues[i].Total); var allYear = racevalueofFD.MyRoleValues[i].Year; rolevalues.Add(new RoleValues { Associates = assoc.ToString(), Counsel = counsel.ToString(), EquityPartners = ep.ToString(), NonEquityPartners = nep.ToString(), OtherLawyers = ol.ToString(), Total = total.ToString(), Year = allYear }); } //for rate RoleValues rateRoleValue = new RoleValues(); rateRoleValue = getRate(race, rolevalues); rolevalues.Add(rateRoleValue); allRaceRoleValues.Add(new RaceRoleValues { Race = race, MyRoleValues = rolevalues }); } return(allRaceRoleValues); }
public List <RaceRoleValues> GetReportRaceVSRole([FromRoute] Guid firmID, [FromRoute] int category, [FromRoute] Guid BaseSurvey, [FromRoute] Guid TopSurvey) { var firm = _context.Firms.SingleOrDefault(x => x.FirmID == firmID); if (firm == null) { return(null); } //get companyProfiles of this firm companyProfiles = companyProfilesController.GetCompanyProfiles(firm.FirmID); var baseCompanyProfiledate = companyProfiles.FirstOrDefault(x => x.CompanyProfileID == BaseSurvey).Datecomp; var topCompanyProfiledate = companyProfiles.FirstOrDefault(x => x.CompanyProfileID == TopSurvey).Datecomp; //remove companyprofiles of base and top var insideScopeOfCompanyProfiles = companyProfiles.Where(x => x.CompanyProfileID != BaseSurvey); insideScopeOfCompanyProfiles = insideScopeOfCompanyProfiles.Where(x => x.CompanyProfileID != TopSurvey); //filter betweendates insideScopeOfCompanyProfiles = insideScopeOfCompanyProfiles.Where(x => x.Datecomp > baseCompanyProfiledate && x.Datecomp < topCompanyProfiledate).OrderBy(x => x.Datecomp); if (category == 0) { return(getCategoryOfAllValues(BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles)); } List <List <GenericDataSurveyDTO> > genericDataSurveys = getCategoryValues(category, BaseSurvey, TopSurvey, insideScopeOfCompanyProfiles); List <RaceRoleValues> raceRoleValues = new List <RaceRoleValues>(); RaceRoleValues raceRoleValue = new RaceRoleValues(); if (genericDataSurveys.Count() != 0) { foreach (var race in Races) { raceRoleValue = new RaceRoleValues(); raceRoleValue.MyRoleValues = new List <RoleValues>(); foreach (var glds in genericDataSurveys) { var currentRace = glds.SingleOrDefault(x => x.RegionName == race); if (currentRace != null) { RoleValues roleValue = new RoleValues { Associates = currentRace.Associates, Counsel = currentRace.Counsel, EquityPartners = currentRace.EquityPartners, NonEquityPartners = currentRace.NonEquityPartners, OtherLawyers = currentRace.OtherLawyers, Year = companyProfiles.SingleOrDefault(x => x.CompanyProfileID == currentRace.CompanyProfileID).Datecomp.Year.ToString() }; roleValue.Total = Compute(roleValue); raceRoleValue.MyRoleValues.Add(roleValue); } } raceRoleValue.Race = race; //for rate RoleValues rateRoleValue = new RoleValues(); rateRoleValue = getRate(race, raceRoleValue.MyRoleValues); raceRoleValue.MyRoleValues.Add(rateRoleValue); //main RaceVSRoles raceRoleValues.Add(raceRoleValue); } } return(raceRoleValues); }
public List <RaceRoleValues> GetGeneral([FromRoute] Guid firmID, [FromRoute] int category, [FromRoute] Guid BaseSurvey, [FromRoute] Guid TopSurvey) { var raceRoleValues = GetReportRaceVSRole(firmID, category, BaseSurvey, TopSurvey); List <RaceRoleValues> minorityRaceRoleValuesTemp = new List <RaceRoleValues>(); //filtering double EquityPartners; double OtherLawyers; double Associates; double Counsel; double NonEquityPartners; string year; foreach (var general in DiversityRankRace) { var raceRoleValue = raceRoleValues.Find(x => x.Race == general); if (raceRoleValue != null) { minorityRaceRoleValuesTemp.Add(raceRoleValue); } } //remove the rating foreach (var rrv in minorityRaceRoleValuesTemp) { rrv.MyRoleValues = rrv.MyRoleValues.Where(x => x.Year != "Rate").ToList(); } //summation of every year var numberOfRaceRoleValue = minorityRaceRoleValuesTemp.Count(); if (numberOfRaceRoleValue == 0) { return(new List <RaceRoleValues>()); } var numberOfYears = minorityRaceRoleValuesTemp[0].MyRoleValues.Count(); List <RaceRoleValues> minoritySummationList = new List <RaceRoleValues>(); RaceRoleValues minorityRaceRoleValue = new RaceRoleValues { Race = "Minorities", MyRoleValues = new List <RoleValues>() }; for (int i = 0; i < numberOfYears; i++) { EquityPartners = 0; OtherLawyers = 0; Associates = 0; Counsel = 0; NonEquityPartners = 0; year = ""; for (int j = 0; j < numberOfRaceRoleValue; j++) { EquityPartners += ConvertToNumber(minorityRaceRoleValuesTemp[j].MyRoleValues[i].EquityPartners); OtherLawyers += ConvertToNumber(minorityRaceRoleValuesTemp[j].MyRoleValues[i].OtherLawyers); Associates += ConvertToNumber(minorityRaceRoleValuesTemp[j].MyRoleValues[i].Associates); Counsel += ConvertToNumber(minorityRaceRoleValuesTemp[j].MyRoleValues[i].Counsel); NonEquityPartners += ConvertToNumber(minorityRaceRoleValuesTemp[j].MyRoleValues[i].NonEquityPartners); year = minorityRaceRoleValuesTemp[j].MyRoleValues[i].Year; } var minorityRoleValue = new RoleValues { Associates = Associates.ToString(), Counsel = Counsel.ToString(), EquityPartners = EquityPartners.ToString(), NonEquityPartners = NonEquityPartners.ToString(), OtherLawyers = NonEquityPartners.ToString(), Year = year }; minorityRoleValue.Total = Compute(minorityRoleValue); minorityRaceRoleValue.MyRoleValues.Add(minorityRoleValue); } RoleValues rateRoleValue = new RoleValues(); rateRoleValue = getRate("Rate", minorityRaceRoleValue.MyRoleValues); minorityRaceRoleValue.MyRoleValues.Add(rateRoleValue); //main RaceVSRoles minoritySummationList.Add(minorityRaceRoleValue); return(minoritySummationList); }