private void btnLoad_Click(object sender, EventArgs e) { loadClass = new LoadFromInet(); bdcInet = loadClass.BDCInet; int fileNum = 0; string barcText = tbPersonNum.Text.Trim(); if (barcText == string.Empty) { WinFormsServ.Error("Не введен номер"); return; } //if (barcText.Length == 7) //{ // if (barcText.StartsWith("2")) // { // WinFormsServ.Error("Выбран человек, подавший заявления в магистратуру"); // return; // } // barcText = barcText.Substring(1); //} if (!int.TryParse(barcText, out fileNum)) { WinFormsServ.Error("Неправильно введен номер"); return; } if (MainClass.CheckPersonBarcode(fileNum)) { try { //extPerson person = loadClass.GetPersonByBarcode(fileNum); DataTable dtEge = new DataTable(); //if(person != null) //{ // string queryEge = "SELECT EgeMark.Id, EgeMark.EgeExamNameId AS ExamId, EgeMark.Value, EgeCertificate.PrintNumber, EgeCertificate.Number, EgeMark.EgeCertificateId FROM EgeMark LEFT JOIN EgeCertificate ON EgeMark.EgeCertificateId = EgeCertificate.Id LEFT JOIN Person ON EgeCertificate.PersonId = Person.Id"; // DataSet dsEge = bdcInet.GetDataSet(queryEge + " WHERE Person.Barcode = " + fileNum + " ORDER BY EgeMark.EgeCertificateId "); // dtEge = dsEge.Tables[0]; //} CardFromInet crd = new CardFromInet(fileNum, null, true); crd.ToUpdateList += UpdateDataGrid; crd.Show(); } catch (Exception exc) { WinFormsServ.Error(exc.Message); tbPersonNum.Text = ""; tbPersonNum.Focus(); } } else { UpdateDataGrid(); using (PriemEntities context = new PriemEntities()) { extPersonAll person = (from per in context.extPersonAll where per.Barcode == fileNum select per).FirstOrDefault(); string fio = person.FIO; string num = person.PersonNum; string persId = person.Id.ToString(); WinFormsServ.Search(this.dgvAbiturients, "PersonNum", num); DialogResult dr = MessageBox.Show(string.Format("Абитуриент {0} с данным номером баркода уже импортирован в базу.\nОткрыть карточку абитуриента?", fio), "Внимание", MessageBoxButtons.YesNo); if (dr == System.Windows.Forms.DialogResult.Yes) { MainClass.OpenCardPerson(persId, this, null); } } } tbPersonNum.Text = ""; tbPersonNum.Focus(); loadClass.CloseDB(); }
private void btnLoad_Click(object sender, EventArgs e) { try { string barcText = tbAbitBarcode.Text.Trim(); if (barcText.Length > 0) { if (barcText.Length == 7)//если баркод введён полностью, с префиксом { if (barcText.StartsWith("1")) { WinFormsServ.Error("Выбран человек, подавший заявления для граждан РФ на первый курс!"); return; } if (barcText.StartsWith("2")) { WinFormsServ.Error("Выбран человек, подавший заявления для граждан РФ в магистратуру!"); return; } barcText = barcText.Substring(1); } int code; if (!int.TryParse(barcText, out code)) { WinFormsServ.Error("Не распознан баркод!"); return; } if (code == 0) { WinFormsServ.Error("Не распознан баркод!"); return; } using (PriemEntities context = new PriemEntities()) { int cnt = (from ab in context.Abiturient where ab.CommitNumber == code select ab).Count(); if (cnt > 0) { WinFormsServ.Error("Запись уже добавлена!"); return; } bool t = false; for (int i = 0; i < dgvAbiturients.Rows.Count; i++) { if (dgvAbiturients.Rows[i].Cells["Barcode"].Value.ToString() == code.ToString()) { dgvAbiturients.CurrentCell = dgvAbiturients["ФИО", i]; t = true; break; } } if (!t) { //поиск заявления в зоне видимости приёмной комиссии var entries = context.qEntry.Select(x => x.Id).ToList(); string lstEntries = Util.BuildStringWithCollection(entries.Select(x => "'" + x.ToString() + "'").ToList()); string query = string.Format("SELECT Barcode, FacultyId, LicenseProgramId, ObrazProgramId, ProfileId, StudyBasisId FROM qAbiturient WHERE Barcode=@Barcode AND EntryId IN ({0})", lstEntries); DataTable tbl = BdcInet.GetDataSet(query, new SortedList <string, object>() { { "@Barcode", code } }).Tables[0]; if (tbl.Rows.Count == 0) { WinFormsServ.Error("Запись не найдена!"); return; } } tbAbitBarcode.Text = string.Empty; CardFromInet crd = new CardFromInet(null, code, false); crd.ToUpdateList += UpdateDataGrid; crd.Show(); } } } catch (Exception ex) { WinFormsServ.Error("Ошибка при заполнении формы " + ex.Message); } }