Created
December 3, 2012 21:22
-
-
Save thePunderWoman/4198183 to your computer and use it in GitHub Desktop.
VehicleConfig comparison
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
internal ACESConfigs getVehicleConfigs(int BaseVehicleID, int SubmodelID) { | |
ACESConfigs acesconfigs = new ACESConfigs(); | |
CurtDevDataContext db = new CurtDevDataContext(); | |
AAIA.VCDBDataContext vcdb = new AAIA.VCDBDataContext(); | |
try { | |
BaseVehicle bv = db.BaseVehicles.Where(x => x.ID.Equals(BaseVehicleID)).First<BaseVehicle>(); | |
Submodel submodel = db.Submodels.Where(x => x.ID.Equals(SubmodelID)).First<Submodel>(); | |
List<ConfigAttributeType> attrtypes = db.ConfigAttributeTypes.Where(x => x.AcesTypeID != null).OrderBy(x => x.sort).ToList<ConfigAttributeType>(); | |
List<AAIA.VehicleConfig> configs = vcdb.VehicleConfigs.Where(x => x.Vehicle.BaseVehicleID.Equals(bv.AAIABaseVehicleID) && x.Vehicle.SubmodelID.Equals(submodel.AAIASubmodelID)).Distinct().OrderBy(x => x.BodyStyleConfig.BodyTypeID).ToList<AAIA.VehicleConfig>(); | |
acesconfigs.configs = configs; | |
foreach (ConfigAttributeType type in attrtypes) { | |
switch (type.name) { | |
case "Body Type": | |
type.count = configs.Select(x => x.BodyStyleConfig.BodyTypeID).Distinct().Count(); | |
break; | |
case "Number of Doors": | |
type.count = configs.Select(x => x.BodyStyleConfig.BodyNumDoorsID).Distinct().Count(); | |
break; | |
case "Drive Type": | |
type.count = configs.Select(x => x.DriveTypeID).Distinct().Count(); | |
break; | |
case "Bed Length": | |
type.count = configs.Select(x => x.BedConfig.BedLengthID).Distinct().Count(); | |
break; | |
case "Wheel Base": | |
type.count = configs.Select(x => x.WheelbaseID).Distinct().Count(); | |
break; | |
case "Engine": | |
type.count = configs.Select(x => x.EngineConfig.EngineBaseID).Distinct().Count(); | |
break; | |
case "Fuel Type": | |
type.count = configs.Select(x => x.EngineConfig.FuelTypeID).Distinct().Count(); | |
break; | |
case "Aspiration": | |
type.count = configs.Select(x => x.EngineConfig.AspirationID).Distinct().Count(); | |
break; | |
case "Bed Type": | |
type.count = configs.Select(x => x.BedConfig.BedTypeID).Distinct().Count(); | |
break; | |
case "Brake ABS": | |
type.count = configs.Select(x => x.BrakeConfig.BrakeABSID).Distinct().Count(); | |
break; | |
case "Brake System": | |
type.count = configs.Select(x => x.BrakeConfig.BrakeSystemID).Distinct().Count(); | |
break; | |
case "Cylinder Head Type": | |
type.count = configs.Select(x => x.EngineConfig.CylinderHeadTypeID).Distinct().Count(); | |
break; | |
case "Engine Designation": | |
type.count = configs.Select(x => x.EngineConfig.EngineDesignationID).Distinct().Count(); | |
break; | |
case "Engine Manufacturer": | |
type.count = configs.Select(x => x.EngineConfig.EngineMfrID).Distinct().Count(); | |
break; | |
case "Engine Version": | |
type.count = configs.Select(x => x.EngineConfig.EngineVersionID).Distinct().Count(); | |
break; | |
case "Engine VIN": | |
type.count = configs.Select(x => x.EngineConfig.EngineVINID).Distinct().Count(); | |
break; | |
case "Front Brake Type": | |
type.count = configs.Select(x => x.BrakeConfig.FrontBrakeTypeID).Distinct().Count(); | |
break; | |
case "Front Spring Type": | |
type.count = configs.Select(x => x.SpringTypeConfig.FrontSpringTypeID).Distinct().Count(); | |
break; | |
case "Fuel Delivery Sub-Type": | |
type.count = configs.Select(x => x.EngineConfig.FuelDeliveryConfig.FuelDeliverySubTypeID).Distinct().Count(); | |
break; | |
case "Fuel Delivery Type": | |
type.count = configs.Select(x => x.EngineConfig.FuelDeliveryConfig.FuelDeliveryTypeID).Distinct().Count(); | |
break; | |
case "Fuel System Control Type": | |
type.count = configs.Select(x => x.EngineConfig.FuelDeliveryConfig.FuelSystemControlTypeID).Distinct().Count(); | |
break; | |
case "Fuel System Design": | |
type.count = configs.Select(x => x.EngineConfig.FuelDeliveryConfig.FuelSystemDesignID).Distinct().Count(); | |
break; | |
case "Ignition System Type": | |
type.count = configs.Select(x => x.EngineConfig.IgnitionSystemTypeID).Distinct().Count(); | |
break; | |
case "Manufacturer Body Code": | |
type.count = configs.Select(x => x.MfrBodyCodeID).Distinct().Count(); | |
break; | |
case "Power Output": | |
type.count = configs.Select(x => x.EngineConfig.PowerOutputID).Distinct().Count(); | |
break; | |
case "Rear Brake Type": | |
type.count = configs.Select(x => x.BrakeConfig.RearBrakeTypeID).Distinct().Count(); | |
break; | |
case "Rear Spring Type": | |
type.count = configs.Select(x => x.SpringTypeConfig.RearSpringTypeID).Distinct().Count(); | |
break; | |
case "Steering System": | |
type.count = configs.Select(x => x.SteeringConfig.SteeringSystemID).Distinct().Count(); | |
break; | |
case "Steering Type": | |
type.count = configs.Select(x => x.SteeringConfig.SteeringTypeID).Distinct().Count(); | |
break; | |
case "Tranmission Electronic Controlled": | |
type.count = configs.Select(x => x.Transmission.TransmissionElecControlledID).Distinct().Count(); | |
break; | |
case "Transmission": | |
type.count = configs.Select(x => x.TransmissionID).Distinct().Count(); | |
break; | |
case "Transmission Base": | |
type.count = configs.Select(x => x.Transmission.TransmissionBaseID).Distinct().Count(); | |
break; | |
case "Transmission Control Type": | |
type.count = configs.Select(x => x.Transmission.TransmissionBase.TransmissionControlTypeID).Distinct().Count(); | |
break; | |
case "Tranmission Manufacturer Code": | |
type.count = configs.Select(x => x.Transmission.TransmissionMfrCodeID).Distinct().Count(); | |
break; | |
case "Transmission Number of Speeds": | |
type.count = configs.Select(x => x.Transmission.TransmissionBase.TransmissionNumSpeedsID).Distinct().Count(); | |
break; | |
case "Transmission Type": | |
type.count = configs.Select(x => x.Transmission.TransmissionBase.TransmissionTypeID).Distinct().Count(); | |
break; | |
case "Valves Per Engine": | |
type.count = configs.Select(x => x.EngineConfig.ValvesID).Distinct().Count(); | |
break; | |
default: | |
type.count = 0; | |
break; | |
} | |
acesconfigs.types = attrtypes; | |
} | |
} catch { } | |
return acesconfigs; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment