namespace Yw.WinFrmUI
|
{
|
/// <summary>
|
/// 水力可见组件属性视图创建辅助类
|
/// </summary>
|
public static class HydroVisualViewModelBuilder
|
{
|
/// <summary>
|
/// 创建可见视图
|
/// </summary>
|
public static HydroVisualViewModel CreateVisualViewModel(this Yw.Model.HydroVisualInfo rhs, Yw.Model.HydroModelInfo hydroInfo)
|
{
|
if (rhs == null)
|
{
|
return default;
|
}
|
HydroVisualViewModel vm = null;
|
switch (rhs.Catalog)
|
{
|
case Yw.Hydro.ParterCatalog.Reservoir://水库
|
{
|
vm = new HydroReservoirViewModel(rhs as Yw.Model.HydroReservoirInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Tank://水池
|
{
|
vm = new HydroTankViewModel(rhs as Yw.Model.HydroTankInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Waterbox://水箱
|
{
|
vm = new HydroWaterboxViewModel(rhs as Yw.Model.HydroWaterboxInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Junction://连接节点
|
{
|
vm = new HydroJunctionViewModel(rhs as Yw.Model.HydroJunctionInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Nozzle://喷嘴
|
{
|
vm = new HydroNozzleViewModel(rhs as Yw.Model.HydroNozzleInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Hydrant://消火栓
|
{
|
vm = new HydroHydrantViewModel(rhs as Yw.Model.HydroHydrantInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Blunthead://闷头
|
{
|
vm = new HydroBluntheadViewModel(rhs as Yw.Model.HydroBluntheadInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Elbow://弯头
|
{
|
vm = new HydroElbowViewModel(rhs as Yw.Model.HydroElbowInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Threelink://三通
|
{
|
vm = new HydroThreelinkViewModel(rhs as Yw.Model.HydroThreelinkInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Fourlink://四通
|
{
|
vm = new HydroFourlinkViewModel(rhs as Yw.Model.HydroFourlinkInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Meter://水表
|
{
|
vm = new HydroMeterViewModel(rhs as Yw.Model.HydroMeterInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Flowmeter://流量计
|
{
|
vm = new HydroFlowmeterViewModel(rhs as Yw.Model.HydroFlowmeterInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Pressmeter://压力表
|
{
|
vm = new HydroPressmeterViewModel(rhs as Yw.Model.HydroPressmeterInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Pipe://管道
|
{
|
vm = new HydroPipeViewModel(rhs as Yw.Model.HydroPipeInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Translation://过渡件
|
{
|
vm = new HydroTranslationViewModel(rhs as Yw.Model.HydroTranslationInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Pump://水泵
|
{
|
vm = new HydroPumpViewModel(rhs as Yw.Model.HydroPumpInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Valve://阀门
|
{
|
vm = new HydroValveViewModel(rhs as Yw.Model.HydroValveInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Exchanger://换热器
|
{
|
vm = new HydroExchangerViewModel(rhs as Yw.Model.HydroExchangerInfo, hydroInfo);
|
}
|
break;
|
case Yw.Hydro.ParterCatalog.Compressor://压缩机
|
{
|
vm = new HydroCompressorViewModel(rhs as Yw.Model.HydroCompressorInfo, hydroInfo);
|
}
|
break;
|
default: break;
|
}
|
return vm;
|
}
|
|
|
}
|
}
|