246 lines
8.7 KiB
C#
246 lines
8.7 KiB
C#
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 加载
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
this.InitTreeMenu();//加载树
|
|
//显示列
|
|
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 加载树装置-单位-工作区
|
|
/// <summary>
|
|
/// 加载树
|
|
/// </summary>
|
|
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 绑定树节点
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Tree_TextChanged(object sender, EventArgs e)
|
|
{
|
|
this.InitTreeMenu();
|
|
|
|
}
|
|
|
|
#region 树展开事件
|
|
/// <summary>
|
|
/// 树展开事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
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<string, object> res = new Dictionary<string, object>();
|
|
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<string> warnings = new HashSet<string>();
|
|
warnings.Add("111");
|
|
warnings.Add("121");
|
|
warnings.Add("132");
|
|
warnings.Add("133");
|
|
warnings.Add("141");
|
|
warnings.Add("151");
|
|
HashSet<string> alarms = new HashSet<string>();
|
|
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<double> SSDZ = new List<double>();
|
|
List<string> SSDZX = new List<string>();
|
|
List<double> SSLJ = new List<double>();
|
|
List<string> SSLJX = new List<string>();
|
|
List<int> BJQS = new List<int>();
|
|
List<string> BJQSX = new List<string>();
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
}
|
|
} |