示例#1
0
        /// <summary>
        /// 查找患者信息
        /// </summary>
        protected virtual void QueryPaitentInfo()
        {
            string cardNO  = string.Empty;
            string tempStr = this.txtMarkNO.Text.Trim();
            string showStr = string.Empty;

            if (tempStr == string.Empty)
            {
                return;
            }
            if (InputType == EnumInputType.MarkNO)
            {
                accountCard = new Neusoft.HISFC.Models.Account.AccountCard();
                int resultValue = accountManager.GetCardByRule(tempStr, ref accountCard);
                if (resultValue <= 0)
                {
                    MessageBox.Show(accountManager.Err);
                    this.txtMarkNO.Focus();
                    this.txtMarkNO.SelectAll();
                    return;
                }
                if (this.accountCard.Patient == null)
                {
                    return;
                }
                cardNO  = this.accountCard.Patient.PID.CardNO;
                showStr = accountCard.MarkNO;
            }
            if (InputType == EnumInputType.CardNO)
            {
                cardNO = tempStr;
                //cardNO = cardNO.PadLeft(HISFC.BizProcess.Integrate.Common.ControlParam.GetCardNOLen(), '0');
                cardNO  = cardNO.PadLeft(10, '0');
                showStr = cardNO;
            }
            this.txtMarkNO.Text           = showStr;
            this.ucRegPatientInfo1.CardNO = cardNO;
            oldPatient = this.ucRegPatientInfo1.GetPatientInfomation().Clone();

            #region 集成平台EMPI
            if (oldPatient == null || string.IsNullOrEmpty(oldPatient.Name))
            {
                //if (this.empiManager.GetInpatientEMPI(this.ucRegPatientInfo1.CardNO,ref oldPatient) == -1)
                //{
                //    Neusoft.FrameWork.Management.PublicTrans.RollBack();
                //    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg(this.empiManager.Err));

                //    return;
                //}
            }

            #endregion

            this.ucRegPatientInfo1.Focus();
        }
示例#2
0
        /// <summary>
        /// 保存患者信息
        /// </summary>
        protected virtual void SavePatient()
        {
            if (!this.ucRegPatientInfo1.InputValid())
            {
                return;
            }
            HISFC.Models.RADT.PatientInfo patient = this.ucRegPatientInfo1.GetPatientInfomation();
            FrameWork.Management.PublicTrans.BeginTransaction();
            #region 更新患者基本信息
            int resultValue = radtIntegrate.UpdatePatientInfo(patient);
            if (resultValue <= 0)
            {
                FrameWork.Management.PublicTrans.RollBack();
                MessageBox.Show("保存患者信息失败!" + accountManager.Err);
                return;
            }
            #endregion

            //变更记录由触发器代替

            resultValue = functionIntegrate.SaveChange <HISFC.Models.RADT.Patient>(false, false, patient.PID.CardNO, oldPatient, patient);
            if (resultValue < 0)
            {
                FrameWork.Management.PublicTrans.RollBack();
                MessageBox.Show("生成变更记录失败!");
                return;
            }

            #region 集成平台EMPI

            //if (this.empiManager.SaveOutpatientEMPI(this.ucRegPatientInfo1.GetPatientInfomation()) == -1)
            //{
            //    Neusoft.FrameWork.Management.PublicTrans.RollBack();
            //    MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg(this.empiManager.Err));
            //    return;
            //}

            #endregion

            FrameWork.Management.PublicTrans.Commit();
            MessageBox.Show("保存患者信息成功!");
            this.ucRegPatientInfo1.Clear();
            this.txtMarkNO.Text = string.Empty;
            this.txtMarkNO.Focus();
        }
        /// <summary>
        /// �޸��ʻ�����
        /// </summary>
        /// <returns>1�ɹ� -1 ʧ��</returns>
        protected virtual int UpdatePWd()
        {
            //�����ʻ�������Ϣ
            HISFC.Models.RADT.PatientInfo patient = radtIntegrate.QueryComPatientInfo(account.CardNO);
            if (patient == null)
            {
                MessageBox.Show("���һ�����Ϣʧ�ܣ�");
                return(-1);
            }
            Neusoft.FrameWork.Management.PublicTrans.BeginTransaction();
            //�޸��ʻ�����
            int resultValue = accountManager.UpdatePassWordByCardNO(account.ID, this.txtnewpwd.Text.Trim());

            if (resultValue < 0)
            {
                Neusoft.FrameWork.Management.PublicTrans.RollBack();
                MessageBox.Show("�޸��ʻ�����ʧ�ܣ�" + accountManager.Err, "����");
                return(-1);
            }
            #region �ʻ�������¼
            HISFC.Models.Account.AccountRecord accountRecord = new Neusoft.HISFC.Models.Account.AccountRecord();
            //������Ϣ
            accountRecord.AccountNO   = this.account.ID;                                                         //�ʺ�
            accountRecord.Patient     = patient;                                                                 //���│��
            accountRecord.DeptCode    = (accountManager.Operator as Neusoft.HISFC.Models.Base.Employee).Dept.ID; //���ұ���
            accountRecord.Oper        = accountManager.Operator.ID;                                              //����Ա
            accountRecord.OperTime    = accountManager.GetDateTimeFromSysDateTime();                             //����ʱ��
            accountRecord.IsValid     = true;                                                                    //�Ƿ���Ч
            accountRecord.OperType.ID = (int)HISFC.Models.Account.OperTypes.EditPassWord;
            accountRecord.Oper        = accountManager.Operator.ID;                                              //����Ա
            //�����ʻ�������¼
            resultValue = accountManager.InsertAccountRecord(accountRecord);
            if (resultValue < 0)
            {
                Neusoft.FrameWork.Management.PublicTrans.RollBack();
                MessageBox.Show("�����ʻ�������¼ʧ�ܣ�" + accountManager.Err, "����");
                return(-1);
            }

            #endregion
            Neusoft.FrameWork.Management.PublicTrans.Commit();
            PrintOperRecipe(accountRecord);
            return(1);
        }