Example #1
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            SetWindows();

            MyData.MySqlite            = new MySqliteClass();
            MyData.MySqlite.DbFileName = Environment.CurrentDirectory + "//OctData.dat";
            if (!MyData.MySqlite.OpenDb())
            {
                MessageBox.Show("系统数据错误(" + MyData.MySqlite.ErrMsg + "),请更正!", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Warning);
                this.Close();
                return;
            }

            string sErr = "";

            if (!MyData.MySqlite.GetRefe(ref sErr))
            {
                MyTools.ShowMsg("读参数表错误!", sErr);
                this.Close();
                return;
            }

            textBox_TopicString.Text  = "请输入关键词检索(*代表全部)";
            textBox_SearchString.Text = "";
            textBox_SearchString.Focus();
        }
Example #2
0
        private void button_Save_Click(object sender, RoutedEventArgs e)
        {
            string sSql = "";

            TextBox_Doctor.Text    = TextBox_Doctor.Text.Trim();
            TextBox_CheckInfo.Text = TextBox_CheckInfo.Text.Trim();
            if (TextBox_Doctor.Text != sDoctor_Tmp || TextBox_CheckInfo.Text != sCheckInfo_Tmp)
            {
                // 有变化才需要保存
                sSql = "Update Record Set Doctor = '" + TextBox_Doctor.Text + "', CheckInfo = '" + TextBox_CheckInfo.Text + "' where RecordID = " + sRecordID_Tmp;
                int    iId  = -1;
                string sErr = "";
                if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                {
                    MyTools.ShowMsg("保存数据时出现错误!", sErr);
                }
                else
                {
                    MyTools.ShowMsg("保存成功!", "");
                }
                sDoctor_Tmp      = TextBox_Doctor.Text;
                sCheckInfo_Tmp   = TextBox_CheckInfo.Text;
                bIsEditCheckInfo = true;
            }
        }
Example #3
0
        private void button_Delete_Click(object sender, RoutedEventArgs e)
        {
            string sSql = "";

            System.Windows.MessageBoxResult dr = MessageBox.Show("确定删除标记?", "温馨提示", MessageBoxButton.YesNo, MessageBoxImage.Warning);
            if (dr == MessageBoxResult.Yes)
            {
                if (iMarkID != -1)
                {
                    sSql = "Delete From Mark where MarkID = " + iMarkID;
                    int    iId  = -1;
                    string sErr = "";
                    if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                    {
                        MyTools.ShowMsg("删除数据时出现错误!", sErr);
                    }
                    else
                    {
                        MyTools.ShowMsg("删除成功!", "");
                    }

                    IsDele = true;
                }
                this.Hide();
            }
        }
Example #4
0
        private void button_Save_Click(object sender, RoutedEventArgs e)
        {
            string sFileName = "";

            try
            {
                PathName.Text = PathName.Text.Trim();
                FileName.Text = FileName.Text.Trim();
                if (PathName.Text == "" || FileName.Text == "")
                {
                    MyTools.ShowMsg("请选择正确的保存路径和文件名。", "");
                    return;
                }

                sFileName = PathName.Text + "\\" + FileName.Text + ExtName.SelectionBoxItem.ToString().Substring(1);

                if (File.Exists(sFileName))
                {
                    DialogResult dr = System.Windows.Forms.MessageBox.Show("已经存在同名文件,是否覆盖?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (dr == System.Windows.Forms.DialogResult.No)
                    {
                        return;
                    }
                }

                BitmapSource BS = (BitmapSource)pImage.Source;
                if (ExtName.SelectedIndex == 0)       // png
                {
                    PngBitmapEncoder PBE = new PngBitmapEncoder();
                    PBE.Frames.Add(BitmapFrame.Create(BS));
                    using (Stream stream = File.Create(sFileName))
                    {
                        PBE.Save(stream);
                    }
                }
                else
                {
                    JpegBitmapEncoder JBE = new JpegBitmapEncoder();
                    JBE.Frames.Add(BitmapFrame.Create(BS));
                    using (Stream stream = File.Create(sFileName))
                    {
                        JBE.Save(stream);
                    }
                }
                MyTools.ShowMsg("保存成功!", "");
            }
            catch (Exception ex)
            {
                MyTools.ShowMsg("保存失败。", ex.Message);
            }
        }
Example #5
0
        private void button_Delete_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxResult RS = MessageBox.Show("确定删除当前受检人员的资料(包括检验记录)?", "温馨提示", MessageBoxButton.YesNo, MessageBoxImage.Warning);

            if (RS == MessageBoxResult.Yes)
            {
                string sSql = "";
                string sErr = "";
                int    iId  = -1;
                try
                {
                    sSql = "Delete From Mark Where FILEID = " + ThisPatient.FileID;
                    if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                    {
                        MyTools.ShowMsg("删除Mark表数据时出现错误!", sErr);
                    }

                    sSql = "Delete From Record Where FILEID = " + ThisPatient.FileID;
                    sErr = "";
                    iId  = -1;
                    if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                    {
                        MyTools.ShowMsg("删除Record表数据时出现错误!", sErr);
                    }

                    sSql = "Delete From Patient Where FILEID = " + ThisPatient.FileID;
                    sErr = "";
                    iId  = -1;
                    if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                    {
                        MyTools.ShowMsg("删除Patient表数据时出现错误!", sErr);
                    }

                    Patient_DataTable.Rows[iSeleID].Delete();
                }
                catch
                {
                    MyTools.ShowMsg("删除Patient表数据时出现错误!", sErr);
                }
                IsDele = true;
                ExitWindows();
            }
        }
Example #6
0
 private void TextBlock_Search_MouseDown(object sender, MouseButtonEventArgs e)
 {
     if (textBox_SearchString.Text.Trim().Length > 0)
     {
         frm_SearchPatient Frm_SearchPatient = new frm_SearchPatient();
         Frm_SearchPatient.IsFirst       = true;
         Frm_SearchPatient.sSearchString = textBox_SearchString.Text;
         Frm_SearchPatient.IsShowInput   = false;
         Frm_SearchPatient.pfrm_Start    = this;
         Frm_SearchPatient.Owner         = this;
         this.ShowInTaskbar = false;
         this.IsEnabled     = false;
         Frm_SearchPatient.ShowDialog();
     }
     else
     {
         MyTools.ShowMsg("没有输入检索关键词!", "");
     }
 }
Example #7
0
        private void ExitWindows()
        {
            if (IsEdit)
            {
                //ThisPatient.FileID = Patient_DataTable.Rows[iSeleID]["FileID"].ToString();
                Patient_DataTable.Rows[iSeleID]["PatientID"]  = ThisPatient.PatientID;
                Patient_DataTable.Rows[iSeleID]["Name"]       = ThisPatient.Name;
                Patient_DataTable.Rows[iSeleID]["Birthday"]   = ThisPatient.Birthday;
                Patient_DataTable.Rows[iSeleID]["Sex"]        = ThisPatient.Sex;
                Patient_DataTable.Rows[iSeleID]["Address"]    = ThisPatient.Address;
                Patient_DataTable.Rows[iSeleID]["Tele"]       = ThisPatient.Tele;
                Patient_DataTable.Rows[iSeleID]["IdentifyID"] = ThisPatient.IdentifyID;
                Patient_DataTable.Rows[iSeleID]["Memo"]       = ThisPatient.Memo;

                string sSql = "";
                string sErr = "";
                int    iId  = -1;
                try
                {
                    sSql = "Update Patient Set PATIENTID = '" + ThisPatient.PatientID + "'," +
                           "NAME = '" + ThisPatient.Name + "'," +
                           "BIRTHDAY = '" + ThisPatient.Birthday + "'," +
                           "SEX = '" + ThisPatient.Sex + "'," +
                           "ADDRESS = '" + ThisPatient.Address + "'," +
                           "TELE = '" + ThisPatient.Tele + "'," +
                           "IDENTIFYID = '" + ThisPatient.IdentifyID + "'," +
                           "MEMO = '" + ThisPatient.Memo + "'" +
                           " Where FILEID = " + ThisPatient.FileID;
                    if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                    {
                        MyTools.ShowMsg("修改Patient表数据时出现错误!", sErr);
                    }
                }
                catch (Exception ex)
                {
                    MyTools.ShowMsg("修改Patient表数据时出现异常错误!", ex.Message);
                }
            }
            this.Hide();
        }
Example #8
0
        private void button_Delete_Click(object sender, RoutedEventArgs e)
        {
            string sSql = "";

            System.Windows.Forms.DialogResult dr = System.Windows.Forms.MessageBox.Show("真的删除检验记录?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
            if (dr == System.Windows.Forms.DialogResult.Yes)
            {
                sSql = "Delete From Record where RecordID = " + sRecordID_Tmp;
                int    iId  = -1;
                string sErr = "";
                if (!MyData.MySqlite.WriteData(sSql, false, ref iId, ref sErr))
                {
                    MyTools.ShowMsg("删除数据时出现错误!", sErr);
                }
                else
                {
                    MyTools.ShowMsg("删除成功!", "");
                }

                bIsDeleCheckInfo = true;
                this.Hide();
            }
        }
        private void Button_Restore_ForSetup_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxResult rt = MessageBox.Show("使用默认参数替换当前参数吗?", "温馨提示", MessageBoxButton.YesNo, MessageBoxImage.Warning);
            if (rt == MessageBoxResult.Yes)
            {
                MyData.BrightCurrent = MyData.BrightDefault;
                MyData.ContractCurrent = MyData.ContractDefault;
                MyData.SaturationCurrent = MyData.SaturationDefault;
                MyData.ColorCurrent = MyData.ColorDefault;
                MyData.AngleCurrent = MyData.AngleDefault;
                MyData.DelayCurrent = MyData.DelayDefault;

                string sErr = "";
                if (!MyData.MySqlite.SetRefe(ref sErr))
                {
                    MyTools.ShowMsg("把参数写入文件时出错", sErr);
                }
                else
                {
                    MyTools.ShowMsg("当前参数保存成功", sErr);
                }
            }
        }
Example #10
0
        private void button_Import_Click(object sender, RoutedEventArgs e)
        {
            string sTmp     = "";
            bool   bIsExist = false;

            if (ListBox_SelectFile.Items.Count <= 0)                     // 没有选择文件
            {
                MessageBox.Show("没有选择导入文件。", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }
            ButtonEnable(false);

            int iStep = 100 / ListBox_SelectFile.Items.Count;

            for (int i = 0; i < ListBox_SelectFile.Items.Count; i++)
            {
                sTmp = ListBox_SelectFile.Items[i].ToString();
                if (!File.Exists(sTmp))
                {
                    MessageBox.Show("文件 " + sTmp + " 不存在,请检查。" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                    continue;
                }

                mod_ReadGen2.Gen2_Struct Gen2_Struct1;
                mod_GG gg1         = null;
                string sErrString  = "";
                string sExtendName = System.IO.Path.GetExtension(sTmp);

                try
                {
                    if (sExtendName == ".gen2")
                    {
                        Gen2_Struct1 = new mod_ReadGen2.Gen2_Struct();
                        if (mod_ReadGen2.ReadGen2FromFile(sTmp, ref Gen2_Struct1, ref sErrString) != MyData.iErr_Succ)
                        {
                            MessageBox.Show("读取文件 " + sTmp + " 时出错:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }
                    }
                    else  // gg File
                    {
                        gg1          = new mod_GG();
                        Gen2_Struct1 = new mod_ReadGen2.Gen2_Struct();
                        if (gg1.ReadggHeader(sTmp, ref sErrString) != MyData.iErr_Succ)
                        {
                            MessageBox.Show("读取文件 " + sTmp + " 时出错:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }

                        if (!gg1.ggFileMoveToFrame("Top", 0, ref sErrString))
                        {
                            MessageBox.Show("读取文件 " + sTmp + " 时出错:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }

                        if (!gg1.ReadRawFrameDataFromFile(ref gg1.ggData.m_ggframe_info, ref gg1.ggData.m_lprawdata, ref gg1.ggData.m_lpimagedata, ref sErrString))
                        {
                            MessageBox.Show("读取文件 " + sTmp + " 时出错:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }

                        if (mod_ReadGen2.ReadGen2FromGGClass(gg1, ref Gen2_Struct1, ref sErrString) != MyData.iErr_Succ)
                        {
                            MessageBox.Show("读取文件 " + sTmp + " 时出错:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }
                    }

                    if (Ask_Patient == "Ask")
                    {
                        if (MyData.MySqlite.FindPatient(Gen2_Struct1.m_patientid, ref bIsExist, ref sErrString))
                        {
                            if (bIsExist)
                            {
                                IsAnswer    = false;
                                sAnswerMode = "";

                                TextBlock_Question.Text = "数据库已存在档案号 = " + Gen2_Struct1.m_patientid + "的资料,请选择:";
                                RepeatDisp(Visibility.Visible);
                                button_Continue.Focus();

                                while (!IsAnswer)
                                {
                                    MyTools.DoEvents();
                                    Thread.Sleep(100);
                                }

                                RepeatDisp(Visibility.Hidden);
                                if (sAnswerMode == "Stop")
                                {
                                    MyTools.ShowMsg("你已中断了导入功能!", "");
                                    ButtonEnable(true);
                                    if (sExtendName == ".gg")
                                    {
                                        gg1.ggClose();
                                    }
                                    return;
                                }
                                else
                                {
                                    if ((bool)RadioButton_Cover.IsChecked)
                                    {
                                        iCoverMode_Patient = MyData.iDataCoverMode_Cover;
                                    }
                                    else if ((bool)RadioButton_NotCover.IsChecked)
                                    {
                                        iCoverMode_Patient = MyData.iDataCoverMode_NotCover;
                                    }
                                    else
                                    {
                                        iCoverMode_Patient = MyData.iDataCoverMode_New;
                                    }

                                    if ((bool)RadioButton_Same.IsChecked)
                                    {
                                        Ask_Patient = "Same";
                                    }
                                    else
                                    {
                                        Ask_Patient = "Ask";
                                    }
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show("检查数据库时出现错误:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }
                    }

                    if (Ask_Record == "Ask")
                    {
                        if (MyData.MySqlite.FindRecord(Gen2_Struct1.m_patientid, Gen2_Struct1.m_image_datatime, ref bIsExist, ref sErrString))
                        {
                            if (bIsExist)
                            {
                                IsAnswer    = false;
                                sAnswerMode = "";

                                TextBlock_Question.Text = Gen2_Struct1.m_patientid + " 的档案已存在检查时间 = " + Gen2_Struct1.m_image_datatime + " 的记录,请选择:";
                                RepeatDisp(Visibility.Visible);
                                button_Continue.Focus();

                                while (!IsAnswer)
                                {
                                    MyTools.DoEvents();
                                    Thread.Sleep(100);
                                }

                                RepeatDisp(Visibility.Hidden);
                                if (sAnswerMode == "Stop")
                                {
                                    MyTools.ShowMsg("你已中断了导入功能!", "");
                                    ButtonEnable(true);
                                    if (sExtendName == ".gg")
                                    {
                                        gg1.ggClose();
                                    }
                                    return;
                                }
                                else
                                {
                                    if ((bool)RadioButton_Cover.IsChecked)
                                    {
                                        iCoverMode_Record = MyData.iDataCoverMode_Cover;
                                    }
                                    else if ((bool)RadioButton_NotCover.IsChecked)
                                    {
                                        iCoverMode_Record = MyData.iDataCoverMode_NotCover;
                                    }
                                    else
                                    {
                                        iCoverMode_Record = MyData.iDataCoverMode_New;
                                    }

                                    if ((bool)RadioButton_Same.IsChecked)
                                    {
                                        Ask_Record = "Same";
                                    }
                                    else
                                    {
                                        Ask_Record = "Ask";
                                    }
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show("检查数据库时出现错误:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                            goto ggEend;
                        }
                    }

                    // Insert into DB
                    if (mod_ReadGen2.Gen2DataToDB(sTmp, Gen2_Struct1,
                                                  true,                              // Check PatientID
                                                  false,                             // Check Name
                                                  iCoverMode_Patient,
                                                  true,
                                                  iCoverMode_Record,
                                                  ref sErrString) == MyData.iErr_Succ)
                    {
                        //MyTools.ShowMsg("导入成功!", "");
                    }
                    else
                    {
                        MessageBox.Show("导入文件 " + sTmp + " 时出错:" + sErrString + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                    }

ggEend:
                    if (sExtendName == ".gg")
                    {
                        gg1.ggClose();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("导入文件 " + sTmp + " 时出现意外错误:" + ex.Message + ",请检查!" + System.Environment.NewLine + "按任意键继续......", "温馨提示", MessageBoxButton.OK, MessageBoxImage.Information);
                }

                progressBar_Read.Value += iStep;
                MyTools.DoEvents();
            }
            progressBar_Read.Value = 100;
            MyTools.ShowMsg("已完成所选文件的导入!", "");
            ButtonEnable(true);
        }
        private void Button_Save_ForSetup_Click(object sender, RoutedEventArgs e)
        {
            int i = -1;
            int iBright = -1, iContract = -1, iSaturation = -1, iColor = -1, iAngle = -1, iDelay = -1;
            try
            {
                for ( i = 0; i < 6; i++)
                {
                    switch (i)
                    {
                        case 0:
                            iBright = int.Parse(textBox_Bright_ForSetup.Text.Trim());
                            if (iBright < -100 || iBright > 100)
                            {
                                throw new Exception("参数值错误");
                            }
                            break;
                        case 1:
                            iContract = int.Parse(textBox_Contract_ForSetup.Text.Trim());
                            if (iContract < -100 || iContract > 100)
                            {
                                throw new Exception("参数值错误");
                            }
                            break;
                        case 2:
                            iSaturation = int.Parse(textBox_Saturation_ForSetup.Text.Trim());
                            if (iSaturation < -100 || iSaturation > 100)
                            {
                                throw new Exception("参数值错误");
                            }
                            break;
                        case 3:
                            iColor = combo_Box_Color_ForSetup.SelectedIndex;
                            break;
                        case 4:
                            iAngle = int.Parse(textBox_Angle_ForSetup.Text.Trim());
                            if (iAngle < 0 || iAngle > 360)
                            {
                                throw new Exception("参数值错误");
                            }
                            break;
                        case 5:
                            iDelay = int.Parse(textBox_Delay_ForSetup.Text.Trim());
                            if (iDelay < 0 || iDelay > 5000)
                            {
                                throw new Exception("参数值错误");
                            }
                            break;
                    }
                }
            }
            catch(Exception ex)
            {
                string sField = "图像亮度,图像对比,图像平滑,图像颜色,截面角度,播放间隔,".Substring(i * 5, 4);
                MyTools.ShowMsg("“" + sField + "”参数错误。", ex.Message);
                return;
            }

            MessageBoxResult rt = MessageBox.Show("把当前参数保存为默认配置吗?", "温馨提示", MessageBoxButton.YesNo, MessageBoxImage.Warning);
            if (rt == MessageBoxResult.Yes)
            {
                MyData.BrightDefault = iBright;
                MyData.ContractDefault = iContract;
                MyData.SaturationDefault = iSaturation;
                MyData.ColorDefault = iColor;
                MyData.AngleDefault = iAngle;
                MyData.DelayDefault = iDelay;

                MyData.BrightCurrent = iBright;
                MyData.ContractCurrent = iContract;
                MyData.SaturationCurrent = iSaturation;
                MyData.ColorCurrent = iColor;
                MyData.AngleCurrent = iAngle;
                MyData.DelayCurrent = iDelay;

                string sErr = "";
                if (!MyData.MySqlite.SetRefe(ref sErr))
                {
                    MyTools.ShowMsg("把参数写入文件时出错", sErr);
                }
                else
                {
                    MyTools.ShowMsg("默认参数保存成功", sErr);
                }
            }
        }