private void tlBid_FocusedNodeChanged(object sender, FocusedNodeChangedEventArgs e) { ProjectBid focusedNode = tlBid.GetDataRecordByNode(tlBid.FocusedNode) as ProjectBid; if (focusedNode != null) { switch (Type) { case 1: { InitContractBoqConttrol(focusedNode.ProjectNo, focusedNode.BidName); break; } case 2: { InitWBSConttrol(focusedNode.ProjectNo, focusedNode.BidName); break; } case 3: { InitPMForm(focusedNode.ProjectNo, focusedNode.BidName); break; } case 4: { InitMeteringRptMng(focusedNode.ProjectNo, focusedNode.BidName); break; } } } }
private void gvPrjDeptMngLeft_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { if (e.Clicks > 1) { if (gvPrjDeptMngLeft.GetRow(e.RowHandle) != null) { CacheGpuser clickUser = gvPrjDeptMngLeft.GetRow(e.RowHandle) as CacheGpuser; if (clickUser != null) { if (LstExitManager.Exists(m => m.LoginName == clickUser.LoginName)) { XtraMessageBox.Show("局管理员中已存在该用户", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } else { if (!LstManager.Exists(m => m.LoginName == clickUser.LoginName)) { Manager NewManager = new Manager(); NewManager.LoginName = clickUser.LoginName; NewManager.UserName = clickUser.UserName; NewManager.UserType = 3; ProjectBid bidInfo = AppConfig.LstBid.Find(m => m.BidNo == AppConfig.GlBidRootNo); NewManager.OrgNo = bidInfo.BidNo; NewManager.OrgName = bidInfo.BidName; LstManager.Add(NewManager); gcPrjDeptMngRight.DataSource = LstManager; gcPrjDeptMngRight.RefreshDataSource(); } } } } } }
private void BarSave_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (UserSelector.EditValue == null || String.IsNullOrEmpty(UserSelector.EditValue.ToString())) { XtraMessageBox.Show("请选择一个用户"); return; } DoWork("保存中,请稍候...", "保存数据", () => { string loginName = UserSelector.EditValue.ToString(); List <TreeListNode> lstCheckedNodes = tlBid.GetAllCheckedNodes(); //所有选中的节点 List <ProjectBid> lstCheckedBids = new List <ProjectBid>(); //所有选中的节点的标段信息 List <Manager> lstAddedMng = new List <Manager>(); //需要新增的用户 List <Manager> lstDelMng = new List <Manager>(); //需要删除的用户 lstCheckedNodes.ForEach(m => //遍历所选中的标段找需要新增的信息 { if (!m.HasChildren) { ProjectBid bidInfo = tlBid.GetDataRecordByNode(m) as ProjectBid; if (bidInfo != null) { lstCheckedBids.Add(bidInfo); if (LstExitManager.FindIndex(n => n.LoginName == loginName && n.OrgNo == bidInfo.BidNo && n.UserType == 2) == -1) //选中的标段监理管理员不存在该用户 { Manager newManager = new Manager(); newManager.LoginName = loginName; newManager.UserName = UserSelector.Text; newManager.UserType = 2; newManager.OrgNo = bidInfo.BidNo; newManager.OrgName = bidInfo.BidName; lstAddedMng.Add(newManager); } } } }); LstExitManager.ForEach(m => //遍历该用户正在管理的标段找需要删除的信息 { if (m.LoginName == loginName && m.UserType == 2) { if (lstCheckedBids.FindIndex(n => n.BidNo == m.OrgNo) == -1) //如果该用户该标段未被选中,则删除该标段信息 { lstDelMng.Add(m); } } }); client.Save(lstAddedMng, null, lstDelMng, LoginInfor.LoginName); }, (ex) => { if (ex == null) { if (mainHandle != null) { mainHandle.LoadGrid(); } XtraMessageBox.Show("保存成功"); this.Close(); } }); }