/// <summary> /// 取出数据封装到要存到数据库的VO对象 /// </summary> /// <param name="p_strUserOp">用户操作标志:增加主结点,子结点,修改</param> /// <param name="objTD_VO">VO</param> /// public void m_mthGetData(out com.digitalwave.iCare.ValueObject.clsHISMedType_VO objTD_VO, string p_strUserOp) { objTD_VO = new clsHISMedType_VO(); switch (p_strUserOp) { case "AddTop": break; case "AddSub": TreeNode node = this.m_objViewer.m_lbeType.Tag as TreeNode; com.digitalwave.iCare.ValueObject.clsHISMedType_VO objMed_VO = node.Tag as com.digitalwave.iCare.ValueObject.clsHISMedType_VO; objTD_VO.m_strPARENTID_CHR = objMed_VO.m_strPHARMAID_CHR; //取得父结点的ID break; case "Save": TreeNode nodeSave = this.m_objViewer.m_lbeType.Tag as TreeNode; com.digitalwave.iCare.ValueObject.clsHISMedType_VO objMedSave_VO = nodeSave.Tag as com.digitalwave.iCare.ValueObject.clsHISMedType_VO; objTD_VO.m_strPARENTID_CHR = objMedSave_VO.m_strPARENTID_CHR; //取得父结点的ID objTD_VO.m_strPHARMAID_CHR = objMedSave_VO.m_strPHARMAID_CHR; //取得要修改的结点的ID break; default: break; } objTD_VO.m_strPHARMANAME_VCHR = this.m_objViewer.m_txtMedName.Text.Trim(); objTD_VO.m_strPYCODE_VCHR = this.m_objViewer.m_txtMedPy.Text.Trim(); objTD_VO.m_strWBCODE_VCHR = this.m_objViewer.m_txtMedWb.Text.Trim(); objTD_VO.m_strASSISTCODE_VCHR = this.m_objViewer.m_txtMedZhuJi.Text.Trim(); }
/// <summary> /// 初始化一个树的结点:递归方法 /// </summary> private void InitTree(TreeNodeCollection Nds, DataTable p_dtb, string parentId) { DataView dv = new DataView(); TreeNode tmpNd; dv.Table = p_dtb; dv.RowFilter = "PARENTID_CHR='" + parentId + "'"; foreach (DataRowView drv in dv) { tmpNd = new TreeNode(); string ID = drv["PHARMAID_CHR"].ToString(); tmpNd.Text = drv["PHARMANAME_VCHR"].ToString(); //one Row转化为一个VO存入结点的tag clsHISMedType_VO objMedTypeVo = new clsHISMedType_VO(); objMedTypeVo.m_strPHARMAID_CHR = drv["PHARMAID_CHR"].ToString(); objMedTypeVo.m_strPHARMANAME_VCHR = drv["PHARMANAME_VCHR"].ToString(); objMedTypeVo.m_strASSISTCODE_VCHR = drv["ASSISTCODE_VCHR"].ToString(); objMedTypeVo.m_strPYCODE_VCHR = drv["PYCODE_VCHR"].ToString(); objMedTypeVo.m_strWBCODE_VCHR = drv["WBCODE_VCHR"].ToString(); objMedTypeVo.m_strPARENTID_CHR = drv["PARENTID_CHR"].ToString(); tmpNd.Tag = objMedTypeVo; //存入结束 Nds.Add(tmpNd); InitTree(tmpNd.Nodes, p_dtb, ID); } }
public long m_lngDelete(System.Security.Principal.IPrincipal p_objPrincipal, clsHISMedType_VO p_objRecord) { long lngRes = 0; clsPrivilegeHandleService objPrivilege = new clsPrivilegeHandleService(); lngRes = objPrivilege.m_lngCheckCallPrivilege(p_objPrincipal, "com.digitalwave.iCare.middletier.HIS.clsHISMedTypeManageSvc", "m_lngDelete"); if (lngRes < 0) { return(-1); } string strSQL = "DELETE FROM T_BSE_PHARMATYPE WHERE PHARMAID_CHR ='" + p_objRecord.m_strPHARMAID_CHR.Trim() + "'"; try { com.digitalwave.iCare.middletier.HRPService.clsHRPTableService objHRPSvc = new clsHRPTableService(); lngRes = objHRPSvc.DoExcute(strSQL); } catch (Exception objEx) { string strTmp = objEx.Message; com.digitalwave.Utility.clsLogText objLogger = new clsLogText(); bool blnRes = objLogger.LogError(objEx); } return(lngRes); }
public long m_lngModify(System.Security.Principal.IPrincipal p_objPrincipal, clsHISMedType_VO p_objRecord) { long lngRes = 0; clsPrivilegeHandleService objPrivilege = new clsPrivilegeHandleService(); lngRes = objPrivilege.m_lngCheckCallPrivilege(p_objPrincipal, "com.digitalwave.iCare.middletier.HIS.clsHISMedTypeManageSvc", "m_lngModify"); if (lngRes < 0) { return(-1); } string strSQL = @" UPDATE T_BSE_PHARMATYPE SET PHARMANAME_VCHR =?,ASSISTCODE_VCHR =?,PYCODE_VCHR =?,WBCODE_VCHR =? ,PARENTID_CHR = ? WHERE PHARMAID_CHR =?"; try { com.digitalwave.iCare.middletier.HRPService.clsHRPTableService objHRPSvc = new clsHRPTableService(); IDataParameter[] objDPArr = null; objHRPSvc.CreateDatabaseParameter(6, out objDPArr); objDPArr[0].Value = p_objRecord.m_strPHARMANAME_VCHR; objDPArr[1].Value = p_objRecord.m_strASSISTCODE_VCHR; objDPArr[2].Value = p_objRecord.m_strPYCODE_VCHR; objDPArr[3].Value = p_objRecord.m_strWBCODE_VCHR; objDPArr[4].Value = p_objRecord.m_strPARENTID_CHR; objDPArr[5].Value = p_objRecord.m_strPHARMAID_CHR; long l = 0; lngRes = objHRPSvc.lngExecuteParameterSQL(strSQL, ref l, objDPArr); } catch (Exception objEx) { string strTmp = objEx.Message; com.digitalwave.Utility.clsLogText objLogger = new clsLogText(); bool blnRes = objLogger.LogError(objEx); } return(lngRes); }
/// <summary> /// <param name="p_trn">根据某一结点,遍历其子结点</param> /// <param name="p_lngResult">操作的结果</param> /// </summary> void m_mthBianLi(TreeNode p_trn, out long p_lngResult) { p_lngResult = 1; foreach (TreeNode node in p_trn.Nodes) { clsHISMedType_VO objTD_VO = p_trn.Tag as clsHISMedType_VO; p_lngResult = this.m_objManage.m_lngDelete(objTD_VO); //从数据库中删除子结点 m_mthBianLi(node, out p_lngResult); } }
public long m_lngGetMedTypeInfo(System.Security.Principal.IPrincipal p_objPrincipal, out clsHISMedType_VO[] p_objResultArr, string strMainID) { long lngRes = 0; p_objResultArr = new clsHISMedType_VO[0]; clsPrivilegeHandleService objPrivilege = new clsPrivilegeHandleService(); lngRes = objPrivilege.m_lngCheckCallPrivilege(p_objPrincipal, "com.digitalwave.iCare.middletier.HIS.clsHISMedTypeManageSvc", "m_lngGetMedTypeInfo"); if (lngRes < 0) { return(-1); } string strSQL = @"Select * From T_BSE_PHARMATYPE order by PHARMAID_CHR"; try { DataTable dtbResult = new DataTable(); com.digitalwave.iCare.middletier.HRPService.clsHRPTableService objHRPSvc = new clsHRPTableService(); lngRes = objHRPSvc.DoGetDataTable(strSQL, ref dtbResult); if (lngRes > 0 && dtbResult.Rows.Count > 0) { p_objResultArr = new com.digitalwave.iCare.ValueObject.clsHISMedType_VO[dtbResult.Rows.Count]; for (int i1 = 0; i1 < p_objResultArr.Length; i1++) { p_objResultArr[i1] = new com.digitalwave.iCare.ValueObject.clsHISMedType_VO(); p_objResultArr[i1].m_strPHARMAID_CHR = dtbResult.Rows[i1]["PHARMAID_CHR"].ToString().Trim(); p_objResultArr[i1].m_strPHARMANAME_VCHR = dtbResult.Rows[i1]["PHARMANAME_VCHR"].ToString().Trim(); p_objResultArr[i1].m_strASSISTCODE_VCHR = dtbResult.Rows[i1]["ASSISTCODE_VCHR"].ToString().Trim(); p_objResultArr[i1].m_strPYCODE_VCHR = dtbResult.Rows[i1]["PYCODE_VCHR"].ToString().Trim(); p_objResultArr[i1].m_strWBCODE_VCHR = dtbResult.Rows[i1]["WBCODE_VCHR"].ToString().Trim(); if (dtbResult.Rows[i1]["PARENTID_CHR"] != System.DBNull.Value) { p_objResultArr[i1].m_strPARENTID_CHR = dtbResult.Rows[i1]["PARENTID_CHR"].ToString().Trim(); } else { p_objResultArr[i1].m_strPARENTID_CHR = null; } } } objHRPSvc.Dispose(); } catch (Exception objEx) { string strTmp = objEx.Message; com.digitalwave.Utility.clsLogText objLogger = new clsLogText(); bool blnRes = objLogger.LogError(objEx); } return(lngRes); }
/// <summary> /// 删除节点 /// </summary> public void m_mthDelete() { if (this.m_objViewer.m_lbeType.Tag == null) { return; } TreeNode tr = this.m_objViewer.m_lbeType.Tag as TreeNode; clsHISMedType_VO objTD_VO = tr.Tag as clsHISMedType_VO; DialogResult dr; bool blnHasSubNode = false; this.m_objManage.m_lngCheckMedTypeIsHasSubById(out blnHasSubNode, objTD_VO.m_strPHARMAID_CHR); if (blnHasSubNode) { MessageBox.Show("此节点存在子结点,禁止删除!应先删除其子结点!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; //dr =MessageBox.Show("当前节点是主节点,删除此节点将删除此节点的所有子节点,\n是否删除?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question); } else { dr = MessageBox.Show("是否删除此节点?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); } if (dr == DialogResult.OK) { long ret = -1; if (blnHasSubNode) //objTD_VO.m_strPARENTID_CHR == "") { //在此删除本结点与下级结点 m_mthBianLi(tr, out ret); } else { ret = this.m_objManage.m_lngDelete(objTD_VO); //在此删除本结点 } if (ret > 0) { MessageBox.Show("删除成功"); this.m_objViewer.m_trvMedType.Nodes.Remove(tr); } else { MessageBox.Show("删除失败"); } } }