| | |
| | | this.newRoom = new Common.Room();
|
| | | newRoom.FloorId = this.floorKeys;
|
| | | newRoom.BackgroundImage = btnPic.ImagePath;
|
| | | newRoom.Humidity = -1000;
|
| | | newRoom.Temperatrue = -1000;
|
| | |
|
| | | //初始化桌布
|
| | | var tableContr = new InformationEditorControl();
|
| | |
| | | }
|
| | |
|
| | | newRoom.FloorId = this.floorKeys;
|
| | | var result = newRoom.AddRoom(newRoom);
|
| | | if (result == false)
|
| | | {
|
| | | //提示用户添加失败
|
| | | this.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.FAIL));
|
| | | }
|
| | | else
|
| | | {
|
| | | this.FinishEditorEvent?.Invoke();
|
| | |
|
| | | this.CloseForm();
|
| | | }
|
| | | HdlRoomLogic.Current.AddRoom(newRoom);
|
| | | this.FinishEditorEvent?.Invoke();
|
| | |
|
| | | this.CloseForm();
|
| | | };
|
| | | }
|
| | |
|
| | |
| | | /// <param name="control"></param>
|
| | | private void ShowSelectFloor(FrameCaptionViewControl control)
|
| | | {
|
| | | var dicFloor = Common.Room.CurrentRoom.GetFloorSortList();
|
| | | var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
|
| | |
|
| | | var listKeys = new List<string>();
|
| | | var listName = new List<string>();
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | //获取中...
|
| | | btnTemper.Text = Language.StringByID(R.MyInternationalizationString.uGetting);
|
| | | if (newRoom.Temperatrue == -1000)
|
| | | {
|
| | | //没有获取得到过温度
|
| | | btnTemper.Text = Language.StringByID(R.MyInternationalizationString.Getting);
|
| | | }
|
| | | else
|
| | | {
|
| | | btnTemper.Text = this.newRoom.Temperatrue == 0 ? "0.0℃" : this.newRoom.Temperatrue.ToString() + "℃";
|
| | | btnTemper.Text += " " + Language.StringByID(R.MyInternationalizationString.Getting);
|
| | | }
|
| | |
|
| | | HdlGatewayReceiveLogic.Current.RemoveEvent("TemperatrueDevice");
|
| | | HdlGatewayReceiveLogic.Current.AddAttributeEvent("TemperatrueDevice", ReceiveComandDiv.A设备属性上报, ((report) =>
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | //移除掉事件
|
| | | HdlGatewayReceiveLogic.Current.RemoveEvent("TemperatrueDevice");
|
| | |
|
| | | foreach (var data in report.DeviceStatusReport.AttriBute)
|
| | | {
|
| | |
| | | {
|
| | | //0℃
|
| | | btnTemper.Text = "0.0℃";
|
| | | this.newRoom.Temperatrue = 0;
|
| | | }
|
| | | else if (data.AttriButeData > 32767)
|
| | | {
|
| | |
| | | string strValue = (data.AttriButeData - 65536).ToString();
|
| | | //小数点需要一位
|
| | | strValue = strValue.Substring(0, strValue.Length - 1);
|
| | | btnTemper.Text = strValue.Insert(strValue.Length - 1, ".") + "℃";
|
| | | //记录温度
|
| | | this.newRoom.Temperatrue = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, "."));
|
| | | btnTemper.Text = this.newRoom.Temperatrue.ToString() + "℃";
|
| | | }
|
| | | else
|
| | | {
|
| | | //小数点需要一位
|
| | | string strValue = data.AttriButeData.ToString();
|
| | | strValue = strValue.Substring(0, strValue.Length - 1);
|
| | | btnTemper.Text = strValue.Insert(strValue.Length - 1, ".") + "℃";
|
| | | //记录温度
|
| | | this.newRoom.Temperatrue = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, "."));
|
| | | btnTemper.Text = this.newRoom.Temperatrue.ToString() + "℃";
|
| | | }
|
| | | });
|
| | | }
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | //获取中...
|
| | | btnHumi.Text = Language.StringByID(R.MyInternationalizationString.uGetting);
|
| | | if (newRoom.Humidity == -1000)
|
| | | {
|
| | | //没有获取得到过湿度
|
| | | btnHumi.Text = Language.StringByID(R.MyInternationalizationString.Getting);
|
| | | }
|
| | | else
|
| | | {
|
| | | btnHumi.Text = this.newRoom.Humidity == 0 ? "0.0%" : this.newRoom.Humidity.ToString() + "%";
|
| | | btnHumi.Text += " " + Language.StringByID(R.MyInternationalizationString.Getting);
|
| | | }
|
| | |
|
| | | HdlGatewayReceiveLogic.Current.RemoveEvent("HumidityDevice");
|
| | | HdlGatewayReceiveLogic.Current.AddAttributeEvent("HumidityDevice", ReceiveComandDiv.A设备属性上报, (report) =>
|
| | |
| | | {
|
| | | return;
|
| | | }
|
| | | //移除掉事件
|
| | | HdlGatewayReceiveLogic.Current.RemoveEvent("HumidityDevice");
|
| | | foreach (var data in report.DeviceStatusReport.AttriBute)
|
| | | {
|
| | | if (data.AttributeId == (int)ZigBee.Device.AttriButeId.MeasuredValue)
|
| | |
| | | {
|
| | | //0
|
| | | btnHumi.Text = "0.0%";
|
| | | this.newRoom.Humidity = 0;
|
| | | }
|
| | | else
|
| | | {
|
| | | //小数点需要一位(湿度没有负数)
|
| | | string strValue = data.AttriButeData.ToString();
|
| | | strValue = strValue.Substring(0, strValue.Length - 1);
|
| | | btnHumi.Text = strValue.Insert(strValue.Length - 1, ".") + "%";
|
| | | //记录湿度
|
| | | this.newRoom.Humidity = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, "."));
|
| | | btnHumi.Text = this.newRoom.Humidity.ToString() + "%";
|
| | | }
|
| | | });
|
| | | }
|
| | |
| | | }
|
| | | if (string.IsNullOrEmpty(this.floorKeys) == true)
|
| | | {
|
| | | if (Shared.Common.Room.Lists.Find((obj) => obj.Name == this.newRoom.Name && obj.Id != this.newRoom.Id) != null)
|
| | | var listRoom = HdlRoomLogic.Current.GetAllListRooms();
|
| | | if (listRoom.Find((obj) => obj.Name == this.newRoom.Name && obj.Id != this.newRoom.Id) != null)
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uRoomNameIsExist));
|
| | | return false;
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | var listRoom = Common.Room.CurrentRoom.GetFloorSortRoom(this.floorKeys);
|
| | | var listRoom = HdlRoomLogic.Current.GetFloorSortRoom(this.floorKeys);
|
| | | if (listRoom.Find((obj) => obj.Name == this.newRoom.Name && obj.Id != this.newRoom.Id) != null)
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.uRoomNameIsExist));
|