/// <summary> /// 窗口关闭之后的操作 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void RegionalManagement_FormClosed(object sender, FormClosedEventArgs e) { m_ActionForm = null; //复位定位的颜色 ReSetColor(); }
/// <summary> /// 点击确定按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OkButton_Click(object sender, EventArgs e) { DialogResult = DialogResult.OK; try { if (string.IsNullOrEmpty(FidText.Text)) { MessageBox.Show("FID不能为空!!!"); return; } if (string.IsNullOrEmpty(NameText.Text.Trim())) { MessageBox.Show("名称不能为空!!!"); return; } var sbmc = NameText.Text.Trim(); var com = DBManager.Instance.GetEntity <Common_n>(o => o.G3E_FID == long.Parse(FidText.Text)); if (com == null) { return; } if (m_ft == formType.regionAdd)//添加操作 { //查看是否重复添加 var kxNode = RegionalManagement.GetSeleteKX(); if (kxNode == null) { PublicMethod.Instance.ShowMessage("没有选择馈线,请再重试一遍\n"); //显示支线管理窗体 Autodesk.AutoCAD.ApplicationServices.Application.ShowModalDialog(RegionalManagement.GetCurActionForm()); return; } if (kxNode.Nodes.Cast <TreeNode>().Any(zx => zx.Name == FidText.Text)) { PublicMethod.Instance.ShowMessage("支线已经存在\n"); return; } //获取属性 if (String.IsNullOrEmpty(FidText.Text)) { throw new Exception(); } //查看是否删除状态 Gnwz_tz_zx newEnt = null; var tmp = DBEntityFinder.Instance.GetGnwzTzZx(long.Parse(FidText.Text)); if (tmp != null && tmp.EntityState == EntityState.Delete)//删除状态,恢复数据 { tmp.EntityState = EntityState.Update; DBManager.Instance.Update(tmp); } else//否则 { //插入支线表 newEnt = new Gnwz_tz_zx { ID = CYZCommonFunc.getid(), G3E_FID = com.G3E_FID, IN_TIME = DateTime.Now, EntityState = EntityState.Insert }; } if (!com.Equals(sbmc)) { //更新支线名称 com.SBMC = NameText.Text; com.EntityState = EntityState.Update; DBManager.Instance.Update(com); } //把支线添加入TreeView中 kxNode.Nodes.Add(newEnt.G3E_FID.ToString(), sbmc); DBManager.Instance.Insert(newEnt); //如果是原始的电缆或导线变成了支线也要更新公共表的备注字段 var propertyName = GenerateHelper.QueryZXField(com.G3E_FNO); if (!string.IsNullOrEmpty(propertyName)) { if (com.EntityState == EntityState.None) { com.EntityState = EntityState.Update; } com.SetAttribute(propertyName, com.G3E_FID.ToString()); DBManager.Instance.Update(com); } } else//编辑操作 { //更新支线名称 com.SBMC = NameText.Text; if (com.EntityState != EntityState.Insert) //如果之前不是insert { com.EntityState = EntityState.Update; //修改成update } DBManager.Instance.Update(com); //更新TreeView中支线名称 var kxNode = RegionalManagement.GetSeleteKX(); if (kxNode != null) { kxNode.Nodes.Find(FidText.Text, true)[0].Text = sbmc; } else { PublicMethod.Instance.ShowMessage("没有正确选择支线"); } } } catch (Exception exception) { PublicMethod.Instance.ShowMessage("操作过程中出现错误" + exception); } finally { this.Close(); } }