public object GetRtSpectrumDataRShell(int sensorId) { using (var db = new SecureCloud_Entities()) { var querySensors = from scc in db.T_DIM_SENSOR_CORRENT from s in db.T_DIM_SENSOR where scc.SensorId == sensorId && s.SENSOR_ID == scc.CorrentSensorId select new { SensorId = (int)scc.CorrentSensorId, Name = s.SENSOR_LOCATION_DESCRIPTION }; if (!(from b in db.T_THEMES_VIBRATION_BATCH from q in querySensors where b.SensorId == q.SensorId select b.CollectTime).Any()) { return(null); } var lastDate = (from b in db.T_THEMES_VIBRATION_BATCH from q in querySensors where b.SensorId == q.SensorId select b.CollectTime).Max(); var lastBatch = (from i in db.T_THEMES_VIBRATION_BATCH from q in querySensors where i.SensorId == q.SensorId && i.CollectTime == lastDate select new { CollectTime = lastDate, //最新时段 BatchId = i.BatchId, SensorId = q.SensorId }); var query2 = from s in db.T_DIM_SENSOR from f in db.T_DIM_SAFETY_FACTOR_TYPE from q in querySensors from l in lastBatch where q.SensorId == s.SENSOR_ID && s.SAFETY_FACTOR_TYPE_ID == f.SAFETY_FACTOR_TYPE_ID && l.SensorId == s.SENSOR_ID && !s.IsDeleted select new { SensorId = s.SENSOR_ID, Location = s.SENSOR_LOCATION_DESCRIPTION, Columns = f.FACTOR_VALUE_COLUMNS, data = (from o in db.T_THEMES_VIBRATION where o.BatchId == l.BatchId select o).Select(o => new { Frequency = o.Frequency, Value = o.Value //数据时间 }) }; var info = query2.ToList(); var oneUnit = new List <OneUnit>(); foreach (var item in info) { var one = new OneUnit(); one.Unit = Config.GetUnitBySensorID(item.SensorId)[0]; one.SensorId = item.SensorId; oneUnit.Add(one); } var infoNew = from unit in oneUnit from a in info where a.SensorId == unit.SensorId select new { SensorId = a.SensorId, Location = a.Location, Columns = a.Columns, // Unit = f.FACTOR_VALUE_UNIT, Unit = unit.Unit, data = a.data }; return(infoNew.ToList()); } }
public object GetOriginalDataRShell(DateTime collectTime, int sensorId) { using (var db = new SecureCloud_Entities()) { var querySensors = from scc in db.T_DIM_SENSOR_CORRENT from s in db.T_DIM_SENSOR where scc.SensorId == sensorId && s.SENSOR_ID == scc.CorrentSensorId select new { SensorId = (int)scc.CorrentSensorId, Name = s.SENSOR_LOCATION_DESCRIPTION }; var lastBatch = from q in querySensors select new { BatchId = (from i in db.T_THEMES_VIBRATION_BATCH where i.SensorId == q.SensorId && i.CollectTime == collectTime select i.BatchId == null ? (Guid?)null : i.BatchId), SensorId = q.SensorId }; var query2 = from s in db.T_DIM_SENSOR from f in db.T_DIM_SAFETY_FACTOR_TYPE from q in querySensors from l in lastBatch where q.SensorId == s.SENSOR_ID && s.SAFETY_FACTOR_TYPE_ID == f.SAFETY_FACTOR_TYPE_ID && l.SensorId == s.SENSOR_ID //&& s.Identification != 1 && !s.IsDeleted && !s.IsDeleted select new { SensorId = s.SENSOR_ID, Location = s.SENSOR_LOCATION_DESCRIPTION, Columns = f.FACTOR_VALUE_COLUMNS, // Unit = f.FACTOR_VALUE_UNIT, // Unit = unit, data = (from o in db.T_THEMES_VIBRATION_ORIGINAL where o.BatchId == l.BatchId.FirstOrDefault() select o).Select(o => new { Speed = o.Speed, CollectTime = o.CollectTime //数据时间 }) }; var info = query2.ToList(); var oneUnit = new List <OneUnit>(); foreach (var item in info) { var one = new OneUnit(); one.Unit = Config.GetUnitBySensorID(item.SensorId)[0]; one.SensorId = item.SensorId; oneUnit.Add(one); } var infoNew = from unit in oneUnit from a in info where a.SensorId == unit.SensorId select new { SensorId = a.SensorId, Location = a.Location, Columns = a.Columns, // Unit = f.FACTOR_VALUE_UNIT, Unit = unit.Unit, data = a.data }; return(infoNew.ToList()); } }
public object GetRtOriginalDataRShell(int sensorId) { using (var db = new SecureCloud_Entities()) { var querySensors = from scc in db.T_DIM_SENSOR_CORRENT from s in db.T_DIM_SENSOR where scc.SensorId == sensorId && s.SENSOR_ID == scc.CorrentSensorId select new { SensorId = (int)scc.CorrentSensorId, Name = s.SENSOR_LOCATION_DESCRIPTION }; if (!(from b in db.T_THEMES_VIBRATION_BATCH from q in querySensors where b.SensorId == q.SensorId select b.CollectTime).Any()) { return(null); } var lastDate = (from b in db.T_THEMES_VIBRATION_BATCH from q in querySensors where b.SensorId == q.SensorId select b.CollectTime).DefaultIfEmpty().Max(); var collectTime = lastDate; var lastBatch = from q in querySensors join i in (db.T_THEMES_VIBRATION_BATCH).Where(k => k.CollectTime == collectTime) on q.SensorId equals i.SensorId into j from o in j.DefaultIfEmpty() select new LastBatch { BatchId = o.BatchId, SensorId = q.SensorId }; var query2 = from s in db.T_DIM_SENSOR from f in db.T_DIM_SAFETY_FACTOR_TYPE from q in querySensors from l in lastBatch where q.SensorId == s.SENSOR_ID && s.SAFETY_FACTOR_TYPE_ID == f.SAFETY_FACTOR_TYPE_ID && l.SensorId == s.SENSOR_ID //&& s.Identification != 1 && !s.IsDeleted && !s.IsDeleted select new { SensorId = s.SENSOR_ID, Location = s.SENSOR_LOCATION_DESCRIPTION, Columns = f.FACTOR_VALUE_COLUMNS, // Unit = f.FACTOR_VALUE_UNIT, // Unit = unit, CollectTime = collectTime, //最新时段 data = (from o in db.T_THEMES_VIBRATION_ORIGINAL where o.BatchId == l.BatchId select o).Select(o => new { Speed = o.Speed, CollectTime = o.CollectTime //数据时间 }) }; var info = query2.ToList(); var oneUnit = new List <OneUnit>(); foreach (var item in info) { var one = new OneUnit(); one.Unit = Config.GetUnitBySensorID(item.SensorId)[0]; one.SensorId = item.SensorId; oneUnit.Add(one); } var infoNew = from unit in oneUnit from a in info where a.SensorId == unit.SensorId select new { SensorId = a.SensorId, Location = a.Location, Columns = a.Columns, // Unit = f.FACTOR_VALUE_UNIT, Unit = unit.Unit, CollectTime = a.CollectTime, //最新时段 data = a.data }; return(infoNew.ToList()); } }