Example #1
0
        public frmChargeItem(clsBIHCanExecOrder objCommitOrder)
        {
            //
            // Windows 窗体设计器支持所必需的
            //
            InitializeComponent();

            //m_ObjCHARGEDService = new clsBIHORDERCHARGEDService();
            m_ObjCHARGEDService = new clsDcl_GetSvcObject().m_GetBIHORDERCHARGEDSvc();
            //m_objService = new clsBIHChargeItemService();
            m_objService          = new clsDcl_GetSvcObject().m_GetBIHChargeItemSvc();
            m_objExecOrder        = new clsBIHExecOrder();
            m_txtBedNo.Text       = objCommitOrder.m_strBedName;
            m_txtPatientName.Text = objCommitOrder.m_strPatientName;
            m_txtOrderName.Text   = objCommitOrder.m_strName;

            m_intNewStatus = 1;
            m_objExecOrder.m_strParentID      = objCommitOrder.m_strPatientID;
            m_objExecOrder.m_strRegisterID    = objCommitOrder.m_strRegisterID;
            m_objExecOrder.m_strOrderID       = objCommitOrder.m_strOrderID;
            m_objExecOrder.m_intExecuteType   = objCommitOrder.m_intExecuteType;
            m_objExecOrder.m_strParentName    = objCommitOrder.m_strPatientName;
            m_objExecOrder.m_strBedName       = objCommitOrder.m_strBedName;
            m_objExecOrder.m_strOrderDicID    = objCommitOrder.m_strOrderDicID;
            m_objExecOrder.m_strCREATEAREA_ID = objCommitOrder.m_strCREATEAREA_ID;
        }
Example #2
0
        private void m_dtvOrderList_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            string m_strCumnName = this.m_dtvOrderList.Columns[e.ColumnIndex].Name;

            if (m_strCumnName.Equals("dtv_ENTRUST"))
            {
                DataGridViewRow    row1   = this.m_dtvOrderList.Rows[e.RowIndex];
                DataGridViewCell   cell1  = this.m_dtvOrderList[e.ColumnIndex, e.RowIndex];
                clsBIHCanExecOrder order1 = (clsBIHCanExecOrder)row1.Tag;
                if (cell1.Value != null && !order1.m_strEntrust.ToString().Equals(cell1.Value.ToString()))
                {
                    order1.m_strEntrust = cell1.Value.ToString();
                    ((clsCtl_OrderNurseConfirm)this.objController).m_SaveTheEntrust(order1);
                    ((clsCtl_OrderNurseConfirm)this.objController).RefreshTheOrderListData(order1);
                }
                cell1.ReadOnly = true;
            }
            else if (m_strCumnName.Equals("ATTACHTIMES_INT"))
            {
                DataGridViewRow    row1   = this.m_dtvOrderList.Rows[e.RowIndex];
                DataGridViewCell   cell1  = this.m_dtvOrderList[e.ColumnIndex, e.RowIndex];
                clsBIHCanExecOrder order1 = (clsBIHCanExecOrder)row1.Tag;
                int m_intATTACHTIMES_INT  = 0;
                try
                {
                    m_intATTACHTIMES_INT = int.Parse(cell1.Value.ToString());
                }
                catch
                {
                    cell1.Value = order1.m_intATTACHTIMES_INT;
                }
                if (cell1.Value != null && !order1.m_intATTACHTIMES_INT.ToString().Equals(cell1.Value.ToString()))
                {
                    order1.m_intATTACHTIMES_INT = m_intATTACHTIMES_INT;
                    ((clsCtl_OrderNurseConfirm)this.objController).m_SaveTheATTACHTIMES_INT(order1);
                    ((clsCtl_OrderNurseConfirm)this.objController).RefreshTheOrderListData(order1);
                }
                cell1.ReadOnly = true;
            }
        }
Example #3
0
        /// <summary>
        /// 给执行医嘱对象付值
        /// </summary>
        /// <param name="objDT"></param>
        /// <param name="arrExecOrder"></param>
        private void filltheExecOrderTable(DataView objRow, out clsBIHCanExecOrder[] arrExecOrder)
        {
            //医嘱执行对象数组
            arrExecOrder = new clsBIHCanExecOrder[0];
            if (objRow.Count <= 0)
            {
                return;
            }
            arrExecOrder = new clsBIHCanExecOrder[objRow.Count];
            for (int i = 0; i < objRow.Count; i++)
            {
                arrExecOrder[i]                   = new clsBIHCanExecOrder();
                arrExecOrder[i].m_strBedID        = Convert.ToString(objRow[i]["bedid_chr"].ToString().Trim());
                arrExecOrder[i].m_strBedName      = Convert.ToString(objRow[i]["code_chr"].ToString().Trim());
                arrExecOrder[i].m_strCURBEDID_CHR = Convert.ToString(objRow[i]["bedid_chr"].ToString().Trim());
                arrExecOrder[i].m_strCURBEDName   = Convert.ToString(objRow[i]["code_chr"].ToString().Trim());
                arrExecOrder[i].m_strRegisterID   = Convert.ToString(objRow[i]["registerid_chr"].ToString().Trim());
                arrExecOrder[i].m_strPatientName  = Convert.ToString(objRow[i]["LASTNAME_VCHR"].ToString().Trim()); //姓名
                arrExecOrder[i].m_strPatientSex   = Convert.ToString(objRow[i]["SEX_CHR"].ToString().Trim());       //姓名

                if (!objRow[i]["RECIPENO_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intRecipenNo = int.Parse(objRow[i]["RECIPENO_INT"].ToString().Trim()); //方号
                }
                if (!objRow[i]["RECIPENO2_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intRecipenNo2 = int.Parse(objRow[i]["RECIPENO2_INT"].ToString().Trim()); //方号(用于外部显示)
                }
                if (!objRow[i]["EXECUTETYPE_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intExecuteType = int.Parse(objRow[i]["EXECUTETYPE_INT"].ToString().Trim());       //医嘱(医嘱方式)
                }
                arrExecOrder[i].m_strOrderDicCateID = Convert.ToString(objRow[i]["ordercateid_chr"].ToString().Trim()); //类别ID

                arrExecOrder[i].m_strName = Convert.ToString(objRow[i]["NAME_VCHR"].ToString().Trim());                 //项目名称
                if (!objRow[i]["Dosage_Dec"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_dmlDosage = decimal.Parse(objRow[i]["Dosage_Dec"].ToString().Trim());
                }
                ;                                                                                                    //剂量
                arrExecOrder[i].m_strDosageUnit   = Convert.ToString(objRow[i]["dosageunit_chr"].ToString().Trim()); //剂量单位
                arrExecOrder[i].m_strExecFreqID   = Convert.ToString(objRow[i]["EXECFREQID_CHR"].ToString().Trim());
                arrExecOrder[i].m_strExecFreqName = Convert.ToString(objRow[i]["EXECFREQNAME_CHR"].ToString().Trim());
                if (!objRow[i]["GET_DEC"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_dmlGet = decimal.Parse(objRow[i]["GET_DEC"].ToString().Trim());
                }
                arrExecOrder[i].m_strGetunit     = Convert.ToString(objRow[i]["getunit_chr"].ToString().Trim());
                arrExecOrder[i].m_strEntrust     = Convert.ToString(objRow[i]["ENTRUST_VCHR"].ToString().Trim()); //嘱托
                arrExecOrder[i].m_strDOCTOR_VCHR = Convert.ToString(objRow[i]["DOCTOR_VCHR"].ToString().Trim());  //主管医生
                if (!objRow[i]["POSTDATE_DAT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_dtPostdate = Convert.ToDateTime(objRow[i]["POSTDATE_DAT"].ToString().Trim());
                }
                arrExecOrder[i].m_strASSESSORFOREXEC_CHR = Convert.ToString(objRow[i]["CONFIRMER_VCHR"].ToString().Trim());   //审核人-
                arrExecOrder[i].m_strASSESSORFOREXEC_DAT = Convert.ToString(objRow[i]["CONFIRM_DAT"].ToString().Trim());      //审核时间
                arrExecOrder[i].m_strDosetypeID          = Convert.ToString(objRow[i]["DOSETYPEID_CHR"].ToString().Trim());   //用法ID
                arrExecOrder[i].m_strDosetypeName        = Convert.ToString(objRow[i]["DOSETYPENAME_CHR"].ToString().Trim()); //用法名称
                arrExecOrder[i].m_strOrderID             = Convert.ToString(objRow[i]["orderid_chr"].ToString().Trim());      //医嘱表流水号
                if (!objRow[i]["STATUS_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intStatus = int.Parse(objRow[i]["STATUS_INT"].ToString().Trim());                 //当前医嘱状态
                }
                arrExecOrder[i].m_strCreatorID = Convert.ToString(objRow[i]["CREATORID_CHR"].ToString().Trim());        //开医嘱单医生ID
                arrExecOrder[i].m_strCreator   = Convert.ToString(objRow[i]["CREATOR_CHR"].ToString().Trim());          //开医嘱单医生

                arrExecOrder[i].m_strOrderDicID    = Convert.ToString(objRow[i]["ORDERDICID_CHR"].ToString().Trim());   //诊疗项目流水号
                arrExecOrder[i].m_strParentID      = Convert.ToString(objRow[i]["patientid_chr"].ToString().Trim());    //病人ID
                arrExecOrder[i].m_strCREATEAREA_ID = Convert.ToString(objRow[i]["createareaid_chr"].ToString().Trim()); //开单科室ID
                arrExecOrder[i].m_strCURAREAID_CHR = Convert.ToString(objRow[i]["CURAREAID_CHR"].ToString().Trim());    //下医嘱时病人所在病区ID
                arrExecOrder[i].m_strCURAREAName   = Convert.ToString(objRow[i]["CURAREAName"].ToString().Trim());      //下医嘱时病人所在病区名称
                if (!objRow[i]["OUTGETMEDDAYS_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intOUTGETMEDDAYS_INT = int.Parse(objRow[i]["OUTGETMEDDAYS_INT"].ToString().Trim());//出院带药天数(当执行类型为3=出院带药})
                }
                arrExecOrder[i].m_strSAMPLEID_VCHR   = Convert.ToString(objRow[i]["SAMPLEID_VCHR"].ToString().Trim());
                arrExecOrder[i].m_strSAMPLEName_VCHR = Convert.ToString(objRow[i]["sample_type_desc_vchr"].ToString().Trim());
                arrExecOrder[i].m_strPARTID_VCHR     = Convert.ToString(objRow[i]["PARTID_VCHR"].ToString().Trim());
                arrExecOrder[i].m_strPARTNAME_VCHR   = Convert.ToString(objRow[i]["partname"].ToString().Trim());
                //皮试相关字段
                arrExecOrder[i].m_intISNEEDFEEL      = int.Parse(objRow[i]["ISNEEDFEEL"].ToString().Trim());             //是否需要皮试
                arrExecOrder[i].m_intFEEL_INT        = int.Parse(objRow[i]["FEEL_INT"].ToString().Trim());               //皮试结果
                arrExecOrder[i].m_strFEELRESULT_VCHR = Convert.ToString(objRow[i]["FEELRESULT_VCHR"].ToString().Trim()); //皮试结果备注
                if (!objRow[i]["CHARGE_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intCHARGE_INT = int.Parse(objRow[i]["CHARGE_INT"].ToString().Trim());
                }
                if (!objRow[i]["ATTACHTIMES_INT"].ToString().Trim().Equals(""))
                {
                    arrExecOrder[i].m_intATTACHTIMES_INT = int.Parse(objRow[i]["ATTACHTIMES_INT"].ToString().Trim());
                }
                arrExecOrder[i].m_strREMARK_VCHR = objRow[i]["REMARK_VCHR"].ToString().Trim();     //医嘱说明
                arrExecOrder[i].m_strInpatientID = objRow[i]["inpatientid_chr"].ToString().Trim(); //住院号
            }
        }
Example #4
0
        private void m_dtvOrderList_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            //((clsCtl_OrderNurseConfirm)this.objController).ChangeTheSelectState(e.RowIndex);
            string m_strCumnName = this.m_dtvOrderList.Columns[e.ColumnIndex].Name;

            if (m_strCumnName.Equals("dtv_ENTRUST"))
            {
                DataGridViewCell   cell1 = this.m_dtvOrderList[e.ColumnIndex, e.RowIndex];
                clsBIHCanExecOrder order = (clsBIHCanExecOrder)this.m_dtvOrderList.Rows[e.RowIndex].Tag;
                //是否为子医嘱
                bool m_blSon = false;
                ((clsCtl_OrderNurseConfirm)this.objController).m_TestORDERIDIsSon(order, out m_blSon);
                if (m_blSon == true)
                {
                    MessageBox.Show("请单独选择父医嘱进行嘱托修改操作!", "提示框!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                /*<==================================*/
                if (order.m_intStatus == 1)
                {
                    cell1.ReadOnly = false;
                }
            }
            else if (m_strCumnName.Equals("ATTACHTIMES_INT"))
            {
                DataGridViewCell   cell1 = this.m_dtvOrderList[e.ColumnIndex, e.RowIndex];
                clsBIHCanExecOrder order = (clsBIHCanExecOrder)this.m_dtvOrderList.Rows[e.RowIndex].Tag;
                //是否为子医嘱
                bool m_blSon = false;
                ((clsCtl_OrderNurseConfirm)this.objController).m_TestORDERIDIsSon(order, out m_blSon);
                //医嘱类型
                clsT_aid_bih_ordercate_VO p_objItem = null;
                if (((clsCtl_OrderNurseConfirm)this.objController).m_htOrderCate.Contains(order.m_strOrderDicCateID))
                {
                    p_objItem = (clsT_aid_bih_ordercate_VO)((clsCtl_OrderNurseConfirm)this.objController).m_htOrderCate[order.m_strOrderDicCateID];
                }
                if (p_objItem != null)
                {
                    if (p_objItem.m_intAPPENDVIEWTYPE_INT == 1) //末执行及首次执行的才显示补次及补次的合计量


                    {
                    }
                    else
                    {
                        MessageBox.Show("当前医嘱类型为非补次类型!", "提示框!", MessageBoxButtons.OK, MessageBoxIcon.Information);

                        return;
                    }
                }
                else
                {
                    MessageBox.Show("当前医嘱类型为非补次类型!", "提示框!", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    return;
                }
                if (m_blSon == true || order.m_intExecuteType != 1)
                {
                    if (m_blSon == true)
                    {
                        MessageBox.Show("请单独选择长嘱的父医嘱进行补次操作!", "提示框!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else if (order.m_intExecuteType != 1)
                    {
                        MessageBox.Show("非长期医嘱不能进行补次操作!", "提示框!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                    return;
                }
                /*<==================================*/
                if (order.m_intStatus == 1)
                {
                    cell1.ReadOnly = false;
                }
            }
        }
Example #5
0
        private void trvAddBills_DoubleClick(object sender, System.EventArgs e)
        {
            if (trvAddBills.SelectedNode != null)
            {
                if (trvAddBills.SelectedNode.Parent == null)
                {
                    if (m_intOpenbType == 0)                  //从医嘱录入打开
                    {
                        clsBIHOrderInputDomain.clsOtherBillInfo objCurrentBillInfo = (clsBIHOrderInputDomain.clsOtherBillInfo)(trvAddBills.SelectedNode.Tag);
                        objCurrentBillInfo.m_ParentForm = this.m_frmParent;
                        objCurrentBillInfo.m_ParentForm.objController = this.m_frmParent.objController;
                        objCurrentBillInfo.m_mthShowUI(m_frmParent.LoginInfo);
                        m_lngLoadAddBills();
                    }
                    else if (m_intOpenbType == 1)                 //从医嘱执行打开
                    {
                        clsBIHCanExecOrder objOrders = (clsBIHCanExecOrder)(trvAddBills.SelectedNode.Tag);
                        //医嘱类型ID
                        string strOrderCateID = objOrders.m_strOrderDicCateID.Trim();
                        //医嘱ID
                        string strOrderID = objOrders.m_strOrderID.Trim();
                        //附加单据ID
                        string strAttachID = GetAttachID(strOrderID);
                        //关系表ID
                        clsRelation_VOArr objRelation = new clsRelation_VOArr();
                        long      lngR          = objRelation.m_lngGetRelation("sourceitemid_vchr='" + strOrderID.Trim() + "'");
                        string    strRelationID = objRelation.m_objValues[0].m_strATTARELAID_CHR.Trim();
                        DataTable dtbAddBills   = null;
                        long      lngRes        = m_lngGetAddBillByOrderID(strOrderID.Trim(), out dtbAddBills);

                        clsT_aid_bih_ordercate_VO objResult = null;
                        clsDcl_InputOrder         objTem    = new clsDcl_InputOrder();
                        lngRes = objTem.m_lngGetAidOrderCateByID(strOrderCateID, out objResult);
                        if (lngRes <= 0 || objResult == null)
                        {
                            return;
                        }

                        string strDllName    = objResult.m_strDLLNAME_VCHR;
                        string strClassName  = objResult.m_strCLASSNAME_VCHR;
                        string strInsertName = objResult.m_strOPRADD_VCHR;
                        string strUpdateName = objResult.m_strOPRUPD_VCHR;

                        System.Reflection.Assembly objAsm = System.Reflection.Assembly.LoadFrom(strDllName);

                        if (objAsm == null)
                        {
                            return;
                        }
                        object[] objParams = new object[1];

                        objParams[0] = strAttachID.Trim();

                        object obj;
                        try
                        {
                            obj = objAsm.CreateInstance(strClassName, true, System.Reflection.BindingFlags.Default, null, objParams, null, new object[0] {
                            });
                        }
                        catch (System.Exception err)
                        {
                            string strMsg = err.Message.ToString();
                            MessageBox.Show(strMsg);
                            return;
                        }
                        if (obj == null)
                        {
                            return;
                        }
                        //打开窗体
                        ((Form)obj).ShowDialog();
                        Type objType = obj.GetType();
                        System.Reflection.PropertyInfo objMi = objType.GetProperty("m_StrRecordID");
                        string strAddBillRecordID            = objMi.GetValue(obj, null).ToString();
                        if (strAddBillRecordID.Trim() != "")
                        {
                            m_lngSaveAddBill(strAddBillRecordID.Trim(), strRelationID, strOrderID);
                        }
                        return;
                    }
                }
            }
        }