CommunicationConfig.cs 2.14 KB
using FreeSql.DataAnnotations;
using HHECS.DataContract;
using System.ComponentModel.DataAnnotations;

namespace HHECS.DAQClient.Model
{
    [Table(Name = "daq_communicationConfig")]
    public class CommunicationConfig: BaseEntity<int>
    {
        /// <summary>
        /// 编号
        /// </summary>
        public string Code { get; set; } = null!;

        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; } = null!;

        /// <summary>
        /// 类型
        /// </summary>
        public CommunicationTypeConst CommunicationType { get; set; } = CommunicationTypeConst.None;

        /// <summary>
        /// IP地址
        /// </summary>
        /// <remarks><see cref="Equipment"/> 使用IpAddress匹配通讯配置</remarks>
        public string IpAddress { get; set; } = null!;

        /// <summary>
        /// 端口号
        /// </summary>
        public int Port { get; set; }

        /// <summary>
        /// 是否启用
        /// </summary>
        public bool Enable { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }

        /// <summary>
        /// 区域
        /// </summary>
        public string Area { get; set; } = null!;
    }

    /// <summary>
    /// 通讯方式
    /// </summary>
    public enum CommunicationTypeConst
    {
        /// <summary>
        /// 无
        /// </summary>
        [Display(Name = "")]
        None = 0,

        /// <summary>
        /// Kuka 机器人代理
        /// </summary>
        [Display(Name = "Kuka 机器人代理")]
        KukaVarProxy,

        /// <summary>
        /// Tcp 客户端
        /// </summary>
        [Display(Name = "Tcp 客户端")]
        TcpClient,

        /// <summary>
        /// 西门子S7通信
        /// </summary>
        [Display(Name = "S7通信")]
        SiemensS7,

        /// <summary>
        /// Fanuc 机器人
        /// </summary>
        [Display(Name = "Fanuc")]
        Fanuc,

        [Display(Name = "Siemens S1500")]
        Siemens_S1500,

        [Display(Name = "Siemens S1200")]
        Siemens_S1200
    }
}