public bool Add(LightInfoLightGroupInfo l) { if (l != null) { return(new BLL.tLightInfoLightGroupInfoes().Add(l.T)); } return(false); }
public void MapRefreshLightInfo(LightInfo light, LightInfoLightGroupInfo newLightInfoGroupInfo, LightInfoLightGroupInfo backLightInfoGroupInfo) { // 更新地图,如果存在 GMapMarker g; if (appState.MapDatas.DicLightInfoMarker.TryGetValue(light.GUID, out g)) { g.Position = new PointLatLng(light.Lat, light.Lng); //((CustomMarkerLightInfo)g.Shape).Title = light.Name; } // 更新左侧树形 if (newLightInfoGroupInfo != backLightInfoGroupInfo) { // 移除旧的分组 TreeHostInfo thi = null; TreeLightGroupInfo tlgi = null; TreeLightInfo tli = null; foreach (TreeGroupInfo t in appState.TreeDatas.TreeGroupInfos) { thi = t.TreeHostInfos.FirstOrDefault(a => a.HostInfo.GUID == light.HostGUID); if (thi != null) { break; } } if (backLightInfoGroupInfo != null) { if (thi != null) { tlgi = thi.TreeLightGroupInfos.FirstOrDefault(a => a.LightGroupInfo.GUID != "" && a.LightGroupInfo.GUID.Trim() == backLightInfoGroupInfo.LightGroupInfoGUID.Trim()); if (tlgi != null) { tli = tlgi.TreeLightInfos.FirstOrDefault(a => a.LightInfo.GUID.Trim() == light.GUID.Trim()); if (tli != null) { tlgi.TreeLightInfos.Remove(tli); } } } } // 增加新的分组 if (thi != null) { tlgi = thi.TreeLightGroupInfos.FirstOrDefault(a => a.LightGroupInfo.GUID.Trim() == newLightInfoGroupInfo.LightGroupInfoGUID.Trim()); if (tlgi != null) { tlgi.TreeLightInfos.Add(new TreeLightInfo() { LightInfo = light }); } } } }
public LightInfoEditDlg(MainWindow main, string title, LightInfo li) : this() { this.Title = title; mainWindow = main; lightInfo = li; // 初始化基本数据 txtLightID.Text = lightInfo.ID; txtLightLat.Text = lightInfo.Lat.ToString(); txtLightLng.Text = lightInfo.Lng.ToString(); txtLightName.Text = lightInfo.Name; txtLightPhyID.Text = lightInfo.PhyID; txtLightRemark.Text = lightInfo.Remark; txtLightVersion.Text = lightInfo.Version; foreach (LightTypeItem a in cbLightType.Items) { if (a.Value == ((LightType)lightInfo.Type)) { cbLightType.SelectedItem = a; } } cbLightEnable.IsChecked = lightInfo.Enable == 1 ? true : false; // 加载与该分组相关的分组信息 List <LightGroupInfo> lgi = new LightGroupInfoBLL().GetAllLightGroupInfoByHostGUID(lightInfo.HostGUID); combLightGroupInfo.ItemsSource = lgi; combLightGroupInfo.DisplayMemberPath = "Name"; // 加载该单灯所属的分组 if (lgi != null) { List <LightInfoLightGroupInfo> list = new LightInfoLightGroupInfoBLL().GetByLightGUID(lightInfo.GUID.Trim()); if (list != null && list.Count > 0) { lightInfoLightGroupInfo = list[0]; lightInfoLightGroupInfoBack = (LightInfoLightGroupInfo)lightInfoLightGroupInfo.Clone(); combLightGroupInfo.SelectedItem = lgi.FirstOrDefault(t => t.GUID.Trim() == lightInfoLightGroupInfo.LightGroupInfoGUID); } } }
void OkButton_Click(object sender, RoutedEventArgs e) { try { lightInfo.ID = txtLightID.Text.Trim(); lightInfo.Lat = double.Parse(txtLightLat.Text.Trim()); lightInfo.Lng = double.Parse(txtLightLng.Text.Trim()); lightInfo.Name = txtLightName.Text.Trim(); lightInfo.PhyID = txtLightPhyID.Text.Trim(); lightInfo.Remark = txtLightRemark.Text.Trim(); lightInfo.Enable = cbLightEnable.IsChecked == true ? 1 : 0; lightInfo.Version = txtLightVersion.Text.Trim(); lightInfo.Type = (int)(((LightTypeItem)cbLightType.SelectedItem).Value); } catch { ModernDialog.ShowMessage("经纬度数据格式错误!", "提示", MessageBoxButton.OK); return; } // 存入组的关联 if (combLightGroupInfo.SelectedItem != null) { LightInfoLightGroupInfoBLL ltlgBLL = new LightInfoLightGroupInfoBLL(); if (lightInfoLightGroupInfo != null) { lightInfoLightGroupInfo.LightGroupInfoGUID = (combLightGroupInfo.SelectedItem as LightGroupInfo).GUID; if (!ltlgBLL.Update(lightInfoLightGroupInfo)) { ModernDialog.ShowMessage("更新数据库失败!", "提示", MessageBoxButton.OK); return; } } else { lightInfoLightGroupInfo = new LightInfoLightGroupInfo(); lightInfoLightGroupInfo.GUID = Guid.NewGuid().ToString(); lightInfoLightGroupInfo.LightGroupInfoGUID = (combLightGroupInfo.SelectedItem as LightGroupInfo).GUID; lightInfoLightGroupInfo.LightInfoGUID = lightInfo.GUID; lightInfoLightGroupInfo.CreateTime = DateTime.Now; lightInfoLightGroupInfo.UpdateTime = lightInfoLightGroupInfo.CreateTime; if (!ltlgBLL.Add(lightInfoLightGroupInfo)) { ModernDialog.ShowMessage("增加数据库失败!", "提示", MessageBoxButton.OK); return; } } } // 更新单灯 LightInfoBLL liBLL = new LightInfoBLL(); if (liBLL.Update(lightInfo)) { Close(); mainWindow.MapRefreshLightInfo(lightInfo, lightInfoLightGroupInfo, lightInfoLightGroupInfoBack); } else { ModernDialog.ShowMessage("更新数据库失败!", "提示", MessageBoxButton.OK); return; } }
void OkButton_Click(object sender, RoutedEventArgs e) { int startID, endID, tempID; double startLat, endLat, startLng, endLng, tempLat, tempLng; try { startID = int.Parse(txtStartID.Text.Trim()); endID = int.Parse(txtEndID.Text.Trim()); startLat = double.Parse(txtStartLightLat.Text.Trim()); startLng = double.Parse(txtStartLightLng.Text.Trim()); endLat = double.Parse(txtEndLightLat.Text.Trim()); endLng = double.Parse(txtEndLightLng.Text.Trim()); tempID = endID - startID + 1; tempLat = (endLat - startLat) / tempID; tempLng = (endLng - startLng) / tempID; } catch { ModernDialog.ShowMessage("起始结束地址错误!", "提示", MessageBoxButton.OK); return; } if (startID > endID) { ModernDialog.ShowMessage("起始地址不能大于结束地址!", "提示", MessageBoxButton.OK); return; } LightInfo lightInfo; LightInfoBLL liBLL = new LightInfoBLL(); LightInfoLightGroupInfoBLL lilgiBLL = new LightInfoLightGroupInfoBLL(); LightInfoLightGroupInfo lightInfoLightGroupInfo = null; if (combLightGroupInfo.SelectedItem != null) { lightInfoLightGroupInfo = new LightInfoLightGroupInfo(); lightInfoLightGroupInfo.LightGroupInfoGUID = ((LightGroupInfo)combLightGroupInfo.SelectedItem).GUID; treeLightGroupInfoTag = treeHostInfo.TreeLightGroupInfos.FirstOrDefault(a => a.LightGroupInfo.GUID == lightInfoLightGroupInfo.LightGroupInfoGUID); } DateTime dtNow = DateTime.Now; for (int i = 0; i < tempID; i++) { try { // 增加节点 lightInfo = new LightInfo(hostInfo.Addr); lightInfo.HostGUID = hostInfo.GUID; lightInfo.GUID = Guid.NewGuid().ToString(); lightInfo.ID = (startID + i).ToString("D03"); lightInfo.Lat = startLat + tempLat * i; lightInfo.Lng = startLng + tempLng * i; lightInfo.Name = lightInfo.ID; lightInfo.PhyID = lightInfo.ID; lightInfo.Version = txtLightVersion.Text.Trim(); lightInfo.Type = (int)(((Admin.Pages.Device.LightInfoEditDlg.LightTypeItem)cbLightType.SelectedItem).Value); // 1 太阳能 lightInfo.Enable = 1; // 使能 lightInfo.Remark = ""; lightInfo.CreateTime = dtNow; lightInfo.UpdateTime = dtNow; liBLL.Add(lightInfo); if (mainWindow != null) { mainWindow.UIAddLightInfo(lightInfo, treeLightGroupInfo); } // 增加节点关系 if (lightInfoLightGroupInfo != null) { lightInfoLightGroupInfo.GUID = Guid.NewGuid().ToString(); lightInfoLightGroupInfo.CreateTime = dtNow; lightInfoLightGroupInfo.UpdateTime = dtNow; lightInfoLightGroupInfo.LightInfoGUID = lightInfo.GUID; lilgiBLL.Add(lightInfoLightGroupInfo); if (mainWindow != null && treeLightGroupInfoTag != null) { mainWindow.UIAddLightInfoLightGroupInfo(lightInfo, treeLightGroupInfoTag); } } } catch { } } Close(); }