init
This commit is contained in:
167
DataPRO/Modules/Hardware/AddEditHardware/Model/DASModule.cs
Normal file
167
DataPRO/Modules/Hardware/AddEditHardware/Model/DASModule.cs
Normal file
@@ -0,0 +1,167 @@
|
||||
using System;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using DTS.Common.Base;
|
||||
using DTS.Common.Enums.Hardware;
|
||||
using DTS.Common.Interface.Hardware.AddEditHardware;
|
||||
using DTS.Common.Utilities.Logging;
|
||||
|
||||
namespace HardwareList.Model
|
||||
{
|
||||
public class DASModule : BasePropertyChanged, IAddEditHardwareDASModule
|
||||
{
|
||||
public bool Disabled { get; set; } = false;
|
||||
|
||||
private SLICEBridgeTypes _sliceBridgeType = SLICEBridgeTypes.Bridge;
|
||||
|
||||
public SLICEBridgeTypes SLICEBridgeType
|
||||
{
|
||||
get => _sliceBridgeType;
|
||||
set
|
||||
{
|
||||
SetProperty(ref _sliceBridgeType, value, "SLICEBridgeType");
|
||||
SetImage();
|
||||
}
|
||||
}
|
||||
|
||||
private HardwareTypes _moduleType = HardwareTypes.UNDEFINED;
|
||||
public HardwareTypes ModuleType
|
||||
{
|
||||
get => _moduleType;
|
||||
set
|
||||
{
|
||||
SetProperty(ref _moduleType, value, "ModuleType");
|
||||
SetImage();
|
||||
}
|
||||
}
|
||||
|
||||
private string _serialNumber = "";
|
||||
public string SerialNumber
|
||||
{
|
||||
get => _serialNumber;
|
||||
set => SetProperty(ref _serialNumber, value, "SerialNumber");
|
||||
}
|
||||
|
||||
private ImageSource _dasImage = null;
|
||||
|
||||
public ImageSource DASImage
|
||||
{
|
||||
get => _dasImage;
|
||||
set => SetProperty(ref _dasImage, value, "DASImage");
|
||||
}
|
||||
|
||||
private static readonly SLICEBridgeTypes[] _availableNanoBridges = new SLICEBridgeTypes[]
|
||||
{
|
||||
SLICEBridgeTypes.Bridge,
|
||||
SLICEBridgeTypes.IEPE
|
||||
};
|
||||
|
||||
public SLICEBridgeTypes[] AvailableNanoBridges => _availableNanoBridges;
|
||||
|
||||
private static readonly SLICEBridgeTypes[] _availableMicroBridges = new SLICEBridgeTypes[]
|
||||
{
|
||||
SLICEBridgeTypes.Bridge,
|
||||
SLICEBridgeTypes.IEPE,
|
||||
SLICEBridgeTypes.ARS,
|
||||
SLICEBridgeTypes.ACC
|
||||
};
|
||||
|
||||
public SLICEBridgeTypes[] AvailableMicroBridges => _availableMicroBridges;
|
||||
|
||||
private static readonly HardwareTypes[] _availableRackModules = new HardwareTypes[]
|
||||
{
|
||||
HardwareTypes.UNDEFINED,
|
||||
HardwareTypes.SIM,
|
||||
HardwareTypes.TOM,
|
||||
HardwareTypes.DIM
|
||||
};
|
||||
public HardwareTypes[] AvailableRACKModules => _availableRackModules;
|
||||
|
||||
/// <summary>
|
||||
/// Uri for finding images using the application resources
|
||||
/// </summary>
|
||||
private static readonly Uri _baseUri = new Uri("pack://application:,,,/ResourceFile.xaml");
|
||||
private void SetImage()
|
||||
{
|
||||
var fileName = string.Empty;
|
||||
switch (ModuleType)
|
||||
{
|
||||
case HardwareTypes.SLICE_Bridge:
|
||||
switch (SLICEBridgeType)
|
||||
{
|
||||
case SLICEBridgeTypes.ACC:
|
||||
fileName = @"Assets/Hardware/SLICEACC_Side.png";
|
||||
break;
|
||||
case SLICEBridgeTypes.ARS:
|
||||
fileName = @"Assets/Hardware/SLICEARS_Side.png";
|
||||
break;
|
||||
case SLICEBridgeTypes.Bridge:
|
||||
fileName = @"Assets/Hardware/SLICEBridge_Side.png";
|
||||
break;
|
||||
case SLICEBridgeTypes.IEPE:
|
||||
fileName = @"Assets/Hardware/SLICEIEPE_Side.png";
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case HardwareTypes.TOM:
|
||||
fileName = @"Assets/Hardware/TDAS_TOM_Front.jpg";
|
||||
break;
|
||||
case HardwareTypes.SIM:
|
||||
fileName = @"Assets/Hardware/TDAS_SIM_Front.jpg";
|
||||
break;
|
||||
case HardwareTypes.DIM:
|
||||
fileName = @"Assets/Hardware/TDAS_DIM_Front.jpg";
|
||||
break;
|
||||
default:
|
||||
fileName = @"Assets/Hardware/TDAS_Rack_Cover.png";
|
||||
break;
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(fileName))
|
||||
{
|
||||
DASImage = null;
|
||||
return;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
var image = new BitmapImage(new Uri(_baseUri, fileName));
|
||||
image.Freeze();
|
||||
DASImage = image;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
APILogger.Log(
|
||||
$"Failed to get image: {fileName} for type: {ModuleType.ToString()} exception: {ex.Message.ToString()}");
|
||||
}
|
||||
}
|
||||
public IAddEditHardwareHardware OwningHardware { get; set; }
|
||||
|
||||
public string GetSerialNumberPrefix()
|
||||
{
|
||||
switch (ModuleType)
|
||||
{
|
||||
case HardwareTypes.DIM: return "DIM";
|
||||
case HardwareTypes.SIM: return "SIM";
|
||||
case HardwareTypes.SLICE_Bridge:
|
||||
{
|
||||
switch (SLICEBridgeType)
|
||||
{
|
||||
case SLICEBridgeTypes.ACC: return "AC";
|
||||
case SLICEBridgeTypes.ARS: return "AR";
|
||||
case SLICEBridgeTypes.Bridge: return "BR";
|
||||
case SLICEBridgeTypes.IEPE: return "IEPE";
|
||||
}
|
||||
}
|
||||
break;
|
||||
case HardwareTypes.TOM:
|
||||
return "TOM";
|
||||
}
|
||||
return string.Empty;
|
||||
}
|
||||
public DASModule()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
1699
DataPRO/Modules/Hardware/AddEditHardware/Model/Hardware.cs
Normal file
1699
DataPRO/Modules/Hardware/AddEditHardware/Model/Hardware.cs
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user