/// <summary> /// 获取药品制剂类型 /// </summary> internal void m_mthGetMedicinePreptype() { com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO[] objMPVO = null; //clsDcl_Purchase objPDomain = new clsDcl_Purchase(); //long lngRes = objPDomain.m_lngGetMedicinePreptype(out objMPVO); m_objDomain.m_lngGetMedicinePreptype(m_objViewer.m_strStorageID2, out objMPVO); if (objMPVO != null && objMPVO.Length > 0) { m_objViewer.m_cboMediciePreptype.Items.Clear(); com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO objAll = new com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO(); objAll.m_intFLAGA_INT = 0; objAll.m_strMEDICINEPREPTYPE_CHR = string.Empty; objAll.m_strMEDICINEPREPTYPENAME_VCHR = "全部"; m_objViewer.m_cboMediciePreptype.Items.Add(objAll); m_objViewer.m_cboMediciePreptype.Items.AddRange(objMPVO); } //填充药品分类ListView com.digitalwave.iCare.ValueObject.clsMedicineType_VO[] objResultArr = null; m_objDomain.m_lngGetMedType(out objResultArr); if (objResultArr != null && objResultArr.Length > 0) { ListViewItem itemTmp = null; foreach (com.digitalwave.iCare.ValueObject.clsMedicineType_VO obj in objResultArr) { itemTmp = new ListViewItem(); itemTmp.SubItems.Add(obj.m_strMedicineTypeName); itemTmp.Tag = obj.m_strMedicineTypeID; m_objViewer.lsvMedType.Items.Add(itemTmp); } } m_objViewer.lsvMedType.Visible = false; }
/// <summary> /// 获取药品制剂类型 /// </summary> internal void m_mthGetMedicinePreptype() { com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO[] objMPVO = null; long lngRes = m_objDomain.m_lngGetMedicinePreptype(out objMPVO); if (objMPVO != null && objMPVO.Length > 0) { m_objViewer.m_cboMediciePreptype.Items.Clear(); com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO objAll = new com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO(); objAll.m_intFLAGA_INT = 0; objAll.m_strMEDICINEPREPTYPE_CHR = string.Empty; objAll.m_strMEDICINEPREPTYPENAME_VCHR = "全部"; m_objViewer.m_cboMediciePreptype.Items.Add(objAll); m_objViewer.m_cboMediciePreptype.Items.AddRange(objMPVO); } }
public long m_lngGetMedicinePreptype(System.Security.Principal.IPrincipal p_objPrincipal, out com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO[] p_objMPVO) { p_objMPVO = null; long lngRes = 0; try { string strSQL = @"select medicinepreptype_chr, medicinepreptypename_vchr, flaga_int from t_aid_medicinepreptype"; clsHRPTableService objHRPServ = new clsHRPTableService(); DataTable dtbValue = null; lngRes = objHRPServ.lngGetDataTableWithoutParameters(strSQL, ref dtbValue); if (lngRes > 0 && dtbValue != null) { int intRowsCount = dtbValue.Rows.Count; if (intRowsCount == 0) { return(0); } p_objMPVO = new com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO[intRowsCount]; DataRow drTemp = null; for (int iRow = 0; iRow < intRowsCount; iRow++) { p_objMPVO[iRow] = new com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO(); drTemp = dtbValue.Rows[iRow]; p_objMPVO[iRow].m_strMEDICINEPREPTYPE_CHR = drTemp["MEDICINEPREPTYPE_CHR"].ToString(); p_objMPVO[iRow].m_strMEDICINEPREPTYPENAME_VCHR = drTemp["MEDICINEPREPTYPENAME_VCHR"].ToString(); p_objMPVO[iRow].m_intFLAGA_INT = Convert.ToInt32(drTemp["FLAGA_INT"]); } } } catch (Exception objEx) { com.digitalwave.Utility.clsLogText objLogger = new com.digitalwave.Utility.clsLogText(); bool blnRes = objLogger.LogError(objEx); } return(lngRes); }
/// <summary> /// 获取盘点药品 /// </summary> /// <param name="p_dtbMedicine"></param> /// <returns></returns> internal long m_dtbGetMedicine(out DataTable p_dtbMedicine) { long lngRes = 0; p_dtbMedicine = null; Control ctlCurrent = null;//当前正在查询的控件 if (m_objViewer.m_rdbCheckSortNum.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtCheckSortNum1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtCheckSortNum2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtCheckSortNum1.Focus(); return(-1); } ctlCurrent = m_objViewer.m_txtCheckSortNum1; lngRes = m_objDomain.m_lngGetMedicineBySortNum(m_objViewer.m_txtCheckSortNum1.Text, m_objViewer.m_txtCheckSortNum2.Text, m_objViewer.m_strStorageID, out p_dtbMedicine); } else if (m_objViewer.m_rdbMedicineCode.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtMedicineCode1.Focus(); return(-1); } ctlCurrent = m_objViewer.m_txtMedicineCode1; lngRes = m_objDomain.m_lngGetMedicineByMedicineCode(m_objViewer.m_txtMedicineCode1.Text, m_objViewer.m_txtMedicineCode2.Text, m_objViewer.m_strStorageID, out p_dtbMedicine); } else if (m_objViewer.m_rdbMedicinePreptype.Checked) { if (m_objViewer.m_cboMediciePreptype.SelectedIndex == -1 || m_objViewer.m_cboMediciePreptype.SelectedItem == null) { MessageBox.Show("请先选择药品剂型", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_cboMediciePreptype.Focus(); return(-1); } ctlCurrent = m_objViewer.m_cboMediciePreptype; com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO objTypeVO = m_objViewer.m_cboMediciePreptype.SelectedItem as com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO; lngRes = m_objDomain.m_lngGetMedicineByMedicinePreptype(objTypeVO.m_strMEDICINEPREPTYPE_CHR, m_objViewer.m_strStorageID, out p_dtbMedicine); } else if (m_objViewer.m_rdbRackNum.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtRackNum1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtRackNum2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtRackNum1.Focus(); return(-1); } ctlCurrent = m_objViewer.m_txtRackNum1; lngRes = m_objDomain.m_lngGetMedicineByMedicineRackNO(m_objViewer.m_txtRackNum1.Text, m_objViewer.m_txtRackNum2.Text, m_objViewer.m_strStorageID, out p_dtbMedicine); } else if (m_objViewer.m_rdbAll.Checked) { lngRes = m_objDomain.m_lngGetAllMedicine(m_objViewer.m_strStorageID, out p_dtbMedicine); } else { MessageBox.Show("请先选择筛选条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); return(-1); } if (p_dtbMedicine == null || p_dtbMedicine.Rows.Count == 0) { DialogResult drResult = MessageBox.Show("未找到符合条件的药品信息,是否更改筛选条件继续查找?", "药品盘点", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (drResult == DialogResult.Yes) { if (ctlCurrent != null) { ctlCurrent.Focus(); } return(-1); } else { return(0); } } return(1); }
/// <summary> /// 获取查询条件 /// </summary> /// <param name="p_strCondition">查询条件</param> /// <returns></returns> internal long m_lngGetSearchCondition(out string p_strCondition) { p_strCondition = string.Empty; if (m_objViewer.m_rdbCheckSortNum.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtCheckSortNum1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtCheckSortNum2.Text)) { MessageBox.Show("请先输入完整筛选条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtCheckSortNum1.Focus(); return(-1); } else { p_strCondition = "checkmedicineorder_chr >= '" + m_objViewer.m_txtCheckSortNum1.Text + "' and checkmedicineorder_chr <= '" + m_objViewer.m_txtCheckSortNum2.Text + "'"; } } else if (m_objViewer.m_rdbMedicineCode.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode2.Text)) { MessageBox.Show("请先输入完整筛选条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtMedicineCode1.Focus(); return(-1); } else { p_strCondition = "assistcode_chr >= '" + m_objViewer.m_txtMedicineCode1.Text + "' and assistcode_chr <= '" + m_objViewer.m_txtMedicineCode2.Text + "'"; } } else if (m_objViewer.m_rdbMedicinePreptype.Checked) { if (m_objViewer.m_cboMediciePreptype.SelectedIndex == -1 || m_objViewer.m_cboMediciePreptype.SelectedItem == null) { MessageBox.Show("请先选择药品剂型", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_cboMediciePreptype.Focus(); return(-1); } else { com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO objTypeVO = m_objViewer.m_cboMediciePreptype.SelectedItem as com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO; if (objTypeVO != null && !string.IsNullOrEmpty(objTypeVO.m_strMEDICINEPREPTYPE_CHR)) { p_strCondition = "medicinepreptype_chr = " + objTypeVO.m_strMEDICINEPREPTYPE_CHR; } } } else if (m_objViewer.m_rdbRackNum.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtRackNum1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtRackNum2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtRackNum1.Focus(); return(-1); } p_strCondition = "storagerackcode_vchr >= '" + m_objViewer.m_txtRackNum1.Text + "' and storagerackcode_vchr <= '" + m_objViewer.m_txtRackNum2.Text + "'"; } else if (m_objViewer.m_rdbAll.Checked) { p_strCondition = string.Empty; } else { MessageBox.Show("请先选择筛选条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); return(-1); } return(1); }
/// <summary> /// 获取盘点药品 /// </summary> /// <param name="p_dtbMedicine"></param> /// <returns></returns> internal long m_dtbGetMedicine(out DataTable p_dtbMedicine) { long lngRes = 0; p_dtbMedicine = null; Control ctlCurrent = null;//当前正在查询的控件 if (m_objViewer.m_rdbCheckSortNum.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtCheckSortNum1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtCheckSortNum2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtCheckSortNum1.Focus(); return(-1); } ctlCurrent = m_objViewer.m_txtCheckSortNum1; lngRes = m_objDomain.m_lngGetMedicineBySortNum(m_objViewer.m_txtCheckSortNum1.Text, m_objViewer.m_txtCheckSortNum2.Text, m_objViewer.m_strStorageID, m_objViewer.m_blnIsHospital, out p_dtbMedicine); } else if (m_objViewer.m_rdbMedicineCode.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtMedicineCode1.Focus(); return(-1); } ctlCurrent = m_objViewer.m_txtMedicineCode1; lngRes = m_objDomain.m_lngGetMedicineByMedicineCode(m_objViewer.m_txtMedicineCode1.Text, m_objViewer.m_txtMedicineCode2.Text, m_objViewer.m_strStorageID, m_objViewer.m_blnIsHospital, out p_dtbMedicine); } else if (m_objViewer.m_rdbMedicinePreptype.Checked) { if (m_objViewer.m_cboMediciePreptype.SelectedIndex == -1 || m_objViewer.m_cboMediciePreptype.SelectedItem == null) { MessageBox.Show("请先选择药品剂型", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_cboMediciePreptype.Focus(); return(-1); } ctlCurrent = m_objViewer.m_cboMediciePreptype; com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO objTypeVO = m_objViewer.m_cboMediciePreptype.SelectedItem as com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO; lngRes = m_objDomain.m_lngGetMedicineByMedicinePreptype(objTypeVO.m_strMEDICINEPREPTYPE_CHR, m_objViewer.m_strStorageID, m_objViewer.m_blnIsHospital, out p_dtbMedicine); } else if (m_objViewer.m_rdbRackNum.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtRackNum1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtRackNum2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtRackNum1.Focus(); return(-1); } ctlCurrent = m_objViewer.m_txtRackNum1; lngRes = m_objDomain.m_lngGetMedicineByMedicineRackNO(m_objViewer.m_txtRackNum1.Text, m_objViewer.m_txtRackNum2.Text, m_objViewer.m_strStorageID, m_objViewer.m_blnIsHospital, out p_dtbMedicine); } else if (m_objViewer.m_rdbSetType.Checked) { System.Collections.ArrayList arr = new System.Collections.ArrayList(); if (m_objViewer.lsvMedType.CheckedItems.Count > 0) { for (int i1 = 0; i1 < m_objViewer.lsvMedType.CheckedItems.Count; i1++) { arr.Add(this.m_objViewer.lsvMedType.CheckedItems[i1].Tag.ToString()); } lngRes = m_objDomain.m_lngGetMedicineByMedicineType(arr, m_objViewer.m_strStorageID, m_objViewer.m_blnIsHospital, out p_dtbMedicine); } else { MessageBox.Show("至少选择一种药品类型", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.lsvMedType.Focus(); return(-1); } } else if (m_objViewer.m_rdbAll.Checked) { lngRes = m_objDomain.m_lngGetAllMedicine(m_objViewer.m_strStorageID, m_objViewer.m_blnIsHospital, out p_dtbMedicine); } else { MessageBox.Show("请先选择筛选条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); return(-1); } if (p_dtbMedicine == null || p_dtbMedicine.Rows.Count == 0) { DialogResult drResult = MessageBox.Show("未找到符合条件的药品信息,是否更改筛选条件继续查找?", "药品盘点", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (drResult == DialogResult.Yes) { if (ctlCurrent != null) { ctlCurrent.Focus(); } return(-1); } else { return(0); } } if (!m_objViewer.m_ckbIncludingZero.Checked) { p_dtbMedicine.DefaultView.RowFilter = " realgross_int <> 0 "; p_dtbMedicine = p_dtbMedicine.DefaultView.ToTable(); } return(1); }
/// <summary> /// 检查漏盘药品 /// </summary> internal void m_mthCheckMedicine() { m_objViewer.m_dtbMissMedicine.Rows.Clear(); DataTable dtbStorageMedicine = null; long lngRes = 0; if (m_objViewer.m_rdbMedicineCode.Checked) { if (string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode1.Text) || string.IsNullOrEmpty(m_objViewer.m_txtMedicineCode2.Text)) { MessageBox.Show("请先输入完整查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_txtMedicineCode1.Focus(); return; } lngRes = m_objDomain.m_lngGetMedicineByMedicineCode(m_objViewer.m_txtMedicineCode1.Text, m_objViewer.m_txtMedicineCode2.Text, m_objViewer.m_strStorageID, out dtbStorageMedicine); } else if (m_objViewer.m_rdbMedicinePreptype.Checked) { if (m_objViewer.m_cboMediciePreptype.SelectedIndex == -1 || m_objViewer.m_cboMediciePreptype.SelectedItem == null) { MessageBox.Show("请先选择药品剂型", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_cboMediciePreptype.Focus(); return; } com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO objTypeVO = m_objViewer.m_cboMediciePreptype.SelectedItem as com.digitalwave.iCare.ValueObject.clsMEDICINEPREPTYPE_VO; lngRes = m_objDomain.m_lngGetMedicineByMedicinePreptype(objTypeVO.m_strMEDICINEPREPTYPE_CHR, m_objViewer.m_strStorageID, out dtbStorageMedicine); } else if (m_objViewer.m_rdbMedicineType.Checked) { if (m_objViewer.m_cboMedicineType.SelectedIndex == -1 || m_objViewer.m_cboMedicineType.SelectedItem == null) { MessageBox.Show("请先选择药品类型", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); m_objViewer.m_cboMedicineType.Focus(); return; } com.digitalwave.iCare.ValueObject.clsMS_MedicineType_VO objTypeVO = m_objViewer.m_cboMedicineType.SelectedItem as com.digitalwave.iCare.ValueObject.clsMS_MedicineType_VO; lngRes = m_objDomain.m_lngGetMedicineByMedicinePreptype(objTypeVO.m_strMedicineTypeID_CHR, m_objViewer.m_strStorageID, out dtbStorageMedicine); } else { MessageBox.Show("请先选择查询条件", "药品盘点", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (dtbStorageMedicine == null || dtbStorageMedicine.Rows.Count == 0) { return; } if (m_objViewer.m_dtbHasCheckMedicine == null || m_objViewer.m_dtbHasCheckMedicine.Rows.Count == 0) { m_objViewer.m_dtbMissMedicine.Merge(dtbStorageMedicine, true); return; } DataTable dtbHasCheckCopy = m_objViewer.m_dtbHasCheckMedicine.Copy(); DataRow[] drNull = dtbHasCheckCopy.Select("medicineid_chr is null"); if (drNull != null && drNull.Length > 0) { foreach (DataRow dr in drNull) { dtbHasCheckCopy.Rows.Remove(dr); } } if (dtbHasCheckCopy.Rows.Count == 0) { m_objViewer.m_dtbMissMedicine.Merge(dtbStorageMedicine, true); return; } dtbHasCheckCopy.PrimaryKey = new DataColumn[] { dtbHasCheckCopy.Columns["medicineid_chr"], dtbHasCheckCopy.Columns["lotno_vchr"], dtbHasCheckCopy.Columns["instorageid_vchr"] }; dtbHasCheckCopy.Merge(dtbStorageMedicine, true); DataRow[] drNewArr = dtbHasCheckCopy.Select("medicinename_vchr is not null");//盘点表字段名为MEDICINENAME_VCH,库存表为MEDICINENAME_VCHR dtbHasCheckCopy = null; if (drNewArr != null && drNewArr.Length > 0) { DataRow drTemp = null; DataRow drNewRow = null; m_objViewer.m_dtbMissMedicine.BeginLoadData(); for (int iRow = 0; iRow < drNewArr.Length; iRow++) { drTemp = drNewArr[iRow]; drNewRow = m_objViewer.m_dtbMissMedicine.NewRow(); drNewRow["checkmedicineorder_chr"] = drTemp["checkmedicineorder_chr"].ToString(); drNewRow["assistcode_chr"] = drTemp["assistcode_chr"].ToString(); drNewRow["medicineid_chr"] = drTemp["medicineid_chr"].ToString(); drNewRow["medicinename_vchr"] = drTemp["medicinename_vchr"].ToString(); drNewRow["medspec_vchr"] = drTemp["MEDSPEC_VCHR"].ToString(); drNewRow["opunit_vchr"] = drTemp["opunit_vchr"].ToString(); drNewRow["realgross_int"] = drTemp["realgross_int"].ToString(); drNewRow["callprice_int"] = drTemp["CALLPRICE_INT"].ToString(); drNewRow["wholesaleprice_int"] = drTemp["WHOLESALEPRICE_INT"].ToString(); drNewRow["retailprice_int"] = drTemp["RETAILPRICE_INT"].ToString(); drNewRow["lotno_vchr"] = drTemp["lotno_vchr"].ToString(); drNewRow["instorageid_vchr"] = drTemp["instorageid_vchr"].ToString(); drNewRow["validperiod_dat"] = drTemp["validperiod_dat"].ToString(); drNewRow["productorid_chr"] = drTemp["PRODUCTORID_CHR"].ToString(); drNewRow["vendorid_chr"] = drTemp["vendorid_chr"].ToString(); drNewRow["medicinepreptype_chr"] = drTemp["medicinepreptype_chr"].ToString(); drNewRow["medicinepreptypename_vchr"] = drTemp["medicinepreptypename_vchr"].ToString(); drNewRow["storagerackcode_vchr"] = drTemp["storagerackcode_vchr"].ToString(); m_objViewer.m_dtbMissMedicine.LoadDataRow(drNewRow.ItemArray, true); } m_objViewer.m_dtbMissMedicine.EndLoadData(); } }