using ServiceCenter;
using ServiceCenter.SqlSugars;
using WCS.Core;
using WCS.Entity.Protocol;
using WCS.Entity.Protocol.BCR;
using WCS.Entity.Protocol.HUB;
using WCS.Entity.Protocol.RGV;
using WCS.Entity.Protocol.Robot;
using WCS.Entity.Protocol.SRM;
using WCS.Entity.Protocol.Station;
using WCS.Entity.Protocol.Truss;
using WCS.WorkEngineering.Extensions;
using DeviceFlags = WCS.WorkEngineering.Extensions.DeviceFlags;
namespace WCS.WorkEngineering
{
///
/// 业务工程配置信息
///
public static class WorkStart
{
///
/// 初始化 设备信息
///
public static void InitializeDeviceInfo()
{
var conv = new Device("1");
conv.AddFlag(DeviceFlags.输送机);
conv.AddProtocol(0, 520, "1");
}
///
/// 初始化数据库连接
///
///
public static void InitDB(this List datas)
{
//初始化数据库
SqlSugarHelper.Do(db =>
{
foreach (var connectionString in datas!)
{
var _db = db.Connect.GetConnectionScope(connectionString.Key);
switch (connectionString.Key)
{
case "WCSDB"://WCS基本数据库
break;
case "WCSDlog"://WCS日志数据库
break;
case "PLC"://PLC
SqlSugarHelper.SetPLC(connectionString.Key);
_db.DbMaintenance.CreateDatabase();
//_db.CodeFirst.InitTables();
_db.CodeFirst.InitTables();
break;
default: //其他库
break;
};
};
});
}
}
public class DevDbConfig
{
public DevDbConfig()
{
}
public DevDbConfig(string ip, T code)
{
IP = ip;
Code = code;
}
public DevDbConfig(string ip, List> devIntervalList)
{
IP = ip;
DevIntervalList = devIntervalList;
}
public DevDbConfig(string ip, List devCodeList)
{
IP = ip;
DevCodeList = devCodeList;
}
public string IP { get; set; }
public T Code { get; set; }
public T StartCode { get; set; }
public T EndCode { get; set; }
public List DevCodeList { get; set; }
public List> DevIntervalList { get; set; }
}
public class DevInterval
{
public DevInterval(T s, T e)
{
StartCode = s;
EndCode = e;
}
public T StartCode { get; set; }
public T EndCode { get; set; }
}
}