namespace Yw.WinFrmUI { /// /// 水力组件属性视图创建辅助类 /// public static class HydroParterPropertyViewModelBuilder { /// /// 创建视图 /// /// 当前组件 /// 所有组件列表 /// public static HydroParterPropertyViewModel CreateViewModel(this Yw.Model.HydroParterInfo rhs, List allParterList) { if (rhs == null) { return default; } HydroParterPropertyViewModel vm = null; switch (rhs.Catalog) { case Yw.Hydro.ParterCatalog.Reservoir://水库 { vm = new HydroReservoirPropertyViewModel(rhs as Yw.Model.HydroReservoirInfo); } break; case Yw.Hydro.ParterCatalog.Tank://水池 { vm = new HydroTankPropertyViewModel(rhs as Yw.Model.HydroTankInfo); } break; case Yw.Hydro.ParterCatalog.Waterbox://水箱 { vm = new HydroWaterboxPropertyViewModel(rhs as Yw.Model.HydroWaterboxInfo); } break; case Yw.Hydro.ParterCatalog.Junction://连接节点 { vm = new HydroJunctionPropertyViewModel(rhs as Yw.Model.HydroJunctionInfo); } break; case Yw.Hydro.ParterCatalog.Nozzle://喷嘴 { vm = new HydroNozzlePropertyViewModel(rhs as Yw.Model.HydroNozzleInfo); } break; case Yw.Hydro.ParterCatalog.Hydrant://消火栓 { vm = new HydroHydrantPropertyViewModel(rhs as Yw.Model.HydroHydrantInfo); } break; case Yw.Hydro.ParterCatalog.Blunthead://闷头 { vm = new HydroBluntheadPropertyViewModel(rhs as Yw.Model.HydroBluntheadInfo); } break; case Yw.Hydro.ParterCatalog.Elbow://弯头 { vm = new HydroElbowPropertyViewModel(rhs as Yw.Model.HydroElbowInfo); } break; case Yw.Hydro.ParterCatalog.Threelink://三通 { vm = new HydroThreelinkPropertyViewModel(rhs as Yw.Model.HydroThreelinkInfo); } break; case Yw.Hydro.ParterCatalog.Fourlink://四通 { vm = new HydroFourlinkPropertyViewModel(rhs as Yw.Model.HydroFourlinkInfo); } break; case Yw.Hydro.ParterCatalog.Meter://水表 { vm = new HydroMeterPropertyViewModel(rhs as Yw.Model.HydroMeterInfo); } break; case Yw.Hydro.ParterCatalog.Flowmeter://流量计 { vm = new HydroFlowmeterPropertyViewModel(rhs as Yw.Model.HydroFlowmeterInfo); } break; case Yw.Hydro.ParterCatalog.Pressmeter://压力表 { vm = new HydroPressmeterPropertyViewModel(rhs as Yw.Model.HydroPressmeterInfo); } break; case Yw.Hydro.ParterCatalog.Pipe://管道 { vm = new HydroPipePropertyViewModel(rhs as Yw.Model.HydroPipeInfo); } break; case Yw.Hydro.ParterCatalog.Translation://过渡件 { vm = new HydroTranslationPropertyViewModel(rhs as Yw.Model.HydroTranslationInfo); } break; case Yw.Hydro.ParterCatalog.Exchanger://换热器 { vm = new HydroExchangerPropertyViewModel(rhs as Yw.Model.HydroExchangerInfo); } break; case Yw.Hydro.ParterCatalog.Compressor://压缩机 { vm = new HydroCompressorPropertyViewModel(rhs as Yw.Model.HydroCompressorInfo); } break; case Yw.Hydro.ParterCatalog.Pump://水泵 { vm = new HydroPumpPropertyViewModel(rhs as Yw.Model.HydroPumpInfo); } break; case Yw.Hydro.ParterCatalog.Valve://阀门 { vm = new HydroValvePropertyViewModel(rhs as Yw.Model.HydroValveInfo); } break; default: break; } return vm; } } }