Example #1
0
        private void LoadImageFromModel(Model.VisaInfo_Tmp model)
        {
            if (model == null)
            {
                picPassportNo.Image = Resources.PassportPictureNotFound;
                return;
            }

            if (!PassportPicHandler.CheckAndDownloadIfNotExist(model.PassportNo, PassportPicHandler.PicType.Type01Normal))
            {
                picPassportNo.Image = Resources.PassportPictureNotFound;
                return;
            }

            picPassportNo.Image = GlobalUtils.LoadImageFromFileNoBlock(GlobalUtils.PassportPicPath + "\\" + model.PassportNo + ".jpg");
        }
Example #2
0
 /// <summary>
 /// 自动识别线程函数
 /// </summary>
 /// <param name="o"></param>
 private void AutoClassAndRecognize(object o)
 {
     while (_autoReadThreadRun)
     {
         Thread.Sleep(200);
         Model.VisaInfo_Tmp model = _idCard.AutoClassAndRecognize(this.txtPicPath.Text, checkRegSucShowDlg.Checked);
         if (model != null)
         {
             //读取成功了
             if (!_bllVisaInfoTmp.Add(model))
             {
                 MessageBoxEx.Show(Resources.FailedAddToDatabase);
                 return;
             }
             LoadDataToList();
             _curIdx = 0;
             UpdateState();
         }
     }
 }
Example #3
0
 /// <summary>
 /// 这里一定不能自己去new 一个model然后返回,会丢失掉原有的model里的其他信息!
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 private bool CtrlsToModel(Model.VisaInfo_Tmp model)
 {
     try
     {
         model.Name        = txtName.Text;
         model.EnglishName = txtEnglishName.Text;
         model.Sex         = txtSex.Text;
         model.Birthday    = DateTime.Parse(txtBirthday.Text);
         model.PassportNo  = txtPassNo.Text;
         model.LicenceTime = DateTime.Parse(txtLicenseTime.Text);
         model.ExpiryDate  = DateTime.Parse(txtExpireDate.Text);
         model.Birthplace  = txtBirthPlace.Text;
         model.IssuePlace  = txtIssuePlace.Text;
         return(true);
     }
     catch (Exception)
     {
         MessageBoxEx.Show(Resources.PleaseCheckDateTimeFormat);
         return(false);
     }
 }
Example #4
0
        /// <summary>
        /// 根据curIdx更新标签,待检查数量,_model,picbox,ctrls,dgv显示
        /// </summary>
        public void UpdateState()
        {
            _recordCount = _list.Count;

            if (_curIdx == 0 || _recordCount == 0)
            {
                btnPre.Enabled = false;
            }
            else
            {
                btnPre.Enabled = true;
            }
            if (_curIdx == _recordCount - 1 || _recordCount == 0)
            {
                btnNext.Enabled = false;
            }
            else
            {
                btnNext.Enabled = true;
            }

            lbRecordCount.Text = "待校验信息:" + _recordCount + "条.";
            if (_list.Count > _curIdx)
            {
                _model = _list[_curIdx];
                ModelToCtrls(_model);
                LoadImageFromModel(_model);
            }

            //设置保存图像按钮
            if (_model == null)
            {
                btnSaveAll.Enabled     = false;
                btnSaveHeadPic.Enabled = false;
                btnSaveIR.Enabled      = false;
                btnSavePic.Enabled     = false;
            }
            else
            {
                btnSaveAll.Enabled     = true;
                btnSaveHeadPic.Enabled = true;
                btnSaveIR.Enabled      = true;
                btnSavePic.Enabled     = true;
            }

            //更新dgv显示

            int curSelectedCol = -1; //保持列选中,有点问题还

            if (dgvWait4Check.SelectedCells.Count > 0)
            {
                curSelectedCol = dgvWait4Check.SelectedCells[0].ColumnIndex;
            }

            dgvWait4Check.DataSource = null;
            if (_list != null && _list.Count > 0) //这里必须判断count大于0,不然有bug,参见https://www.cnblogs.com/seasons1987/p/3513135.html
            {
                dgvWait4Check.DataSource = _list;
            }
            if (_recordCount == 0)
            {
                return;
            }
            if (curSelectedCol != -1 && dgvWait4Check.Rows.Count > _curIdx)
            {
                dgvWait4Check.CurrentCell = dgvWait4Check.Rows[_curIdx].Cells[curSelectedCol];
            }
        }