private void loadResult(object source, EventArgs eventArg) { try { String response = SendRequestClass.PostRequestAsync("getResult", "").Result; resultClasses = JsonConvert.DeserializeObject <List <ResultClass> >(response); do { foreach (DataGridViewRow row in dataGridView1.Rows) { try { dataGridView1.Rows.Remove(row); } catch (Exception) { } } } while (dataGridView1.Rows.Count > 1); resultClasses.ForEach(delegate(ResultClass r) { int rowNumber = dataGridView1.Rows.Add(); dataGridView1.Rows[rowNumber].Cells["Column1"].Value = r.userName; dataGridView1.Rows[rowNumber].Cells["Column2"].Value = r.examTopic; dataGridView1.Rows[rowNumber].Cells["Column3"].Value = r.score; dataGridView1.Rows[rowNumber].Cells["Column4"].Value = r.mark; dataGridView1.Rows[rowNumber].Cells["Column5"].Value = r.dateT; }); } catch (Exception e) { MessageBox.Show("Проверьте соединение с интернетом!", "Ошибка соединения", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Trim().Length > 0 && textBox2.Text.Trim().Length > 0) { AuthorizationClass authorization = new AuthorizationClass(textBox1.Text, textBox2.Text); try { String response = SendRequestClass.PostRequestAsync("login", JsonConvert.SerializeObject(authorization)).Result; Console.WriteLine(response); UserClass user = JsonConvert.DeserializeObject <UserClass>(response); if (user != null) { Form1 form1 = new Form1(user, this); form1.Show(); this.Visible = false; } else { MessageBox.Show("Неверный логин или пароль!", "Ошибка авторизации", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception exception) { MessageBox.Show("Проверьте соединение с интернетом!", "Ошибка соединения", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Логин или пароль должны быть указаны!", "Пустые поля", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public TestMenuForm(bool editing) { InitializeComponent(); if (editing) { this.Controls.Remove(button1); Button updateButton = new Button(); updateButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)))); updateButton.Location = new System.Drawing.Point(12, 389); updateButton.Name = "button1"; updateButton.Size = new System.Drawing.Size(196, 31); updateButton.TabIndex = 1; updateButton.Text = "Изменить тест"; updateButton.UseVisualStyleBackColor = true; updateButton.Click += new System.EventHandler(this.updateButton_Click); Button deleteButton = new Button(); deleteButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)))); deleteButton.Location = new System.Drawing.Point(211, 389); deleteButton.Name = "button1"; deleteButton.Size = new System.Drawing.Size(196, 31); deleteButton.TabIndex = 1; deleteButton.Text = "Удалить тест"; deleteButton.UseVisualStyleBackColor = true; deleteButton.Click += new System.EventHandler(this.deleteButton_Click); this.Controls.Add(updateButton); this.Controls.Add(deleteButton); } Form1.refresEventClass.events += new RefreshClass.EventButtonClickHandler(button2_Click); try { String response = SendRequestClass.PostRequestAsync("getSubjects", "").Result; subjects = JsonConvert.DeserializeObject <List <SubjectClass> >(response); if (subjects.Count > 0) { comboBox1.DataSource = subjects; comboBox1.SelectedIndex = 0; } else { MessageBox.Show("В системе нет ни одного предмета, необходимо добавить!", "Нет предметов", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception exception) { MessageBox.Show("Проверьте соединение с интернетом!", "Ошибка соединения", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void deleteButton_Click(object sender, EventArgs e) { String response = SendRequestClass.PostRequestAsync("deleteTest", "{ \"id\" : " + ((TestClass)listBox1.SelectedItem).Id + " }").Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при удалении теста, обратитесь к админу", "Ошибка при удалении теста", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { MessageBox.Show("Тест успешно удалён!", "Успешное удаление", MessageBoxButtons.OK, MessageBoxIcon.Information); Form1.refresEventClass.StartRefreshEvent(sender, e); } }
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Trim().Length == 0) { MessageBox.Show("ФИО пользователя должно быть заполнено!", "Ошибка регистрации", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (textBox2.Text.Trim().Length != 10) { MessageBox.Show("Номер и серия паспорта должны быть введены корректно!", "Ошибка регистрации", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (textBox3.Text.Trim().Length == 0) { MessageBox.Show("Не указан логин пользователя!", "Ошибка регистрации", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (textBox4.Text.Trim().Length < 8) { MessageBox.Show("Пароль должен быть не меньше 8 символов!", "Ошибка регистрации", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { String response = SendRequestClass.PostRequestAsync("addUser", "{ \"userName\" : \"" + textBox1.Text + "\" ,\n" + " \"passport\" : " + textBox2.Text + " ,\n" + "\"login\" : \"" + textBox3.Text + "\" , \n" + "\"password\" : \"" + textBox4.Text + "\", \n" + "\"status\" : " + (checkBox2.Checked ? 0 : 1) + " }").Result; if (response.Contains("error")) { MessageBox.Show("Ошибка при создани пользователя, обратитесь к админу", "Ошибка при создания пользователя", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (response.Length > 2) { MessageBox.Show(response, "Ошибка при создания пользователя", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } MessageBox.Show("Пользователь создан", "Успех", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } } }
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { try { SubjectClass subjectSelect = (SubjectClass)comboBox1.SelectedItem; String response = SendRequestClass.PostRequestAsync("getTests", "{ \"id\" : " + subjectSelect.Id + "} ").Result; tests = JsonConvert.DeserializeObject <List <TestClass> >(response); fillListBox(); if (tests.Count > 0) { listBox1.SelectedIndex = 0; } } catch (Exception exception) { MessageBox.Show("Проверьте соединение с интернетом!", "Ошибка соединения", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public TestingForm(int id) { idTest = id; coord[0].point = new System.Drawing.Point(7, 20); coord[1].point = new System.Drawing.Point(7, 74); coord[2].point = new System.Drawing.Point(7, 123); coord[3].point = new System.Drawing.Point(216, 20); coord[4].point = new System.Drawing.Point(216, 74); coord[5].point = new System.Drawing.Point(216, 123); coord[6].point = new System.Drawing.Point(421, 20); coord[7].point = new System.Drawing.Point(421, 74); coord[8].point = new System.Drawing.Point(421, 123); String response = SendRequestClass.PostRequestAsync("getTest", "{ \"id\" : " + idTest + " }").Result; allTest = JsonConvert.DeserializeObject <AllTestClass>(response); InitializeComponent(); label1.Text = allTest.Name; this.Text = allTest.Name; newListQuestion(index); }
private void addAnswer(CheckBox checkBox, TextBox textBox, int idQuestion) { String response; if (textBox.Tag != null) { response = SendRequestClass.PostRequestAsync("updateAnswer", "{\"idAnswer\": " + textBox.Tag + " ,\"name\" : \"" + textBox.Text + "\" ," + "\"correct\" : " + (checkBox.Checked ? 1 : 0) + ", \"idQuestion\" : " + idQuestion + "}").Result; } else { response = SendRequestClass.PostRequestAsync("addAnswer", "{\"id\": " + idQuestion + " ,\"name\" : \"" + textBox.Text + "\" ," + "\"correct\" : " + (checkBox.Checked ? 1 : 0) + "}").Result; } if (response.Equals("\terror")) { MessageBox.Show("Ошибка при добавлении ответа, обратитесь к админу", "Ошибка при добавлении ответа", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } }
private void newListQuestion(int index) { if (allTest.questions.Count > index) { Control questionBox = null; groupBox1.Controls.Clear(); if (allTest.questions[index].type == 0) { questionBox = new TextBox(); ((TextBox)questionBox).Multiline = true; ((TextBox)questionBox).Text = allTest.questions[index].question; } else { questionBox = new PictureBox(); try { ((PictureBox)questionBox).Load(allTest.questions[index].question); ((PictureBox)questionBox).SizeMode = PictureBoxSizeMode.StretchImage; } catch (Exception e) { MessageBox.Show("Не возможно загрузить изображение!", "Ошибка загрузки", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } groupBox1.Controls.Add(questionBox); questionBox.Location = new Point(10, 20); questionBox.Width = groupBox1.Width - 20; questionBox.Height = groupBox1.Height - 30; int countCorrect = 0; groupBox2.Controls.Clear(); allTest.questions[index].answers.ForEach(delegate(AnswerClass answer) { countCorrect += answer.correct; allCountCorrect += answer.correct; }); if (countCorrect > 1) { int i = 0; allTest.questions[index].answers.ForEach(delegate(AnswerClass answer) { CheckBox answerBox = new CheckBox(); answerBox.Location = coord[i].point; answerBox.AutoSize = true; answerBox.Width = 150; answerBox.Text = answer.answer; answerBox.Tag = answer.correct; groupBox2.Controls.Add(answerBox); answerBox.CheckedChanged += AnswerBox_CheckedChanged; i++; }); } else { int i = 0; allTest.questions[index].answers.ForEach(delegate(AnswerClass answer) { RadioButton answerBox = new RadioButton(); answerBox.Location = coord[i].point; answerBox.AutoSize = true; answerBox.Text = answer.answer; answerBox.Tag = answer.correct; groupBox2.Controls.Add(answerBox); answerBox.CheckedChanged += AnswerBox_CheckedChanged; answerBox.Checked = i == 0; i++; }); } } else { int mark = 0; if (countCorrectAnswer / allCountCorrect <= 0.5) { mark = 2; } else if (countCorrectAnswer / allCountCorrect <= 0.7) { mark = 3; } else if (countCorrectAnswer / allCountCorrect <= 0.9) { mark = 4; } else { mark = 5; } MessageBox.Show("Ваш результат " + countCorrectAnswer + " из " + allCountCorrect + "\n" + "это оценка " + mark, "Ваш результат", MessageBoxButtons.OK, MessageBoxIcon.Information); String response = SendRequestClass.PostRequestAsync("addResult", "{ \"idUser\" : " + Form1.user.id + " ,\n" + " \"idTopic\" : " + allTest.Id + " ,\n" + "\"scores\" : " + countCorrectAnswer + " , \n" + "\"mark\" : " + mark + " }").Result; Form1.refresEventClass.StartRefreshEvent(this, new EventArgs()); Form1.refresEventClass.StartRefreshResultEvent(this, new EventArgs()); this.Close(); } }
private void button3_Click(object sender, EventArgs e) { int idTest = -1; String response; if (!validationTest()) { return; } if (allTest == null) { Console.WriteLine("{\"id\": " + ((SubjectClass)comboBox1.SelectedItem).Id + " ,\n\"name\" : \"" + textBox1.Text + "\" }"); response = SendRequestClass.PostRequestAsync("addTest", "{\"id\": " + ((SubjectClass)comboBox1.SelectedItem).Id + " ,\n\"name\" : \"" + textBox1.Text + "\" }").Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при добавлении теста, обратитесь к админу", "Ошибка при добавлении теста", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (response.Equals("\tДанный тест уже создан!!!")) { MessageBox.Show("Тест с таким названием уже существует", "Ошибка в названии", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { idTest = int.Parse(response); } } else { idTest = allTest.Id; response = SendRequestClass.PostRequestAsync("updateTest", "{\"idTest\": " + idTest + " ,\n\"name\" : \"" + textBox1.Text + "\"" + " ,\n\"idSubject\" : " + ((SubjectClass)comboBox1.SelectedItem).Id + " }").Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при обновлении теста, обратитесь к админу", "Ошибка при обновлении теста", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (response.Equals("\tДанный тест уже создан!!!")) { MessageBox.Show("Тест с таким названием уже существует", "Ошибка в названии", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { idTest = int.Parse(!response.Contains("\t") ? response : allTest.Id.ToString()); } } foreach (TabPageClass tp in tabControl1.TabPages) { int idQuestion = -1; if (allTest == null || idTest != allTest.Id) { tp.idQuestion = -1; } if (tp.filePath.Length == 0) { if (tp.idQuestion == -1) { IdNameClass question = new IdNameClass(idTest, tp.textBoxQuestion.Text); response = SendRequestClass.PostRequestAsync("addQuestionText", JsonConvert.SerializeObject(question)).Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при добавлении вопроса, обратитесь к админу", "Ошибка при добавлении вопроса", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { idQuestion = int.Parse(response); } } else { idQuestion = tp.idQuestion; IdNameClass question = new IdNameClass(idQuestion, tp.textBoxQuestion.Text); response = SendRequestClass.PostRequestAsync("updateQuestionText", JsonConvert.SerializeObject(question)).Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при обновлении вопроса, обратитесь к админу", "Ошибка при обновлении вопроса", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { idQuestion = int.Parse(!response.Contains("\t") ? response : idQuestion.ToString()); } } } else { if (tp.idQuestion == -1) { response = SendRequestClass.Upload("addQuestionImage", "idTest=" + idTest, tp.pictureBox.Image).Result; if ((response != null && (response.Equals("\terror") || response.Equals("\t"))) || (response == null)) { MessageBox.Show("Ошибка при добавлении вопроса, обратитесь к админу", "Ошибка при добавлении вопроса", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { idQuestion = int.Parse(response); } } else { idQuestion = tp.idQuestion; response = SendRequestClass.Upload("updateQuestionImage", "idTest=" + idTest + "&idQuestion=" + tp.idQuestion, tp.pictureBox.Image).Result; if (response != null && response.Equals("error")) { MessageBox.Show("Ошибка при добавлении вопроса, обратитесь к админу", "Ошибка при добавлении вопроса", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { idQuestion = int.Parse(!response.Contains("\t") ? response : idQuestion.ToString()); } } } if (tp.textBox2.Text.Length > 0) { addAnswer(tp.checkBox1, tp.textBox2, idQuestion); } if (tp.textBox3.Text.Length > 0) { addAnswer(tp.checkBox2, tp.textBox3, idQuestion); } if (tp.textBox4.Text.Length > 0) { addAnswer(tp.checkBox3, tp.textBox4, idQuestion); } if (tp.textBox5.Text.Length > 0) { addAnswer(tp.checkBox4, tp.textBox5, idQuestion); } if (tp.textBox6.Text.Length > 0) { addAnswer(tp.checkBox5, tp.textBox6, idQuestion); } if (tp.textBox7.Text.Length > 0) { addAnswer(tp.checkBox6, tp.textBox7, idQuestion); } if (tp.textBox8.Text.Length > 0) { addAnswer(tp.checkBox7, tp.textBox8, idQuestion); } if (tp.textBox9.Text.Length > 0) { addAnswer(tp.checkBox8, tp.textBox9, idQuestion); } if (tp.textBox10.Text.Length > 0) { addAnswer(tp.checkBox9, tp.textBox10, idQuestion); } idDelQuestion.ForEach(delegate(int id) { response = SendRequestClass.PostRequestAsync("deleteQuestion", "{ \"id\" : " + id + "}").Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при удалении вопроса, обратитесь к админу", "Ошибка при удалении вопроса", MessageBoxButtons.OK, MessageBoxIcon.Error); } }); idDelAnswer.ForEach(delegate(int id) { response = SendRequestClass.PostRequestAsync("deleteAnswer", "{ \"id\" : " + id + "}").Result; if (response.Equals("\terror")) { MessageBox.Show("Ошибка при удалении ответа, обратитесь к админу", "Ошибка при удалении ответа", MessageBoxButtons.OK, MessageBoxIcon.Error); } }); } if (allTest != null) { MessageBox.Show("Тест успешно обновлён", "Успех", MessageBoxButtons.OK, MessageBoxIcon.Information); Form1.refresEventClass.StartRefreshEvent(this, new EventArgs()); } else { MessageBox.Show("Тест успешно создан", "Успех", MessageBoxButtons.OK, MessageBoxIcon.Information); Form1.refresEventClass.StartRefreshEvent(this, new EventArgs()); } }
public ConstructorTestForm(int idTest) { InitializeComponent(); try { String response = SendRequestClass.PostRequestAsync("getSubjects", "").Result; subjects = JsonConvert.DeserializeObject <List <SubjectClass> >(response); if (subjects.Count > 0) { comboBox1.DataSource = subjects; comboBox1.SelectedIndex = 0; } else { MessageBox.Show("В системе нет ни одного предмета, необходимо добавить!", "Нет предметов", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception exception) { MessageBox.Show("Проверьте соединение с интернетом!", "Ошибка соединения", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (idTest > -1) { String response = SendRequestClass.PostRequestAsync("getTest", "{ \"id\" : " + idTest + " }").Result; allTest = JsonConvert.DeserializeObject <AllTestClass>(response); textBox1.Text = allTest.Name; for (int i = 0; i < subjects.Count; i++) { if (subjects[i].Id == allTest.subject) { comboBox1.SelectedIndex = i; } } allTest.questions.ForEach(delegate(QuestionClass question) { button1_Click(new Object(), new EventArgs()); ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).idQuestion = question.id; if (question.type == 0) { ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).groupBox2.Controls.Add(((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxQuestion); ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxQuestion.Text = question.question; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxQuestion.Location = new Point(10, 20); ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxQuestion.Width = ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).groupBox2.Width - 20; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxQuestion.Height = ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).groupBox2.Height - 30; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxQuestion.Multiline = true; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).textBoxCreate = true; } else { ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).groupBox2.Controls.Add(((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).pictureBox); ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).pictureBox.Location = new Point(10, 20); ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).pictureBox.Width = ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).groupBox2.Width - 20; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).pictureBox.Height = ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).groupBox2.Height - 30; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).pictureBox.SizeMode = PictureBoxSizeMode.StretchImage; ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).pictureBox.Load(question.question); ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).filePath = question.question; } ((TabPageClass)tabControl1.TabPages[tabControl1.TabPages.Count - 1]).idQuestion = question.id; int indexAnswer = 0; question.answers.ForEach(delegate(AnswerClass answer) { ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].checkBox.Visible = true; ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].textBox.Visible = true; ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].delButton.Visible = true; ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].checkBox.Checked = answer.correct == 1; ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].textBox.Text = answer.answer; ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].delButton.Tag = answer.id; ((TabPageClass)tabControl1.SelectedTab).objectAnswers[indexAnswer].textBox.Tag = answer.id; indexAnswer++; }); }); } else { button1_Click(new Object(), new EventArgs()); } }