Esempio n. 1
0
 public void ValidateStateIncorporated(string stateIncorporated)
 {
     if (SstStates.All(x => x != stateIncorporated))
     {
         Content.ErrorMessages.Add($"The State '{stateIncorporated}' is not a SST State.");
     }
 }
Esempio n. 2
0
        private void ValidateRegistrationIndicator(BulkRegistrationNewTypeStateRegistrationIndicator registrationIndicator, DateTime firstFilingPeriod)
        {
            if (firstFilingPeriod.Month != registrationIndicator.FirstSalesDate.Month || firstFilingPeriod.Year != registrationIndicator.FirstSalesDate.Year)
            {
                Content.ErrorMessages.Add($"First filling period {firstFilingPeriod:MM/yyyy} must be the same year and month as first sales date {registrationIndicator.FirstSalesDate:MM/yyyy}.");
            }

            if (registrationIndicator.FirstSalesDate.Date < DateTime.UtcNow.Date || registrationIndicator.FirstSalesDate.Date > DateTime.UtcNow.Date.AddDays(60))
            {
                Content.ErrorMessages.Add($"The First Sales Date must be the current date or no more than 60 days in the future. Value: {(registrationIndicator.FirstSalesDate != DateTime.MinValue ? registrationIndicator.FirstSalesDate.ToString("MM/dd/yyyy") : "Empty")}.");
            }

            if (SstStates.Any(x => x == registrationIndicator.State))
            {
                var validRegistrationIndicator = new[] { BulkRegistrationNewTypeStateRegistrationIndicatorRegistrationIndicator.R, BulkRegistrationNewTypeStateRegistrationIndicatorRegistrationIndicator.A };

                if (validRegistrationIndicator.All(x => x != registrationIndicator.RegistrationIndicator))
                {
                    Content.ErrorMessages.Add($"For SST States the Registration Indicator can only be R or A. Value: {registrationIndicator.RegistrationIndicator}.");
                }
            }
            else if (NonSstStates.Any(x => x == registrationIndicator.State))
            {
                if (registrationIndicator.RegistrationIndicator == BulkRegistrationNewTypeStateRegistrationIndicatorRegistrationIndicator.N)
                {
                    Content.ErrorMessages.Add("For Non SST States the Registration Indicator can not be N.");
                }
            }
            else
            {
                Content.ErrorMessages.Add($"The State does not exists. Value: {registrationIndicator.State}.");
            }

            if (!registrationIndicator.SSTPAllowanceIndicatorSpecified)
            {
                Content.ErrorMessages.Add("The Allowance Indicator is mandatory.");
            }
        }