private void vTreeChating_NodeMouseDoubleClick(object sender, VirtualTreeEventArgs e) { //保存当前聊天内容到本地 SaveChatContentToLocal(); //替换聊天对象 ToUserInfo = vTreeChating.SelectedNode.Tag as UserInfo; if (ToUserInfo == null) { return; } vTreeChating.SuspendLayout(); vTreeChating.SelectedNode.SubItems[0].Text = ""; vTreeChating.PerformLayout(); //加载本地已有聊天记录 LoadChatContent(); //获取节点用户发送过来的未读消息 List <MessageInfo> lstInfo = new List <MessageInfo>(); lstInfo = ListMessageInfo.FindAll(i => i.MessageFrom.USER_ID == ToUserInfo.USER_ID); foreach (MessageInfo item in lstInfo) { if (item.MessageAction == (int)ActionType.SendMessage) { ShowMessageText(item); } else if (item.MessageAction == (int)ActionType.SendPIc) { ShowMessagePic(item, null); } //从缓存list中移除 ListMessageInfo.Remove(item); //设置消息已读 UpdateChatLog(item); } }
private void virtualTree1_NodeMouseClick(object sender, VirtualTreeEventArgs e) { if (e.SubItem == null) { VirtualNode[] selectNodes = this.virtualTree1.GetCheckedNodes(null); this.lbl_PatientCount.Text = selectNodes.Count().ToString(); return; } if (e.SubItem.Index == 1 || e.SubItem.Index == 2) { string szImageName = e.SubItem.Tag as string; RecPaper recPaper = e.Node.Tag as RecPaper; if (string.IsNullOrEmpty(szImageName)) { return; } string szPath = szImageName; GlobalMethods.UI.SetCursor(this.virtualTree1, Cursors.WaitCursor); szPath = RecPaperAccess.Instance.GetImageLocalFile(szImageName); if (!File.Exists(szPath)) { short shRet = RecPaperAccess.Instance.GetImageFromFtp(recPaper, szImageName, ref szPath); if (shRet != SystemData.ReturnValue.OK) { MessageBoxEx.Show("预览图片失败"); return; } } GlobalMethods.UI.SetCursor(this.virtualTree1, Cursors.Default); Heren.MedQC.Utilities.Dialogs.ImageViewerDialog diglog = new Utilities.Dialogs.ImageViewerDialog(); diglog.ImagePath = szPath; diglog.ShowDialog(); } }
private void virtualTree1_NodeMouseClick(object sender, VirtualTreeEventArgs e) { this.m_SelectedNode = e.Node; EMRDBLib.PatVisitInfo patVisitLog = e.Node.Tag as EMRDBLib.PatVisitInfo; if (patVisitLog == null) { return; } if (SystemParam.Instance.PatVisitInfo != patVisitLog) { SystemParam.Instance.PatVisitInfo = patVisitLog; this.MainForm.OnPatientInfoChanged(EventArgs.Empty); } }
private void virtualTree1_NodeMouseClick(object sender, VirtualTreeEventArgs e) { this.m_SelectedNode = e.Node; //显示质检问题 if (this.MainForm == null || this.MainForm.IsDisposed) { return; } if (e.Node == null || e.Type == HitTestType.None) { return; } MedDocInfo docInfo = e.Node.Data as MedDocInfo; this.MainForm.ShowQuestionListByDocInfo(docInfo); }
private void vTreeAlluser_NodeMouseDoubleClick(object sender, VirtualTreeEventArgs e) { if (CurrentUser == null) { return; } UserInfo userInfo = vTreeAlluser.SelectedNode.Tag as UserInfo; if (userInfo == null || userInfo.USER_ID == CurrentUser.USER_ID) { return; } //保存当前聊天内容到本地 SaveChatContentToLocal(); ToUserInfo = userInfo; //加载本地已有聊天记录 LoadChatContent(); if (!htChating.ContainsKey(ToUserInfo.USER_ID)) { return; } //获取节点用户发送过来的未读消息 List <MessageInfo> lstInfo = new List <MessageInfo>(); lstInfo = ListMessageInfo.FindAll(i => i.MessageFrom.USER_ID == ToUserInfo.USER_ID); foreach (MessageInfo item in lstInfo) { if (item.MessageAction == (int)ActionType.SendMessage) { ShowMessageText(item); } else if (item.MessageAction == (int)ActionType.SendPIc) { ShowMessagePic(item, null); } //从缓存list中移除 ListMessageInfo.Remove(item); //设置消息已读 UpdateChatLog(item); } }
private void virtualTree1_NodeMouseDoubleClick(object sender, VirtualTreeEventArgs e) { if (this.MainForm == null || this.MainForm.IsDisposed) { return; } if (e.Node == null || e.Type == HitTestType.None) { return; } GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); this.ShowStatusMessage("正在下载并打开病历,请稍候..."); MedDocInfo docInfo = e.Node.Data as MedDocInfo; DateTime dtCheckTime = SysTimeHelper.Instance.Now; if (docInfo != null) { GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); this.Update(); this.MainForm.OpenDocument(docInfo); this.SaveReadLogInfo(docInfo, dtCheckTime, e.Node); this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); return; } //打开合并病历 if (COMBIN_NODE_TAG.Equals(e.Node.Data)) { int count = e.Node.Nodes.Count; if (count <= 0) { return; } GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); MedDocList lstDocInfos = new MedDocList(); for (int index = 0; index < count; index++) { docInfo = e.Node.Nodes[index].Data as MedDocInfo; if (docInfo == null) { continue; } if (index > 0) { dtCheckTime = dtCheckTime.AddSeconds(1); } this.SaveReadLogInfo(docInfo, dtCheckTime, e.Node.Nodes[index]); lstDocInfos.Add(docInfo); } this.Update(); this.MainForm.OpenDocument(lstDocInfos); this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); } else { if (DOCTOR_NODE_TAG.Equals(e.Node.Data)) { this.OpenAllDocList(e.Node); } else if (NURSE_NODE_TAG.Equals(e.Node.Data)) { this.OpenAllDocList(e.Node); } this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); } }
private void virtualTree1_NodeMouseDoubleClick(object sender, VirtualTreeEventArgs e) { if (this.MainForm == null || this.MainForm.IsDisposed) { return; } if (e.Node == null || e.Type == HitTestType.None) { return; } GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); this.ShowStatusMessage("正在下载并打开病历,请稍候..."); DateTime dtCheckTime = SysTimeHelper.Instance.Now; MedDocInfo docInfo = e.Node.Data as MedDocInfo; //如果是和仁编辑器,暂不支持合并打开 if ((SystemParam.Instance.LocalConfigOption.DefaultEditor == "2") && docInfo == null) { return; } if (docInfo != null) { GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); this.Update(); this.MainForm.OpenDocument(docInfo); //提示已经被质控过,确认后才更新质控阅读记录 //提示文档被质控过的信息,如果最新质控记录为当前用户,则不提示,如果为其他用户,则提示。 MedicalQcLog qcActionLog = null; short shRet = MedicalQcLogAccess.Instance.GetQCLogInfo(docInfo.DOC_SETID, 1, ref qcActionLog); if (shRet == SystemData.ReturnValue.OK) { if (qcActionLog.CHECKED_ID != SystemParam.Instance.UserInfo.USER_ID) { string msg = string.Format("当前病历已经被{0}于{1}质控阅读过!\t\n如需重新质控,请单击【确定】按钮" , qcActionLog.CHECKED_BY , qcActionLog.CHECK_DATE.ToString("yyyy-MM-dd HH:mm:ss")); if (MessageBoxEx.ShowConfirm(msg) != DialogResult.OK) { this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); return; } } } this.SaveReadLogInfo(docInfo, dtCheckTime, e.Node); } this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); return; //打开合并病历 if (COMBIN_NODE_TAG.Equals(e.Node.Data)) { int count = e.Node.Nodes.Count; if (count <= 0) { return; } GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); MedDocList lstDocInfos = new MedDocList(); for (int index = 0; index < count; index++) { docInfo = e.Node.Nodes[index].Data as MedDocInfo; if (docInfo == null) { continue; } if (index > 0) { dtCheckTime = dtCheckTime.AddSeconds(1); } this.SaveReadLogInfo(docInfo, dtCheckTime, e.Node.Nodes[index]); lstDocInfos.Add(docInfo); } this.Update(); this.MainForm.OpenDocument(lstDocInfos); this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); } else { if (DOCTOR_NODE_TAG.Equals(e.Node.Data)) { this.OpenAllDocList(this.m_DoctorNode); } else if (NURSE_NODE_TAG.Equals(e.Node.Data)) { this.OpenAllDocList(this.m_NurseNode); } this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); } }