Exemple #1
0
        public void VerifSignBack(EmrBindKeyData _currBindKeyData)
        {
            int signtype = 0;

            if (_currBindKeyData.ThreeSignature == 1)
            {
                signtype = 3;
            }
            else if (_currBindKeyData.SecondSignature == 1)
            {
                signtype = 2;
            }
            else if (_currBindKeyData.FirstSignature == 1)
            {
                signtype = 1;
            }
            if (signtype > 0)
            {
                iEmrWriteDbHelper.SignBack(_currBindKeyData.RecordId, signtype);
                _currBindKeyData.SignBack(signtype);
            }
            //emrView.btnSignState();
            //emrView.btnModifyState();
            //GetWriteRecordTreeData();
            //OpenDatabaseToEmr();

            GetWriteRecordTreeData();
        }
Exemple #2
0
        /// <summary>
        /// 模板功能调用此方法
        /// </summary>
        /// <param name="_keyData"></param>
        public void InitLoad(IEmrTemplateDbHelper _emrTemplateDbHelper, EmrBindKeyData _keyData)
        {
            emrDbHelper             = _emrTemplateDbHelper;
            emrView.CurrBindKeyData = _keyData;
            currBindKeyData         = _keyData;
            //DataSourceManage.InitData(emrDataSource);
            EmrToolTipManage.InitEmrToolTip(); //初始化提示控件
            KnowledgeManage.InitKnowledg();    //初始化知识库

            emrView.emrControlType     = EmrControlType.病历模板;
            emrView.emrDatastorageType = EmrDatastorageType.数据库存储;
            emrView.IsShowFileBtn      = false;
            emrView.btnState();
        }
Exemple #3
0
        /// <summary>
        /// 病历书写调用此方法
        /// </summary>
        /// <param name="_keyData"></param>
        public void InitLoad(IEmrWriteDbHelper _emrWriteDbHelper, EmrBindKeyData _keyData, bool IsPreview)
        {
            emrDbHelper             = _emrWriteDbHelper;
            emrView.CurrBindKeyData = _keyData;
            currBindKeyData         = _keyData;
            DataSourceManage.InitData(_emrWriteDbHelper);
            EmrToolTipManage.InitEmrToolTip(); //初始化提示控件
            KnowledgeManage.InitKnowledg();    //初始化知识库

            if (IsPreview)
            {
                emrView.emrControlType = EmrControlType.病历预览;
            }
            else
            {
                emrView.emrControlType = EmrControlType.病历编辑;
            }
            emrView.emrDatastorageType = EmrDatastorageType.数据库存储;
            emrView.IsShowFileBtn      = false;
            emrView.btnState();
        }
Exemple #4
0
        public void VerifSignName(EmrBindKeyData _currBindKeyData, Bitmap imgSign)
        {
            //更新签名数据
            int signtype = 0;

            if (_currBindKeyData.FirstSignature == 0)
            {
                signtype = 1;
            }
            else if (_currBindKeyData.SecondSignature == 0)
            {
                signtype = 2;
            }
            else if (_currBindKeyData.ThreeSignature == 0)
            {
                signtype = 3;
            }
            if (signtype > 0)
            {
                MemoryStream mstream = new MemoryStream();
                imgSign.Save(mstream, System.Drawing.Imaging.ImageFormat.Bmp);
                byte[] byData = new Byte[mstream.Length];
                mstream.Position = 0;
                mstream.Read(byData, 0, byData.Length);
                mstream.Close();

                iEmrWriteDbHelper.SignName(_currBindKeyData.RecordId, signtype, _currBindKeyData.UserCode, _currBindKeyData.UserName, _currBindKeyData.UserLevel, _currBindKeyData.UserLevelName, byData);
                _currBindKeyData.SignName(signtype, _currBindKeyData.UserCode, _currBindKeyData.UserLevel);
                //界面显示签名
            }
            //emrView.btnSignState();
            //emrView.btnModifyState();
            //GetWriteRecordTreeData();
            //OpenDatabaseToEmr();

            GetWriteRecordTreeData();
        }
 public void InitData(EMR.Controls.Action.EmrBindKeyData keydata)
 {
     throw new NotImplementedException();
 }
Exemple #6
0
 public void VerifSignNameState(EmrBindKeyData _currBindKeyData, out bool sign, out bool back)
 {
     sign = false;
     back = false;
     //1.未签名
     if (_currBindKeyData.FirstSignature == 0)
     {
         //A.本人 1-0
         if (_currBindKeyData.UserCode == _currBindKeyData.DoctorCode)
         {
             sign = true;
             back = false;
         }
         //B.非   0-0
         else
         {
             sign = false;
             back = false;
         }
     }
     //2.一级签名已签
     if (_currBindKeyData.FirstSignature == 1 && _currBindKeyData.SecondSignature == 0)
     {
         //A.本人    0-1
         if (_currBindKeyData.UserCode == _currBindKeyData.DoctorCode)
         {
             sign = false;
             back = true;
         }
         //B.上级医师 1-0
         else if (_currBindKeyData.UserCode != _currBindKeyData.DoctorCode && _currBindKeyData.UserLevel > _currBindKeyData.FirstDoctorLevel)
         {
             sign = true;
             back = false;
         }
         //C.非   0-0
         else
         {
             sign = false;
             back = false;
         }
     }
     //3.二级签名已签
     if (_currBindKeyData.SecondSignature == 1 && _currBindKeyData.ThreeSignature == 0)
     {
         //A.本人    0-1
         if (_currBindKeyData.UserCode == _currBindKeyData.SecondDoctorCode)
         {
             sign = false;
             back = true;
         }
         //B.上级医师 1-0
         else if (_currBindKeyData.UserCode != _currBindKeyData.SecondDoctorCode && _currBindKeyData.UserLevel > _currBindKeyData.SecondDoctorLevel)
         {
             sign = true;
             back = false;
         }
         //C.非   0-0
         else
         {
             sign = false;
             back = false;
         }
     }
     //4.三级签名已签
     if (_currBindKeyData.ThreeSignature == 1)
     {
         //A.本人    0-1
         if (_currBindKeyData.UserCode == _currBindKeyData.ThreeDoctorCode)
         {
             sign = false;
             back = true;
         }
         //B.非   0-0
         else
         {
             sign = false;
             back = false;
         }
     }
 }