using AutoMapper; using AutoMapper.EquivalencyExpression; using IRaCIS.Application.Contracts; using IRaCIS.Core.Application.Contracts; using IRaCIS.Core.Application.ViewModel; using IRaCIS.Core.Domain.Models; namespace IRaCIS.Core.Application.Service { public class DocumentConfig : Profile { public DocumentConfig() { var userId = Guid.Empty; var token = string.Empty; CreateMap() .ForMember(d => d.FileType, u => u.MapFrom(s => s.FileType.Value)) .ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path)); CreateMap() .ForMember(d => d.FileType, u => u.MapFrom(s => s.FileType.Value)) .ForMember(d => d.IsSomeUserSigned, u => u.MapFrom(s => s.TrialDocConfirmedUserList.Any())) .ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path )); CreateMap() .ForMember(d => d.IsSystemDoc, u => u.MapFrom(s => true)) .ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path )); CreateMap() .ForMember(d => d.IsSystemDoc, u => u.MapFrom(s => false)) .ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path )); CreateMap().ForMember(d => d.UserTypeShortName, t => t.MapFrom(c => c.UserTypeRole.UserTypeShortName)); CreateMap().ForMember(d => d.UserTypeShortName, t => t.MapFrom(c => c.UserTypeRole.UserTypeShortName)); //CreateMap() // .ForMember(t => t.UserConfirmInfo, c => c.MapFrom(t => t.TrialDocConfirmedUserList.Where(u => u.ConfirmUserId == userId).FirstOrDefault())) // .ForMember(d => d.FullFilePath, u => u.MapFrom(s => s.Path + "?access_token=" + token)); ; CreateMap() .ForMember(d => d.UserName, c => c.MapFrom(t => t.User.UserName)) .ForMember(d => d.RealName, c => c.MapFrom(t => t.User.FullName)); //CreateMap() // .ForMember(d => d.UserName, c => c.MapFrom(t => t.User.UserName)) // .ForMember(d => d.RealName, c => c.MapFrom(t => t.User.LastName + " / " + t.User.FirstName)); CreateMap(); CreateMap() .ForMember(d => d.NeedConfirmedUserTypeList, c => c.MapFrom(t => t.NeedConfirmedUserTypeIdList)); CreateMap().EqualityComparison((odto, o) => odto == o.NeedConfirmUserTypeId) .ForMember(d => d.NeedConfirmUserTypeId, c => c.MapFrom(t => t)) .ForMember(d => d.TrialDocumentId, c => c.Ignore()); CreateMap().ForMember(d => d.NeedConfirmedUserTypeList, c => c.MapFrom(t => t.NeedConfirmedUserTypeIdList)); CreateMap().EqualityComparison((odto, o) => odto == o.NeedConfirmUserTypeId) .ForMember(d => d.NeedConfirmUserTypeId, c => c.MapFrom(t => t)) .ForMember(d => d.SystemDocumentId, c => c.Ignore()); CreateMap() .ForMember(d => d.TrialEmailNoticeUserList, c => c.MapFrom(t => t.TrialEmailNoticeUserList)); CreateMap(); CreateMap() .ForMember(d => d.Phone, c => c.MapFrom(t => t.User.Phone)) .ForMember(d => d.Email, c => c.MapFrom(t => t.User.EMail)) .ForMember(d => d.RealName, c => c.MapFrom(t => t.User.FullName)) .ForMember(d => d.UserName, c => c.MapFrom(t => t.User.UserName)); CreateMap(); } } }