| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- using SKMC.Api.Common;
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.Linq;
- using System.Text;
- namespace SKMC.Api.Motion.Model
- {
- /// <summary>
- /// IO模块设备
- /// </summary>
- public class MotionIODev
- {
- /// <summary>
- /// 设备编号
- /// </summary>
- public short DevNo { get; set; }
- /// <summary>
- /// 设备类型, DI/DO/AD/DA
- /// </summary>
- public string Type { get; set; }
- /// <summary>
- /// 当前的分类, 在分类筛选时有用
- /// </summary>
- public string Catalog { get; set; }
- /// <summary>
- /// 所属(模块)分类, 一个IODev可能包含多个分类
- /// </summary>
- public HashSet<string> Catalogs { get; set; } = new HashSet<string>();
- public string Desc
- {
- get
- {
- if (MotionIOs != null & MotionIOs.Count > 0)
- {
- HashSet<string> descs = new HashSet<string>();
- foreach(var motionIO in MotionIOs)
- {
- if (!CommonUtil.IsEmptyString(motionIO.Code))
- {
- descs.Add(motionIO.Desc);
- }
- }
- StringBuilder builder = new StringBuilder();
- foreach(var desc in descs)
- {
- builder.Append(desc).Append(',');
- }
- return builder.Remove(builder.Length - 1, 1).ToString();
- }
- return default;
- }
- }
- /// <summary>
- /// 点位数量
- /// </summary>
- public int SiteNum { get => MotionIOs.Count; }
- public List<MotionIO> MotionIOs { get; set; }
- public string DevInfo() => $"{Type} [{DevNo}]: {Desc}";
- }
- }
|