public ApiModelProfile()
        {
            htmlTranslator = new HtmlAgilityPackDataTranslator();
            var htmlToStringValueConverter = new HtmlToStringValueConverter(htmlTranslator);

            CreateMap <JobProfileSkillSegmentDataModel, WhatItTakesApiModel>()
            .ForMember(d => d.DigitalSkillsLevel, s => s.MapFrom(a => a.DigitalSkill))
            .ForMember(d => d.RestrictionsAndRequirements, s => s.MapFrom(a => a))
            ;

            CreateMap <JobProfileSkillSegmentDataModel, RestrictionsAndRequirementsApiModel>()
            .ForMember(d => d.OtherRequirements, opt => opt.ConvertUsing(htmlToStringValueConverter))
            .ForMember(d => d.RelatedRestrictions, s => s.MapFrom(ConvertToList))
            ;

            CreateMap <Skills, RelatedSkillsApiModel>()
            .ForMember(d => d.Description, s => s.MapFrom(
                           a => !string.IsNullOrWhiteSpace(a.ContextualisedSkill.Description)
                        ? a.ContextualisedSkill.Description
                        : a.OnetSkill.Description))
            .ForMember(d => d.ONetAttributeType, s => s.MapFrom(a => a.ContextualisedSkill.ONetAttributeType))
            .ForMember(d => d.ONetRank, s => s.MapFrom(a => a.ContextualisedSkill.ONetRank))
            .ForMember(d => d.ONetElementId, s => s.MapFrom(a => a.OnetSkill.ONetElementId))
            ;
        }
예제 #2
0
        public ApiModelProfile()
        {
            htmlTranslator = new HtmlAgilityPackDataTranslator();
            var htmlToStringConverter = new HtmlToStringValueConverter(htmlTranslator);

            CreateMap <HowToBecomeSegmentDataModel, HowToBecomeApiModel>()
            .ForMember(d => d.EntryRouteSummary, opt => opt.ConvertUsing(htmlToStringConverter))
            .ForMember(d => d.MoreInformation, s => s.MapFrom(a => a))
            ;

            CreateMap <HowToBecomeSegmentDataModel, MoreInformationApiModel>()
            .ForMember(d => d.CareerTips, opt => opt.ConvertUsing(htmlToStringConverter, a => a.MoreInformation.CareerTips))
            .ForMember(d => d.FurtherInformation, opt => opt.ConvertUsing(htmlToStringConverter, a => a.MoreInformation.FurtherInformation))
            .ForMember(d => d.ProfessionalAndIndustryBodies, opt => opt.ConvertUsing(htmlToStringConverter, a => a.MoreInformation.ProfessionalAndIndustryBodies))
            .ForMember(d => d.Registrations, s => s.MapFrom(ConvertRegistrationsToList))
            ;

            CreateMap <EntryRoutes, EntryRoutesApiModel>()
            .ForMember(d => d.University, s => s.MapFrom(a => a.CommonRoutes.FirstOrDefault(f => f.RouteName == Data.Enums.RouteName.University)))
            .ForMember(d => d.College, s => s.MapFrom(a => a.CommonRoutes.FirstOrDefault(f => f.RouteName == Data.Enums.RouteName.College)))
            .ForMember(d => d.Apprenticeship, s => s.MapFrom(a => a.CommonRoutes.FirstOrDefault(f => f.RouteName == Data.Enums.RouteName.Apprenticeship)))
            .ForMember(d => d.Work, opt => opt.ConvertUsing(htmlToStringConverter))
            .ForMember(d => d.Volunteering, opt => opt.ConvertUsing(htmlToStringConverter))
            .ForMember(d => d.DirectApplication, opt => opt.ConvertUsing(htmlToStringConverter))
            .ForMember(d => d.OtherRoutes, opt => opt.ConvertUsing(htmlToStringConverter))
            ;

            CreateMap <CommonRoutes, CommonRouteApiModel>()
            .ForMember(d => d.RelevantSubjects, opt => opt.ConvertUsing(htmlToStringConverter, s => s.Subject))
            .ForMember(d => d.FurtherInformation, opt => opt.ConvertUsing(htmlToStringConverter))
            .ForMember(d => d.EntryRequirements, opt => opt.MapFrom(ConvertEntryRequirementsToList))
            .ForMember(d => d.AdditionalInformation, opt => opt.MapFrom(a => a.AdditionalInformation.Select(i => $"[{i.Text} | {i.Link}]")))
            ;
        }
예제 #3
0
        public ApiModelProfile()
        {
            var htmlTranslator             = new HtmlAgilityPackDataTranslator();
            var htmlToStringValueConverter = new HtmlToStringValueConverter(htmlTranslator);

            CreateMap <CareerPathSegmentDataModel, CareerPathAndProgressionApiModel>()
            .ForMember(d => d.CareerPathAndProgression, opt => opt.ConvertUsing(htmlToStringValueConverter, s => s.Markup))
            ;
        }
예제 #4
0
        public ApiModelProfile()
        {
            var htmlDataTranslator         = new HtmlAgilityPackDataTranslator();
            var htmlToStringValueConverter = new HtmlToStringValueConverter(htmlDataTranslator);

            CreateMap <JobProfileTasksDataSegmentModel, WhatYouWillDoApiModel>()
            .ForMember(d => d.WYDDayToDayTasks, opt => opt.ConvertUsing(htmlToStringValueConverter, s => s.Tasks))
            .ForMember(d => d.WorkingEnvironment, s => s.MapFrom(a => a))
            ;

            CreateMap <JobProfileTasksDataSegmentModel, WorkingEnvironmentApiModel>()
            .ForMember(d => d.Environment, opt => opt.ConvertUsing(new EnvironmentFormatter(htmlDataTranslator), s => s.Environments != null ? s.Environments.Select(x => x.Description) : null))
            .ForMember(d => d.Location, opt => opt.ConvertUsing(new LocationFormatter(htmlDataTranslator), s => s.Locations != null ? s.Locations.Select(x => x.Description) : null))
            .ForMember(d => d.Uniform, opt => opt.ConvertUsing(new UniformFormatter(htmlDataTranslator), s => s.Uniforms != null ? s.Uniforms.Select(x => x.Description) : null))
            ;
        }