| | |
| | | /// </summary>
|
| | | /// <param name="dicData"></param>
|
| | | /// <param name="listView"></param>
|
| | | private void InitDeviceObjectRow(Dictionary<int, List<CommonDevice>> dicData, VerticalListControl listView)
|
| | | private void InitDeviceObjectRow(Dictionary<string, List<CommonDevice>> dicData, VerticalListControl listView)
|
| | | {
|
| | | var scrolContr = new RoomDeviceGroupMenuControl(dicData);
|
| | | this.frameDeviceTable.AddChidren(scrolContr);
|
| | |
| | | /// 获取分组后的设备
|
| | | /// </summary>
|
| | | /// <returns></returns>
|
| | | private Dictionary<int, List<CommonDevice>> GetAllGroupDevice()
|
| | | private Dictionary<string, List<CommonDevice>> GetAllGroupDevice()
|
| | | {
|
| | | //全部的设备
|
| | | var listDevice = this.GetShardListDevice();
|
| | | var dic = new Dictionary<int, List<CommonDevice>>();
|
| | | var dic = new Dictionary<string, List<CommonDevice>>();
|
| | | foreach (var device in listDevice)
|
| | | {
|
| | | var typeInfo = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device);
|
| | | if (dic.ContainsKey(typeInfo.BeloneTextId) == false)
|
| | | if (dic.ContainsKey(typeInfo.BeloneText) == false)
|
| | | {
|
| | | dic[typeInfo.BeloneTextId] = new List<CommonDevice>();
|
| | | dic[typeInfo.BeloneText] = new List<CommonDevice>();
|
| | | }
|
| | | dic[typeInfo.BeloneTextId].Add(device);
|
| | | dic[typeInfo.BeloneText].Add(device);
|
| | | }
|
| | | return dic;
|
| | | }
|
| | |
| | | string deviceFile = HdlShardLogic.Current.GetShardDeviceFileName(deviceKeys);
|
| | | if (memberShardInfo.dicAllShardKeys.ContainsKey(deviceFile) == true)
|
| | | {
|
| | | var strArry = deviceFile.Split('_');
|
| | | if (strArry.Length < 3)
|
| | | //从分享文件中序列化回来
|
| | | var deviceData = HdlShardLogic.Current.GetShardFileContent(deviceFile);
|
| | | if (deviceData == null)
|
| | | {
|
| | | continue;
|
| | | }
|
| | | //从分享文件中序列化回来
|
| | | var deviceData = HdlShardLogic.Current.GetShardFileContent(deviceFile);
|
| | | try
|
| | | {
|
| | | var device = ZigBee.Device.CommonDevice.CommonDeviceByByteString(strArry[1], System.Text.Encoding.UTF8.GetString(deviceData));
|
| | | var jobject = Newtonsoft.Json.Linq.JObject.Parse(System.Text.Encoding.UTF8.GetString(deviceData));
|
| | | if (jobject.Property("DeviceID") == null)
|
| | | {
|
| | | continue;
|
| | | }
|
| | | var device = ZigBee.Device.CommonDevice.CommonDeviceByByteString(Convert.ToInt32(jobject["DeviceID"].ToString()), System.Text.Encoding.UTF8.GetString(deviceData));
|
| | | if (device != null)
|
| | | {
|
| | | listDevice.Add(device);
|