namespace ZB.MOM.WW.OtOpcUa.AdminUI.Uns;
///
/// Parameter object carrying the operator-editable fields for an equipment create or update,
/// so and
/// avoid an unwieldy positional signature.
/// The EquipmentId and EquipmentUuid are system-generated and are
/// therefore not part of this input. Optional string fields that arrive whitespace-only are
/// collapsed to null by the service.
///
/// UNS level-5 segment; matches ^[a-z0-9-]{1,32}$.
/// Operator colloquial id; unique fleet-wide.
/// Logical FK to the owning .
/// Optional driver binding; whitespace/empty means driver-less.
/// Optional ERP equipment id.
/// Optional SAP PM equipment id.
/// Optional OPC 40010 manufacturer name.
/// Optional OPC 40010 model designation.
/// Optional OPC 40010 serial number.
/// Optional OPC 40010 hardware revision.
/// Optional OPC 40010 software revision.
/// Optional OPC 40010 year of construction.
/// Optional OPC 40010 asset location.
/// Optional OPC 40010 manufacturer URI.
/// Optional OPC 40010 device-manual URI.
/// Whether the equipment is surfaced in deployments.
public sealed record EquipmentInput(
string Name,
string MachineCode,
string UnsLineId,
string? DriverInstanceId,
string? ZTag,
string? SAPID,
string? Manufacturer,
string? Model,
string? SerialNumber,
string? HardwareRevision,
string? SoftwareRevision,
short? YearOfConstruction,
string? AssetLocation,
string? ManufacturerUri,
string? DeviceManualUri,
bool Enabled);