/// <summary> /// Create web model from entity /// </summary> /// <param name="source"></param> /// <returns></returns> public static VehicleDetail CreateFromDetail(this DomainModels.Vehicle source) { return(new VehicleDetail { VehicleId = source.VehicleId, IsBranchOwner = source.IsBranchOwner, PlateNumber = source.PlateNumber, VehicleName = source.VehicleName, ModelYear = source.ModelYear, FleetPoolId = source.FleetPoolId, Color = source.Color, OperationsWorkPlaceId = source.OperationsWorkPlaceId, FuelLevel = source.FuelLevel, TankSize = source.TankSize, InitialOdometer = source.InitialOdometer, CurrentOdometer = source.CurrentOdometer, RegistrationDate = source.RegistrationDate, VehicleMakeId = source.VehicleMakeId, VehicleCategoryId = source.VehicleCategoryId, VehicleModelId = source.VehicleModelId, VehicleStatusId = source.VehicleStatusId, FuelTypeId = source.FuelTypeId, TransmissionTypeId = source.TransmissionTypeId, RegistrationExpiryDate = source.RegistrationExpiryDate, VehicleCondition = source.VehicleCondition, VehicleOtherDetail = source.VehicleOtherDetail != null?source.VehicleOtherDetail.CreateFrom() : null, VehiclePurchaseInfo = source.VehiclePurchaseInfo != null?source.VehiclePurchaseInfo.CreateFrom() : null, VehicleLeasedInfo = source.VehicleLeasedInfo != null?source.VehicleLeasedInfo.CreateFrom() : null, VehicleInsuranceInfo = source.VehicleInsuranceInfo != null?source.VehicleInsuranceInfo.CreateFrom() : null, VehicleDepreciation = source.VehicleDepreciation != null?source.VehicleDepreciation.CreateFrom() : null, VehicleDisposalInfo = source.VehicleDisposalInfo != null?source.VehicleDisposalInfo.CreateFrom() : null, VehicleMaintenanceTypeFrequency = source.VehicleMaintenanceTypeFrequencies != null?source.VehicleMaintenanceTypeFrequencies.Select(mt => mt.CreateFrom()).ToList() : null, VehicleCheckListItems = source.VehicleCheckListItems != null?source.VehicleCheckListItems.Select(mt => mt.CreateFrom()).ToList() : null, }); }
/// <summary> /// Create web model from entity /// </summary> public static VehicleListViewContent CreateFromListViewContent(this DomainModels.Vehicle source) { return(new VehicleListViewContent { VehicleId = source.VehicleId, VehicleName = source.VehicleName, PlateNumber = source.PlateNumber, CurrentOdometer = source.CurrentOdometer, FuelLevel = source.FuelLevel, ModelYear = source.ModelYear, Location = source.OperationsWorkPlace != null ? source.OperationsWorkPlace.LocationCode : string.Empty, VehicleMakeCodeName = source.VehicleMake != null ? source.VehicleMake.VehicleMakeCode + " - " + source.VehicleMake.VehicleMakeName : string.Empty, VehicleStatusCodeName = source.VehicleStatus != null ? source.VehicleStatus.VehicleStatusCode + " - " + source.VehicleStatus.VehicleStatusName : string.Empty, FleetPoolCodeName = source.FleetPool != null ? source.FleetPool.FleetPoolCode + " - " + source.FleetPool.FleetPoolName : string.Empty, OperationCodeName = source.OperationsWorkPlace != null ? source.OperationsWorkPlace.Operation.OperationCode + " - " + source.OperationsWorkPlace.Operation.OperationName : string.Empty, }); }
/// <summary> /// Create web model from entity /// </summary> public static Vehicle CreateFromForNrt(this DomainModels.Vehicle source) { return(new Vehicle { VehicleId = source.VehicleId, VehicleName = source.VehicleName, PlateNumber = source.PlateNumber, TankSize = source.TankSize, CurrentOdometer = source.CurrentOdometer, FuelLevel = source.FuelLevel, ModelYear = source.ModelYear, VehicleMakeCodeName = source.VehicleMake != null ? source.VehicleMake.VehicleMakeCode + " - " + source.VehicleMake.VehicleMakeName : string.Empty, VehicleStatusCodeName = source.VehicleStatus != null ? source.VehicleStatus.VehicleStatusCode + " - " + source.VehicleStatus.VehicleStatusName : string.Empty, VehicleModelCodeName = source.VehicleModel != null ? source.VehicleModel.VehicleModelCode + " - " + source.VehicleModel.VehicleModelName : string.Empty, VehicleCategoryCodeName = source.VehicleCategory != null ? source.VehicleCategory.VehicleCategoryCode + " - " + source.VehicleCategory.VehicleCategoryName : string.Empty, }); }
/// <summary> /// Create web model from entity /// </summary> public static Vehicle CreateFrom(this DomainModels.Vehicle source, bool headerOnly = true) { DomainModels.VehicleImage image = source.HireGroup != null && source.HireGroup.HireGroupDetails != null? source.HireGroup.HireGroupDetails.Select(hg => hg.VehicleImageHireGroupDetails.Select(hgd => hgd.VehicleImage) .FirstOrDefault()).FirstOrDefault() : new DomainModels.VehicleImage(); Vehicle vehicle = new Vehicle { VehicleId = source.VehicleId, VehicleName = source.VehicleName, VehicleCode = source.VehicleCode, IsBranchOwner = source.IsBranchOwner, PlateNumber = source.PlateNumber, CurrentOdometer = source.CurrentOdometer, VehicleCategoryId = source.VehicleCategoryId, VehicleCategory = source.VehicleCategory != null?source.VehicleCategory.CreateFrom() : new VehicleCategoryDropDown(), VehicleMakeId = source.VehicleMakeId, VehicleMake = source.VehicleMake != null?source.VehicleMake.CreateFrom() : new VehicleMakeDropDown(), VehicleModelId = source.VehicleModelId, VehicleModel = source.VehicleModel != null?source.VehicleModel.CreateFrom() : new VehicleModelDropDown(), VehicleStatusId = source.VehicleStatusId, VehicleStatus = source.VehicleStatus != null?source.VehicleStatus.CreateFrom() : new VehicleStatus(), ModelYear = source.ModelYear, Image = image != null ? image.Image : new byte[] { } }; // If Details are not required if (headerOnly) { return(vehicle); } // Map Details vehicle.InitialOdometer = source.InitialOdometer; vehicle.FleetPoolId = source.FleetPoolId; vehicle.FleetPool = source.FleetPool.CreateFrom(); vehicle.FuelLevel = source.FuelLevel; vehicle.FuelTypeId = source.FuelTypeId; vehicle.FuelType = source.FuelType.CreateFrom(); vehicle.TransmissionTypeId = source.TransmissionTypeId; vehicle.TransmissionType = source.TransmissionType != null?source.TransmissionType.CreateFrom() : new TransmissionType(); vehicle.OperationId = source.OperationsWorkPlace != null ? (int)source.OperationsWorkPlace.OperationId : 0; vehicle.Operation = source.OperationsWorkPlace != null && source.OperationsWorkPlace.Operation != null? source.OperationsWorkPlace.Operation.CreateFrom() : new OperationDropDown(); vehicle.OperationsWorkPlaceId = source.OperationsWorkPlaceId; vehicle.OperationsWorkPlace = source.OperationsWorkPlace != null?source.OperationsWorkPlace.CreateFrom() : new OperationsWorkPlace(); vehicle.RegistrationDate = source.RegistrationDate; vehicle.RegistrationExpiryDate = source.RegistrationExpiryDate; vehicle.VehicleCondition = source.VehicleCondition; vehicle.VehicleConditionDescription = source.VehicleConditionDescription; vehicle.Color = source.Color; vehicle.TankSize = source.TankSize; return(vehicle); }