using Microsoft.Extensions.Options;
using System;
using System.Collections.Generic;

#region << 版 本 注 释 >>
/*--------------------------------------------------------------------
* 版权所有 (c) 2024 WenJY 保留所有权利。
* CLR版本：4.0.30319.42000
* 机器名称：LAPTOP-E0N2L34V
* 命名空间：SlnMesnac.Config
* 唯一标识：496f8d2b-70e3-4a05-ae18-a9b0fcd06b82
*
* 创建者：WenJY
* 电子邮箱：wenjy@mesnac.com
* 创建时间：2024-03-27 21:58:35
* 版本：V1.0.0
* 描述：
*
*--------------------------------------------------------------------
* 修改人：
* 时间：
* 修改说明：
*
* 版本：V1.0.0
*--------------------------------------------------------------------*/
#endregion << 版 本 注 释 >>
namespace SlnMesnac.Config
{
    /// <summary>
    /// 系统配置
    /// </summary>
    #pragma warning disable CS8618 // Non-nullable field 'Data' must contain a non-null value when exiting constructor. Consider declaring the field as nullable.
    public class AppConfig : IOptions<AppConfig>
    {
        /// <summary>
        /// 日志文件路径
        /// </summary>
        public string logPath { get; set; }
        
        /// <summary>
        /// Sql连接配置 
        /// </summary>
        public List<SqlConfig> sqlConfig { get; set; }
        
        /// <summary>
        /// PLC连接配置
        /// </summary>
        public List<PlcConfig> plcConfig { get; set; }
        
        /// <summary>
        /// RFID连接配置
        /// </summary>
        public List<RfidConfig> rfidConfig { get; set; }


        /// <summary>
        /// Redis配置
        /// </summary>
        public string redisConfig { get; set; }

        /// <summary>
        /// AMR
        /// </summary>

        public string AMRIP { get; set; }


        public AppConfig Value => this;


    }
}
