public string GetWageText(CreateApprenticeshipRequest request)
        {
            var wageDetails = new WageDetails()
            {
                Amount       = request.FixedWage,
                HoursPerWeek = (decimal)request.HoursPerWeek,
                StartDate    = request.ExpectedStartDate,
                LowerBound   = request.MinWage,
                UpperBound   = request.MaxWage
            };

            switch (request.WageType)
            {
            case WageType.CustomWageFixed:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.Custom,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.Weekly,
                                                    wageDetails));

            case WageType.CustomWageRange:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.CustomRange,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.Weekly,
                                                    wageDetails));

            case WageType.ApprenticeshipMinimumWage:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.ApprenticeshipMinimum,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.Weekly,
                                                    wageDetails));

            case WageType.NationalMinimumWage:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.NationalMinimum,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.Weekly,
                                                    wageDetails));

            case WageType.CompetitiveSalary:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.CompetitiveSalary,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.NotApplicable,
                                                    wageDetails));

            case WageType.ToBeSpecified:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.ToBeAgreedUponAppointment,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.NotApplicable,
                                                    wageDetails));

            case WageType.Unwaged:
                return(WagePresenter.GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.Unwaged,
                                                    SFA.DAS.VacancyServices.Wage.WageUnit.NotApplicable,
                                                    wageDetails));

            default:
                return(null);
            }
        }
        private string GetWageText(recruitEntities.Wage wage, DateTime expectedStartDate)
        {
            var wageDetail = new WageDetails {
                HoursPerWeek = wage.WeeklyHours, StartDate = expectedStartDate, Amount = wage.FixedWageYearlyAmount
            };

            switch (wage.WageType)
            {
            case NationalMinimumWageForApprenticesWageType:
                return(WagePresenter.GetDisplayText(WageType.ApprenticeshipMinimum, WageUnit.Weekly, wageDetail));

            case NationalMinimumWageWageType:
                return(WagePresenter.GetDisplayText(WageType.NationalMinimum, WageUnit.Weekly, wageDetail));

            case UnspecifiedWageType:
                return(UnknownText);

            default:     //including FixedWage
                return(WagePresenter.GetDisplayText(WageType.Custom, WageUnit.Weekly, wageDetail));
            }
        }
Exemplo n.º 3
0
        public static string ToText(this Wage wage, DateTime?expectedStartDate)
        {
            var wageDetails = new WageDetails
            {
                Amount       = wage.FixedWageYearlyAmount,
                HoursPerWeek = wage.WeeklyHours,
                StartDate    = expectedStartDate.GetValueOrDefault()
            };
            string wageText;

            switch (wage.WageType)
            {
            case WageType.FixedWage:
                wageText = WagePresenter
                           .GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.Custom, WageUnit.Annually, wageDetails)
                           .AsWholeMoneyAmount();
                break;

            case WageType.NationalMinimumWage:
                wageText = WagePresenter
                           .GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.NationalMinimum, WageUnit.Annually, wageDetails)
                           .AsWholeMoneyAmount();
                break;

            case WageType.NationalMinimumWageForApprentices:
                wageText = WagePresenter
                           .GetDisplayText(SFA.DAS.VacancyServices.Wage.WageType.ApprenticeshipMinimum, WageUnit.Annually, wageDetails)
                           .AsWholeMoneyAmount();
                break;

            default:
                wageText = wage.WageType?.GetDisplayName();
                break;
            }

            return(wageText);
        }