Пример #1
0
        public long m_lngGetMedicineTypeVisionm(System.Security.Principal.IPrincipal p_objPrincipal, string p_strmedicinetypeid, out clsMS_MedicineTypeVisionmSet p_objTypeVO)
        {
            //p_objTypeVO = null;
            p_objTypeVO = new clsMS_MedicineTypeVisionmSet();
            long lngRes = 0;

            try
            {
                string             strSQL     = @"select medicinetypeid_vchr, lotno_int, validperiod_int
  from t_ms_medicinetypevisionmset where medicinetypeid_vchr = ?";
                DataTable          dtbValue   = null;
                clsHRPTableService objHRPServ = new clsHRPTableService();
                IDataParameter[]   objDPArr   = null;
                objHRPServ.CreateDatabaseParameter(1, out objDPArr);
                objDPArr[0].Value = p_strmedicinetypeid;

                lngRes = objHRPServ.lngGetDataTableWithParameters(strSQL, ref dtbValue, objDPArr);
                if (dtbValue != null && dtbValue.Rows.Count > 0)
                {
                    p_objTypeVO.m_intLotno       = Convert.ToInt16(dtbValue.Rows[0]["lotno_int"]);
                    p_objTypeVO.m_intValidperiod = Convert.ToInt16(dtbValue.Rows[0]["validperiod_int"]);
                }
                else
                {
                    p_objTypeVO.m_intLotno       = 1;
                    p_objTypeVO.m_intValidperiod = 1;
                }
            }
            catch (Exception objEx)
            {
                com.digitalwave.Utility.clsLogText objLogger = new com.digitalwave.Utility.clsLogText();
                bool blnRes = objLogger.LogError(objEx);
            }
            return(lngRes);
        }
Пример #2
0
        /// <summary>
        /// 获取药品类型批号,有效期控制信息

        /// </summary>
        /// <param name="p_strMedicineTypeID">药品类型ID</param>
        /// <param name="p_objTypeVO"></param>
        /// <returns></returns>
        internal long m_lngGetMedicineTypeVisionm(string p_strMedicineTypeID, out clsMS_MedicineTypeVisionmSet p_objTypeVO)
        {
            long lngRes = 0;

            com.digitalwave.iCare.middletier.MedicineStoreService.clsMedicineTypeVisionmSetSVC objSvc =
                (com.digitalwave.iCare.middletier.MedicineStoreService.clsMedicineTypeVisionmSetSVC)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(com.digitalwave.iCare.middletier.MedicineStoreService.clsMedicineTypeVisionmSetSVC));
            lngRes = objSvc.m_lngGetMedicineTypeVisionm(objPrincipal, p_strMedicineTypeID, out p_objTypeVO);
            return(lngRes);
        }
Пример #3
0
        public long m_mthSaverMedicineType()
        {
            long   lngRes      = 0;
            int    iRowLength  = m_objViewer.dtbTypeVisionm.Rows.Count;
            string strSeriesID = string.Empty;

            clsMS_MedicineTypeVisionmSet[] objMedicineType = new clsMS_MedicineTypeVisionmSet[iRowLength];
            DataRow dr = null;

            for (int iOr = 0; iOr < iRowLength; iOr++)
            {
                dr = m_objViewer.dtbTypeVisionm.Rows[iOr];
                objMedicineType[iOr] = new clsMS_MedicineTypeVisionmSet();
                objMedicineType[iOr].m_strMedicineTypeid = dr["medicinetypeid_chr"].ToString();
                if (dr["lotno_int"] == DBNull.Value)
                {
                    objMedicineType[iOr].m_intLotno = 0;
                }
                else
                {
                    objMedicineType[iOr].m_intLotno = Convert.ToBoolean(dr["lotno_int"]) ? 1 : 0;
                }
                if (dr["validperiod_int"] == DBNull.Value)
                {
                    objMedicineType[iOr].m_intValidperiod = 0;
                }
                else
                {
                    objMedicineType[iOr].m_intValidperiod = Convert.ToBoolean(dr["validperiod_int"]) ? 1 : 0;
                }
            }

            lngRes = m_objDomain.m_lngSaverMedicineType(objMedicineType);

            if (lngRes > 0)
            {
                System.Windows.Forms.MessageBox.Show("保存成功", "药品类型设置", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Asterisk);
            }
            else
            {
                System.Windows.Forms.MessageBox.Show("保存失败", "药品类型设置", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Exclamation);
            }
            return(lngRes);
        }
        /// <summary>
        /// 选入已选中的记录
        /// </summary>
        public void m_mthCall()
        {
            if ((m_objViewer.m_dtbOutStorageDetail != null) && (m_objViewer.m_dtbOutStorageDetail.Rows.Count > 0))
            {
                DataRow m_dtbCancelDetailRow     = null;
                DataRow m_dtbOutStorageDetailRow = null;
                DataRow m_dtbRow = null;
                decimal m_decOutStorageAvailAmount = 0;
                decimal m_decCancelAvailAmount     = 0;
                decimal m_decAvailAmount           = 0;
                decimal m_decCallPrice             = 0;
                decimal m_decRetailPrice           = 0;
                decimal m_decWholesalePrice        = 0;
                bool    blnNewRow = false;
                int     j1        = 0;
                for (int i1 = 0; i1 < m_objViewer.m_dtbOutStorageDetail.Rows.Count; i1++)
                {
                    if (Convert.ToBoolean(m_objViewer.m_dgvSubInfo.Rows[i1].Cells[0].Value))
                    {
                        m_dtbOutStorageDetailRow = m_objViewer.m_dtbOutStorageDetail.Rows[i1];
                        //blnNewRow = true;
                        for (j1 = 0; j1 < m_objViewerMakerBill.m_dtbDetail.Rows.Count; j1++)
                        {
                            m_dtbCancelDetailRow = m_objViewerMakerBill.m_dtbDetail.Rows[j1];
                            if ((m_dtbCancelDetailRow["MEDICINEID_CHR"].ToString().Trim() == m_dtbOutStorageDetailRow["MEDICINEID_CHR"].ToString()) &&
                                (m_dtbCancelDetailRow["LOTNO_VCHR"].ToString().Trim() == m_dtbOutStorageDetailRow["LOTNO_VCHR"].ToString()) &&
                                (m_dtbCancelDetailRow["OUTSTORAGEID_VCHR"].ToString().Trim() == m_dtbOutStorageDetailRow["OUTSTORAGEID_VCHR"].ToString()))
                            {
                                //MessageBox.Show("该药品已录入","药品内退",MessageBoxButtons.OK,MessageBoxIcon.Information);
                                m_dtbCancelDetailRow["AMOUNT"] = Convert.ToDecimal(m_dtbOutStorageDetailRow["AMOUNT"]);    // 退药数量

                                break;
                            }
                        }

                        if (j1 == m_objViewerMakerBill.m_dtbDetail.Rows.Count)
                        {
                            clsMS_MedicineTypeVisionmSet clsTypeVO = new clsMS_MedicineTypeVisionmSet();
                            m_objDomain.m_lngGetMedicineTypeVisionm(m_dtbOutStorageDetailRow["MEDICINETYPEID_CHR"].ToString(), out clsTypeVO);

                            if (clsTypeVO != null && clsTypeVO.m_intLotno == 1 && m_objViewerMakerBill.m_dtbDetail.Rows[m_objViewerMakerBill.m_dgvMedicineDetail.CurrentRow.Index]["LOTNO_VCHR"].ToString().Trim() != "")
                            {
                                m_dtbRow  = m_objViewerMakerBill.m_dtbDetail.NewRow();
                                blnNewRow = true;
                            }
                            else
                            {
                                m_dtbRow  = m_objViewerMakerBill.m_dtbDetail.Rows[m_objViewerMakerBill.m_dgvMedicineDetail.CurrentRow.Index];
                                blnNewRow = false;
                            }

                            if (m_objViewerMakerBill.m_dtbDetail != null)
                            {
                                if (blnNewRow)
                                {
                                    m_dtbRow["SortNum"] = m_objViewerMakerBill.m_dtbDetail.Rows.Count + 1;
                                }
                            }
                            else
                            {
                                m_dtbRow["SortNum"] = 1;
                            }

                            decimal.TryParse(m_dtbOutStorageDetailRow["AvailAmount"].ToString(), out m_decAvailAmount);

                            decimal.TryParse(m_dtbOutStorageDetailRow["CALLPRICE_INT"].ToString(), out m_decCallPrice);
                            decimal.TryParse(m_dtbOutStorageDetailRow["RETAILPRICE_INT"].ToString(), out m_decRetailPrice);
                            decimal.TryParse(m_dtbOutStorageDetailRow["WHOLESALEPRICE_INT"].ToString(), out m_decWholesalePrice);

                            m_dtbRow["MEDICINEID_CHR"]   = m_dtbOutStorageDetailRow["MEDICINEID_CHR"];
                            m_dtbRow["ASSISTCODE_CHR"]   = m_dtbOutStorageDetailRow["ASSISTCODE_CHR"];
                            m_dtbRow["MEDICINENAME_VCH"] = m_dtbOutStorageDetailRow["medicinename_vchr"];
                            m_dtbRow["MEDSPEC_VCHR"]     = m_dtbOutStorageDetailRow["MEDSPEC_VCHR"];
                            m_dtbRow["LOTNO_VCHR"]       = m_dtbOutStorageDetailRow["LOTNO_VCHR"];
                            m_dtbRow["AVAILAGROSS_INT"]  = m_dtbOutStorageDetailRow["AVAILAGROSS_INT"];
                            m_dtbRow["NETAMOUNT_INT"]    = m_dtbOutStorageDetailRow["NETAMOUNT_INT"];
                            m_dtbRow["CancelAmount"]     = m_dtbOutStorageDetailRow["ReturnAmount"];
                            m_dtbRow["AvailAmount"]      = m_dtbOutStorageDetailRow["AvailAmount"]; //可退数量
                            m_dtbRow["AMOUNT"]           = m_dtbOutStorageDetailRow["AMOUNT"];      //退药数量

                            m_dtbRow["OPUNIT_CHR"]      = m_dtbOutStorageDetailRow["OPUNIT_CHR"];
                            m_dtbRow["CALLPRICE_INT"]   = m_dtbOutStorageDetailRow["CALLPRICE_INT"];
                            m_dtbRow["CallSum"]         = m_decAvailAmount * m_decCallPrice;
                            m_dtbRow["RetailSum"]       = m_decAvailAmount * m_decRetailPrice;
                            m_dtbRow["withdrawsum"]     = Convert.ToDecimal(m_dtbOutStorageDetailRow["AMOUNT"].ToString()) * m_decCallPrice;
                            m_dtbRow["RETAILPRICE_INT"] = m_dtbOutStorageDetailRow["RETAILPRICE_INT"];

                            m_dtbRow["WHOLESALEPRICE_INT"] = m_dtbOutStorageDetailRow["WHOLESALEPRICE_INT"];
                            m_dtbRow["INSTORAGEID_VCHR"]   = m_dtbOutStorageDetailRow["INSTORAGEID_VCHR"];
                            m_dtbRow["OUTSTORAGEID_VCHR"]  = m_dtbOutStorageDetailRow["OUTSTORAGEID_VCHR"];
                            m_dtbRow["PRODUCTORID_CHR"]    = m_dtbOutStorageDetailRow["productorid_chr"];
                            m_dtbRow["VALIDPERIOD_DAT"]    = m_dtbOutStorageDetailRow["validperiod_dat"]; //有效期

                            m_dtbRow["RUTURNNUM_INT"] = m_dtbOutStorageDetailRow["ReturnNum"];            //内退次数
                            //m_dtbRow["PACKCONVERT_INT"] = m_dtbOutStorageDetail.Rows[i1][""];
                            //m_dtbRow["PACKAMOUNT"] = m_dtbOutStorageDetail.Rows[i1][""];
                            //m_dtbRow["PACKUNIT_VCHR"] = m_dtbOutStorageDetail.Rows[i1][""];
                            //m_dtbRow["PACKCALLPRICE_INT"] = m_dtbOutStorageDetail.Rows[i1][""];
                            if (blnNewRow)
                            {
                                m_objViewerMakerBill.m_dtbDetail.Rows.Add(m_dtbRow);
                                m_objViewerMakerBill.m_dgvMedicineDetail.CurrentCell =
                                    m_objViewerMakerBill.m_dgvMedicineDetail[m_objViewerMakerBill.m_intAmountColIndex, m_objViewerMakerBill.m_dtbDetail.Rows.Count - 1];
                            }
                        }
                    } //if
                }     //for
            }
        }