private void miModOp_Click(object sender, RoutedEventArgs e) { if (null == lbOpRecord.SelectedItem) { BLPublic.Dialogs.Alert("请选择要修改的记录."); lbOpRecord.Focus(); return; } DataRowView dv = (DataRowView)lbOpRecord.SelectedItem; string typeCode = dv["OpType"].ToString(); if ("note".Equals(typeCode)) { WinInput input = new WinInput(); input.Owner = AppConst.winMain; input.inputLong("笔记", "修改笔记", (_txt) => { if (AppConst.db.ExecSQL(string.Format(SQL.MOD_PM_NOTE, BLPublic.DBOperate.ACS(_txt), dv["OpID"].ToString()))) { dv["OpContent"] = _txt; lbOpRecord.Items.Refresh(); return(true); } else { BLPublic.Dialogs.Error("保存笔记失败:" + AppConst.db.Error); } return(false); }, dv["OpContent"].ToString()); input.ShowDialog(); input = null; } else if ("custody".Equals(typeCode)) { WinCustodyEdit.TPNCustodyIntervene(Convert.ToInt32(dv["OpID"].ToString()), false, (id, objStr, desc) => { dv["OpContent"] = objStr + "\r\n" + desc; lbOpRecord.Items.Refresh(); }); } else if ("intervene".Equals(typeCode)) { WinCustodyEdit.TPNCustodyIntervene(Convert.ToInt32(dv["OpID"].ToString()), true, (id, objStr, desc) => { dv["OpContent"] = objStr + "\r\n" + desc; lbOpRecord.Items.Refresh(); }); } }
/// <summary> /// TPN参数监护和敢于 /// </summary> private void TPNCustodyIntervene(bool _isIntervene) { if (0 == lvTPNItems.SelectedItems.Count) { BLPublic.Dialogs.Alert("请选择要监护的项目"); lvTPNItems.Focus(); return; } if (!WinCustodyEdit.chkWin(_isIntervene)) { return; } if ((1 == lvTPNItems.SelectedItems.Count) && (0 >= ((recipemonitorlist.TPNItemModel)lvTPNItems.SelectedItems[0]).ID)) { BLPublic.Dialogs.Alert("请选择TPN项目"); lvTPNItems.Focus(); return; } recipemonitorlist.TPNItemModel tpn = null; if (null == WinCustodyEdit.OnSetObject) { if (!WinCustodyEdit.TPNCustodyIntervene(this.patient.PatientCode, _isIntervene, (id, objStr, desc) => { if (_isIntervene) { this.addIntervene(id, objStr, desc); } else { this.addCustody(id, objStr, desc); } lbOpRecord.Items.Refresh(); })) { return; } } foreach (object o in lvTPNItems.SelectedItems) { tpn = (recipemonitorlist.TPNItemModel)o; if (0 < tpn.ID) { WinCustodyEdit.OnSetObject(WinCustodyEdit.OBJTYP_TPN, tpn.Code, tpn.Name, tpn.Value + tpn.Unit, Convert.ToDateTime(((OrdersModel)lbOrders.SelectedItem).OrderTime)); } } }
private void miDrugIntervene_Click(object sender, RoutedEventArgs e) { if (null == lbOrders.SelectedItem) { BLPublic.Dialogs.Alert("请选择医嘱."); lbOrders.Focus(); return; } //选择药品 List <object> list = new List <object>(); foreach (OrdersDrugModel drug in ((OrdersModel)lbOrders.SelectedItem).Drugs) { list.Add(drug); } OrdersDrugModel selDrug = null; WinList winLst = new WinList(); winLst.Owner = AppConst.winMain; winLst.Width = 300; winLst.init(list); if (true == winLst.ShowDialog()) { selDrug = (OrdersDrugModel)winLst.SelObject; } if (null == selDrug) { return; } if (null == WinCustodyEdit.OnSetObject) { if (!WinCustodyEdit.TPNCustodyIntervene(this.patient.PatientCode, true, (id, objStr, desc) => { this.addIntervene(id, objStr, desc); lbOpRecord.Items.Refresh(); })) { return; } } WinCustodyEdit.OnSetObject(WinInterveneEdit.OBJTYP_DRUG, selDrug.Code, selDrug.Name, selDrug.Dosage + selDrug.DosageUnit, Convert.ToDateTime(((OrdersModel)lbOrders.SelectedItem).OrderTime)); }
/// <summary> /// 显示监护/干预界面 /// </summary> /// <param name="_pCode"></param> /// <param name="_isIntervene"></param> /// <param name="_onOK"></param> /// <returns></returns> private static bool TPNCustodyIntervene(int _editID, string _pCode, bool _isIntervene, Action <int, string, string> _onOK) { if (!chkWin(_isIntervene)) { return(false); } ICustodyEdit win = null; if (_isIntervene) { win = new WinInterveneEdit(); } else { win = new WinCustodyEdit(); } ((Window)win).Owner = AppConst.winMain; if (0 < _editID) { win.EditID = _editID; } else { win.init(_pCode, null); } win.OnEnd = (isOK) => { WinCustodyEdit.OnSetObject = null; if (isOK && (null != _onOK)) { _onOK(win.EditID, win.getObjectStr(), win.getDesc()); } }; ((Window)win).Topmost = true; ((Window)win).Show(); WinCustodyEdit.IsIntervene = _isIntervene; WinCustodyEdit.OnSetObject = (type, objcode, objname, objvalue, valtime) => { win.setObject(type, objcode, objname, objvalue, valtime); }; return(true); }
/// <summary> /// 加载监护 /// </summary> private void loadCustody() { string sql = ""; if (true == cbAllPatient.IsChecked) { sql = string.Format(SQL.SEL_CUSTODY_BYDATE, ((DateTime)dpSDate.SelectedDate).ToString("yyyy-MM-dd"), ((DateTime)dpEDate.SelectedDate).AddDays(1).ToString("yyyy-MM-dd")); } else if (null == this.patient) { return; } else { sql = string.Format(SQL.SEL_CUSTODY_BYPNT2, this.patient.PatientCode); } DataTable tbl = null; if (AppConst.db.GetRecordSet(sql, ref tbl)) { BLPublic.BLDataReader bldr = new BLPublic.BLDataReader(tbl.CreateDataReader()); string content = ""; while (bldr.next()) { content = WinCustodyEdit.getObjectStr(bldr.getInt("CustodyID")) + ". " + bldr.getString("CustodyDesc"); if (!bldr.isNull("FinishTime")) { content += ". (已结束)"; } this.tblOpRecord.Rows.Add(new object[] { "custody", bldr.getInt("CustodyID"), bldr.getString("DeptName"), bldr.getString("BedNo"), bldr.getString("PatientName"), bldr.getDateTime("CustodyTime"), content, ComClass.getEmpName(bldr.getString("Custodyer")) }); } bldr.close(); tbl.Clear(); } else { BLPublic.Dialogs.Error("加载监护失败:" + AppConst.db.Error); } }
/// <summary> /// 加载监护记录 /// </summary> private void loadCustody() { DataTable tbl = null; if (AppConst.db.GetRecordSet(string.Format(SQL.SEL_CUSTODY_BYPNT, this.patient.PatientCode), ref tbl)) { BLPublic.BLDataReader bldr = new BLPublic.BLDataReader(tbl.CreateDataReader()); while (bldr.next()) { addCustody(bldr.getInt("CustodyID"), WinCustodyEdit.getObjectStr(bldr.getInt("CustodyID"), "\r\n"), bldr.getString("CustodyDesc"), bldr.getDateTime("CustodyTime"), bldr.getString("Custodyer")); } bldr.close(); tbl.Clear(); } else { BLPublic.Dialogs.Error("加载监护记录失败:" + AppConst.db.Error); } }
private void Custody_Click(object sender, RoutedEventArgs e) { if (null == patient) { BLPublic.Dialogs.Alert("请先选择病人."); return; } WinCustodyEdit win = new WinCustodyEdit(); win.Owner = AppConst.winMain; win.init(patient.PatientCode, (isOK) => { if (isOK) { addCustody(win.EditID, win.getObjectStr(), win.getDesc()); } }); win.ShowDialog(); }
private void miCustody_Click(object sender, RoutedEventArgs e) { if (0 == lvChkResult.SelectedItems.Count) { BLPublic.Dialogs.Alert("请选择要监护的项目"); lvChkResult.Focus(); return; } if (!WinCustodyEdit.chkWin(false)) { return; } CheckResult cr = null; if (null == WinCustodyEdit.OnSetObject) { if (!WinCustodyEdit.TPNCustodyIntervene(this.PatientCode, false, (id, objStr, desc) => { if (null != this.onNewCustody) { this.onNewCustody(id, objStr, desc); } })) { return; } } foreach (object o in lvChkResult.SelectedItems) { cr = (CheckResult)o; WinCustodyEdit.OnSetObject(WinCustodyEdit.OBJTYP_LIS, cr.ItemCode, cr.ItemName, cr.Value + cr.Unit, this.chkTime); } }
private void btnMod_Click(object sender, RoutedEventArgs e) { if (null == lvRecord.SelectedItem) { BLPublic.Dialogs.Alert("请选择要修改的记录."); lvRecord.Focus(); return; } DataRowView dv = (DataRowView)lvRecord.SelectedItem; string typeCode = dv["TypeCode"].ToString(); if ("note".Equals(typeCode)) { WinInput input = new WinInput(); input.Owner = AppConst.winMain; input.inputLong("笔记", "修改笔记", (_txt) => { if (AppConst.db.ExecSQL(string.Format(SQL.MOD_PM_NOTE, BLPublic.DBOperate.ACS(_txt), dv["ID"].ToString()))) { dv["Content"] = _txt; lvRecord.Items.Refresh(); return(true); } else { BLPublic.Dialogs.Error("保存笔记失败:" + AppConst.db.Error); } return(false); }, dv["Content"].ToString()); input.ShowDialog(); input = null; } else if ("custody".Equals(typeCode)) { if (dv["Content"].ToString().Contains("已完成")) { BLPublic.Dialogs.Alert("已完成监护,不可修改."); return; } WinCustodyEdit win = new WinCustodyEdit(); win.Owner = AppConst.winMain; win.EditID = Convert.ToInt32(dv["ID"].ToString()); win.OnEnd = (isOK) => { if (isOK) { dv["Content"] = win.getObjectStr() + "." + win.txtCustodyDesc.Text.Trim(); lvRecord.Items.Refresh(); } }; win.Topmost = true; win.Show(); } else if ("intervene".Equals(typeCode)) { WinInterveneEdit win = new WinInterveneEdit(); win.Owner = AppConst.winMain; win.EditID = Convert.ToInt32(dv["ID"].ToString()); win.OnEnd = (isOK) => { if (isOK) { dv["Content"] = win.getObjectStr() + "." + win.txtInterveneDesc.Text.Trim(); lvRecord.Items.Refresh(); } }; win.Topmost = true; win.Show(); } }