示例#1
0
        public bool InAlphaRange(CaseName lowerBound, CaseName upperBound,
                                 bool keepLastNameLenVsLowerBound  = false,
                                 bool keepFirstNameLenVsLowerBound = false,
                                 bool keepLastNameLenVsUpperBound  = false,
                                 bool keepFirstNameLenVsUpperBound = false)
        {
            if (this.CompareToRuleCaseName(lowerBound, keepLastNameLenVsLowerBound, keepFirstNameLenVsLowerBound) >= 0 &&
                this.CompareToRuleCaseName(upperBound, keepLastNameLenVsUpperBound, keepFirstNameLenVsUpperBound) <= 0)
            {
                return(true);
            }

            return(false);
        }
示例#2
0
        private int CompareToRuleCaseName(CaseName ruleCaseName, bool keepLastNameLength = false, bool keepFirstNameLength = false)
        {
            int lastNameLength = this.LastName.Length < ruleCaseName.LastName.Length || keepLastNameLength
                ? this.LastName.Length
                : ruleCaseName.LastName.Length;


            int firstNameLength = this.FirstName.Length < ruleCaseName.FirstName.Length || keepFirstNameLength
                ? this.FirstName.Length
                : ruleCaseName.FirstName.Length;


            string formattedName = LastName.Substring(0, lastNameLength).ToLower() +
                                   " " +
                                   FirstName.Substring(0, firstNameLength).ToLower();

            string comparedName = ruleCaseName.LastName.ToLower() + " " + ruleCaseName.FirstName.ToLower();

            return(String.CompareOrdinal(formattedName, comparedName));
        }
 public static int AssignToTeam(CaseName caseName)
 {
     if (caseName.InAlphaRange(new CaseName("A", ""), new CaseName("EB", "")))
     {
         return(1);
     }
     else if (caseName.InAlphaRange(new CaseName("EC", ""), new CaseName("Lopez", "JA"), false, false, true, false))
     {
         return(2);
     }
     else if (caseName.InAlphaRange(new CaseName("Lopez", "JB"), new CaseName("Reyes", "F"), true, false, true, false))
     {
         return(3);
     }
     else if (caseName.InAlphaRange(new CaseName("Reyes", "G"), new CaseName("Z", ""), true, false, false, false))
     {
         return(4);
     }
     else
     {
         return(0);
     }
 }