public IEnumerable <HourlyPricing> GetPricing(RequestHourlyPricing requestHourlyPricing, UserLanguage Lang)
        {
            //Get HOurlyPricing Of Nationality
            List <HourlyPricing> MorningHP = GetHourlyPricingByNationalityAndShift(requestHourlyPricing.NationalityId, DayShifts.Morning).ToList();
            List <HourlyPricing> EveningHP = GetHourlyPricingByNationalityAndShift(requestHourlyPricing.NationalityId, DayShifts.Evening).ToList();


            int countofdays = requestHourlyPricing.Days.Split(',').Count();

            // Get Promotion

            var promotion = PromotionMgr.GetPromotionByCode(requestHourlyPricing, Lang);



            //Get Available Days
            List <string> MorningAD = ShiftMgr.GetDays(requestHourlyPricing, DayShifts.Morning, countofdays, promotion).ToList();
            List <string> EveningAD = ShiftMgr.GetDays(requestHourlyPricing, DayShifts.Evening, countofdays, promotion).ToList();


            //Check If Days Available Or Not
            bool IsMDAvabilable = !requestHourlyPricing.Days.Split(',').ToList().Except(MorningAD).Any();
            bool IsEDAvabilable = !requestHourlyPricing.Days.Split(',').ToList().Except(EveningAD).Any();

            // key openDays was made in Nas web api to display all days not only district days and this not in availabiltiy business
            //if (ConfigurationManager.AppSettings["OpenDays"] == "true")
            //{
            //    IsMDAvabilable = true;
            //    IsEDAvabilable = true;
            //}


            MorningHP = MorningHP.Select(a => CastToClientHourlyPricing(a, countofdays, requestHourlyPricing.HoursCount, requestHourlyPricing.ContractDuration, requestHourlyPricing.Empcount, IsMDAvabilable, MorningAD, promotion)).ToList();
            EveningHP = EveningHP.Select(a => CastToClientHourlyPricing(a, countofdays, requestHourlyPricing.HoursCount, requestHourlyPricing.ContractDuration, requestHourlyPricing.Empcount, IsEDAvabilable, EveningAD, promotion)).ToList();

            var AllHP = new List <HourlyPricing>();

            AllHP.AddRange(MorningHP);
            AllHP.AddRange(EveningHP);

            return(AllHP);
        }
 public Promotion testCheckPromotionValidation(RequestHourlyPricing requestHourlyPricing, UserLanguage lang = UserLanguage.Arabic)
 {
     return(PromotionMgr.GetPromotionByCode(requestHourlyPricing, lang));
 }