using iWareCommon.Common.Globle;
using iWareCommon.Utils;
using iWareModel;
using iWareSql.DBModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace iWareSql.DataAccess
{
///
/// RGV实时状态信息更新
///
public class DeviceRgvRealTimeHandler
{
public static void Update(List realTimeList, LogType _LogType)
{
Task.Run(() =>
{
try
{
using (DbModel edm = new DbModel())
{
foreach (var updateData in realTimeList)
{
Device_RgvRealTime data = null;
data = edm.Device_RgvRealTime.Where(x => x.RgvCode == updateData.RgvCode).FirstOrDefault();
////特殊处理下RGV
//if (updateData.RgvCode == ((int)EDevice.RGV1040).ToString())
//{
// data = edm.Device_RgvRealTime.Where(x => x.RgvCode == updateData.RgvCode).FirstOrDefault();
//}
//else
//{
// data = edm.Device_RgvRealTime.Where(x => x.RgvCode == updateData.RgvCode).FirstOrDefault();
//}
if (data != null)
{
data.Mode = updateData.Mode;
data.ModeName = updateData.ModeName;
data.State = updateData.State;
data.StateName = updateData.StateName;
data.Shape = updateData.Shape;
data.ShapeName = updateData.ShapeName;
data.PH_1 = updateData.PH_1;
data.PH_2 = updateData.PH_2;
data.TaskID = updateData.TaskID;
data.Destination = updateData.Destination;
data.WarningCode = updateData.WarningCode;
data.WarningContent = updateData.WarningContent;
data.Coordinate = updateData.Coordinate;//赋值RGV坐标值
var nowDate = DateTime.Now;
data.ModifyTime = nowDate;
data.ModifyBy = SysGloble.WCSSystem;
edm.SaveChanges();
}
}
}
}
catch (Exception ex)
{
Log4NetHelper.WriteErrorLog(_LogType, "更新设备状态出现异常:" + ex.Message, ex);
}
});
}
}
}