using BLL; using System; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using Newtonsoft.Json.Linq; using System.IO; using NPOI.XSSF.UserModel; using NPOI.SS.UserModel; using System.Runtime.Serialization; using FineUIPro.Web.ProjectData; using System.Configuration; using System.Web.Services; using Newtonsoft.Json; using FineUIPro.Web.DataShow; namespace FineUIPro.Web.HSSE.TowerCrane { public partial class TowerCraneState : PageBase { #region 加载 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.InitTreeMenu();//加载树 //显示列 } } #endregion #region 加载树装置-单位-工作区 /// /// 加载树 /// private void InitTreeMenu() { this.tvControlItem.Nodes.Clear(); ////塔吊 var towerCranes = (from x in Funs.DB.HSSE_TowerCrane where x.ProjectId == this.CurrUser.LoginProjectId && ( string.IsNullOrEmpty(txtIsono.Text) || x.TowerCraneName.Contains(txtIsono.Text)) orderby x.CreateDate select x ).ToList(); foreach(var item in towerCranes ) { TreeNode rootNode = new TreeNode(); rootNode.Text = item.TowerCraneName; rootNode.NodeID = item.TowerCraneId; rootNode.EnableClickEvent= true; this.tvControlItem.Nodes.Add(rootNode); } } #endregion #region 绑定树节点 /// /// 查询 /// /// /// protected void Tree_TextChanged(object sender, EventArgs e) { this.InitTreeMenu(); } #region 树展开事件 /// /// 树展开事件 /// /// /// protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e) { string TowerCraneId = this.tvControlItem.SelectedNodeID; this.hfTowerCraneId.Text = TowerCraneId; var towerCrane = Funs.DB.HSSE_TowerCrane.FirstOrDefault(x => x.TowerCraneId == TowerCraneId); PageContext.RegisterStartupScript("runGetData() ; initVideo('"+ towerCrane.VideoAccount + "', '"+ Funs.EncryptionPassword(towerCrane.VideoPassword )+ "');"); } [WebMethod] public static string GetData(string TowerCraneId) { Dictionary res = new Dictionary(); var towerCrane = Funs.DB.HSSE_TowerCrane.FirstOrDefault(x => x.TowerCraneId == TowerCraneId); if (towerCrane != null) { res.Add("TowerCraneName", towerCrane.TowerCraneName); res.Add("TowerCraneCode", towerCrane.TowerCraneCode); res.Add("TowerCap", towerCrane.TowerCap); res.Add("VideoAccount", towerCrane.VideoAccount); res.Add("VideoPassword", Funs.EncryptionPassword(towerCrane.VideoPassword)); if (towerCrane.MaxHoist.HasValue) { res.Add("MaxHoist", towerCrane.MaxHoist.Value.ToString("##.##")); } if (towerCrane.MaxMoment.HasValue) { res.Add("MaxMoment", towerCrane.MaxMoment.Value.ToString("##.##")); } if (towerCrane.FrontArmLength.HasValue) { res.Add("FrontArmLength", towerCrane.FrontArmLength.Value.ToString("##.##")); } if (towerCrane.BackArmLength.HasValue) { res.Add("BackArmLength", towerCrane.BackArmLength.Value.ToString("##.##")); } if (towerCrane.ArmHeigh.HasValue) { res.Add("ArmHeigh", towerCrane.ArmHeigh.Value.ToString("##.##")); } DateTime date = DateTime.Now.AddDays(-1); var record = Funs.DB.HSSE_TowerCraneRecord.Where(x=>x.TowerCraneId==TowerCraneId && x.Date>=date).OrderByDescending(x=>x.Date).ToList(); if (record.Count > 0) { res.Add("AmountHoist", record[0].AmountHoist.Value.ToString("#0.##")); res.Add("Camber", record[0].Camber.Value.ToString("#0.##")); res.Add("Height", record[0].Height.Value.ToString("#0.##")); res.Add("Hoist", record[0].Hoist.Value.ToString("#0.##")); res.Add("Moment", record[0].Moment.Value.ToString("#0.##")); res.Add("Range", record[0].Range.Value.ToString("#0.##")); res.Add("RotationAngle", record[0].RotationAngle.Value.ToString("#0.##")); res.Add("WindSpeed", record[0].WindSpeed.Value.ToString("#0.##")); } else { res.Add("AmountHoist", "0"); res.Add("Camber", "0"); res.Add("Height", "0"); res.Add("Hoist", "0"); res.Add("Moment", "0"); res.Add("Range", "0"); res.Add("RotationAngle", "0"); res.Add("WindSpeed", "0"); } HashSet warnings = new HashSet(); warnings.Add("111"); warnings.Add("121"); warnings.Add("132"); warnings.Add("133"); warnings.Add("141"); warnings.Add("151"); HashSet alarms = new HashSet(); alarms.Add("112"); alarms.Add("122"); alarms.Add("131"); alarms.Add("134"); alarms.Add("142"); alarms.Add("152"); alarms.Add("201"); alarms.Add("202"); int DailyWarning = 0; int DailyAlarm = 0; List SSDZ = new List(); List SSDZX = new List(); List SSLJ = new List(); List SSLJX = new List(); List BJQS = new List(); List BJQSX = new List(); foreach (var r in record) { if (!string.IsNullOrEmpty(r.AlarmType)) { string[] AlarmType = r.AlarmType.Replace("[","").Replace("]","").Split(','); foreach(string a in AlarmType) { if (warnings.Contains(a)) { DailyWarning++; } if (alarms.Contains(a)) { DailyAlarm++; } } BJQS.Add(AlarmType.Length); BJQSX.Add(r.Date.Value.ToString("HH:mm")); } if (r.Hoist.HasValue) { SSDZ.Add(r.Hoist.Value); SSDZX.Add(r.Date.Value.ToString("HH:mm")); } else { SSDZ.Add(0); } if (r.Moment.HasValue) { SSLJ.Add(r.Moment.Value); SSLJX.Add(r.Date.Value.ToString("HH:mm")); } else { SSLJ.Add(0); } } res.Add("SSDZ", SSDZ); res.Add("SSDZX", SSDZX); res.Add("SSLJ", SSLJ); res.Add("SSLJX", SSLJX); res.Add("BJQS", BJQS); res.Add("BJQSX", BJQSX); res.Add("DailyWarning", DailyWarning + ""); res.Add("DailyAlarm", DailyAlarm + ""); } return JsonConvert.SerializeObject(res); ; } #endregion #endregion } }