using AutoMapper; using Edge.Core.Database.Models; using System; using System.Collections.Generic; using System.Text; using VaporRecoveryOnlineWatchHubApp.Config; using VaporRecoveryOnlineWatchHubApp.UnversalApiModels; namespace Application.VaporRecoveryOnlineWatchHubApp.UnversalApiModels { public class AutoMapperProfile : Profile { public const string VaporRecoveryOnlineWatchHubApp_MapToDbEntity_Owner = "VaporRecoveryOnlineWatchHubApp"; public const string VRBoardNozzleTrxFlowData_MapToDbEntity_Type = "VRBoardNozzleTrxFlowData"; public const string VRBoardNozzleInitParametersData_MapToDbEntity_Type = "VRBoardNozzleInitParametersData"; public const string VRBoardAlarmRecord_MapToDbEntity_Type = "VRBoardAlarmRecord"; public AutoMapperProfile() { ShouldMapField = fi => false; CreateMap() .ForMember(dest => dest.DataCollectorType, opt => opt.MapFrom(src => src.IntProperty0)) .ForMember(dest => dest.DataCollectorDeviceAddress, opt => opt.MapFrom(src => src.IntProperty1)) //.ForMember(dest => dest.DataCollectorNozzleNumber, opt => opt.MapFrom(src => src.IntProperty2)) .ForMember(dest => dest.SiteLevelNozzleId, opt => opt.MapFrom(src => src.IntProperty3)) //.ForMember(dest => dest.DataCollectorDeviceId, opt => opt.MapFrom(src => src.IntProperty4)) //.ForMember(dest => dest.SiteLevelDispenserId, opt => opt.MapFrom(src => src.IntProperty5)) .ForMember(dest => dest.气液比值是否正常, opt => opt.MapFrom(src => src.IntProperty6)) //.ForMember(dest => dest.VrState, opt => opt.MapFrom(src => src.IntProperty7)) //.ForMember(dest => dest.SiteLevelDispenserDesc, opt => opt.MapFrom(src => src.StrProperty0)) //.ForMember(dest => dest.SensorId, opt => opt.MapFrom(src => src.StrProperty1)) .ForMember(dest => dest.LiquidVolumeWithDecimal, opt => opt.MapFrom(src => src.DoubleProperty0)) .ForMember(dest => dest.VaporVolumeWithDecimal, opt => opt.MapFrom(src => src.DoubleProperty1)) .ForMember(dest => dest.VaporLiquidRatio, opt => opt.MapFrom(src => src.DoubleProperty2)) .ForMember(dest => dest.MaxAirFlowRateWithDecimal, opt => opt.MapFrom(src => src.DoubleProperty3)) .ForMember(dest => dest.MaxLiquidFlowRateWithDecimal, opt => opt.MapFrom(src => src.DoubleProperty4)) .ForMember(dest => dest.AvgAirFlowRateWithDecimal, opt => opt.MapFrom(src => src.DoubleProperty5)) .ForMember(dest => dest.AvgLiquidFlowRateWithDecimal, opt => opt.MapFrom(src => src.DoubleProperty9)) .ForMember(dest => dest.TimeStamp, opt => opt.MapFrom(src => src.CreatedTimeStamp)) .ForMember(dest => dest.FuellingStartTime, opt => opt.MapFrom(src => src.TimeStampProperty0)) .ForMember(dest => dest.FuellingEndTime, opt => opt.MapFrom(src => src.TimeStampProperty1)) .ForMember(dest => dest.TankPressure, opt => opt.MapFrom(src => src.DoubleProperty6)) .ForMember(dest => dest.LiquidPressure, opt => opt.MapFrom(src => src.DoubleProperty7)) .ForMember(dest => dest.GasConcentrations, opt => opt.MapFrom(src => src.DoubleProperty8)) .ReverseMap() .AfterMap((dto, dbEntity) => { dbEntity.Type = VRBoardNozzleTrxFlowData_MapToDbEntity_Type; dbEntity.Owner = VaporRecoveryOnlineWatchHubApp_MapToDbEntity_Owner; }); CreateMap() .ForMember(dest => dest.AlarmTime, opt => opt.MapFrom(src => src.TimeStampProperty0)) .ForMember(dest => dest.SiteLevelNozzleId, opt => opt.MapFrom(src => src.IntProperty0)) .ForMember(dest => dest.AlarmType, opt => opt.MapFrom(src => src.IntProperty1)) .ForMember(dest => dest.RecordCount, opt => opt.MapFrom(src => src.IntProperty3)) .ForMember(dest => dest.AlarmCount, opt => opt.MapFrom(src => src.IntProperty4)) .ForMember(dest => dest.AlarmDescription, opt => opt.MapFrom(src => src.StrProperty0)) .ForMember(dest => dest.AlarmDetails, opt => opt.MapFrom(src => src.StrProperty1)) .ForMember(dest => dest.AlarmPercentage, opt => opt.MapFrom(src => src.DoubleProperty0)) .ForMember(dest => dest.AverageVaporLiquidRatio, opt => opt.MapFrom(src => src.DoubleProperty1)) .ForMember(dest => dest.TimeInterval, opt => opt.MapFrom(src => src.DoubleProperty2)) .ReverseMap() .AfterMap((dto, dbEntity) => { dbEntity.Type = VRBoardAlarmRecord_MapToDbEntity_Type; dbEntity.Owner = VaporRecoveryOnlineWatchHubApp_MapToDbEntity_Owner; }); CreateMap() .ForMember(dest => dest.TimeStamp, opt => opt.MapFrom(src => src.CreatedTimeStamp)) .ForMember(dest => dest.SiteLevelNozzleId, opt => opt.MapFrom(src => src.IntProperty0)) .ForMember(dest => dest.DataCollectorDeviceAddress, opt => opt.MapFrom(src => src.IntProperty1)) .ForMember(dest => dest.停止加油阀值, opt => opt.MapFrom(src => src.IntProperty3)) .ForMember(dest => dest.加油脉冲当量, opt => opt.MapFrom(src => src.IntProperty4)) .ForMember(dest => dest.开始加油阀值, opt => opt.MapFrom(src => src.IntProperty5)) .ForMember(dest => dest.最大未变化次数, opt => opt.MapFrom(src => src.IntProperty6)) .ForMember(dest => dest.最小加油量, opt => opt.MapFrom(src => src.IntProperty7)) .ForMember(dest => dest.气液比值, opt => opt.MapFrom(src => src.DoubleProperty0)) .ForMember(dest => dest.油气脉冲当量, opt => opt.MapFrom(src => src.IntProperty8)) .ReverseMap() .AfterMap((dto, dbEntity) => { dbEntity.Type = VRBoardNozzleInitParametersData_MapToDbEntity_Type; dbEntity.Owner = VaporRecoveryOnlineWatchHubApp_MapToDbEntity_Owner; }); } } }