using System; using SHJX.Service.Common.Extend; using SHJX.Service.Common.ReadXML; using SHJX.Service.Model.Control; using SHJX.Service.ServerClient.Interface; using SHJX.Service.ServerClient.TempController; using SHJX.Service.Common.Logging; using Microsoft.Extensions.Logging; namespace SHJX.Service.ServerClient.LiquidPump { /// /// 水 /// public class WaterPort : SerialPortImp, PortControlImp { private static readonly ILogger logger = LogFactory.BuildLogger(typeof(WaterPort)); /// /// 水 /// /// 日志 /// 配置 public WaterPort( ReadConfigUtil config) : base( config) { } public object Read(PortArgs args) { throw new NotImplementedException(); } public bool Write(PortArgs args) { int local = args.Reserve.ToString() switch { "R1" or "R2" or "R3" or "R4" or "R5" or "R6" or "R7" or "R8" or "R9" or "R10" or "R11" or "R12" => 1, "R13" or "R14" or "R15" or "R16" or "R17" or "R18" or "R19" or "R20" or "R21" or "R22" or "R23" or "R24" => 2, _ => throw new ArgumentNullException(args.Reserve.ToString()) }; var way = args.WriteWay switch { WriteWay.Start => "L", WriteWay.Stop => "H", _ => throw new ArgumentNullException(args.WriteWay.GetEnumDesc()) }; return MotorStorage(args.NodeId, local, way); } } }