Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 28.16 KB | None | 0 0
  1. //package org.openjfx;
  2. //////
  3. //////import java.net.URL;
  4. //////import java.sql.*;
  5. //////import java.util.ArrayList;
  6. //////import java.util.ResourceBundle;
  7. //////import org.openjfx.AuthController;
  8. //////import javafx.collections.FXCollections;
  9. //////import javafx.collections.ObservableList;
  10. //////import javafx.event.ActionEvent;
  11. //////import javafx.fxml.FXML;
  12. //////import javafx.scene.control.Button;
  13. //////import javafx.scene.control.TableColumn;
  14. //////import javafx.scene.control.TableView;
  15. //////import javafx.scene.control.cell.PropertyValueFactory;
  16. //////import javafx.scene.image.ImageView;
  17. //////import org.openjfx.ListTests;
  18. //////public class MainWindowController {
  19. //////
  20. ////// @FXML
  21. ////// private ResourceBundle resources;
  22. //////
  23. ////// @FXML
  24. ////// private URL location;
  25. //////
  26. ////// @FXML
  27. ////// private Button btnSearchtest1;
  28. //////
  29. ////// @FXML
  30. ////// private Button btnCreatetest;
  31. //////
  32. ////// @FXML
  33. ////// private Button btnEdittest;
  34. //////
  35. ////// @FXML
  36. ////// private Button btnDeletetest;
  37. //////
  38. ////// @FXML
  39. ////// private Button btnSearchtest;
  40. //////
  41. ////// @FXML
  42. ////// private TableView<ListTests> tableTest;
  43. //////
  44. ////// @FXML
  45. ////// private TableColumn<ListTests, String> title;// = new TableColumn<Listtests,String>("title");
  46. //////
  47. ////// @FXML
  48. ////// private TableColumn<ListTests, String> disp;// = new TableColumn<Listtests,String>("disp");
  49. //////
  50. ////// @FXML
  51. ////// private TableColumn<ListTests, String> author;// = new TableColumn<Listtests,String>("author");
  52. //////
  53. ////// @FXML
  54. ////// private Button btnCreateuser;
  55. //////
  56. ////// @FXML
  57. ////// private Button btnEdituser;
  58. //////
  59. ////// @FXML
  60. ////// private Button btnDeleteuser;
  61. //////
  62. ////// @FXML
  63. ////// private Button btnSearchuser;
  64. //////
  65. ////// @FXML
  66. ////// private TableView<?> tableUser;
  67. //////
  68. ////// @FXML
  69. ////// private Button btnCreatepermission;
  70. //////
  71. ////// @FXML
  72. ////// private Button btnEditpermission;
  73. //////
  74. ////// @FXML
  75. ////// private Button btnDeletepermission;
  76. //////
  77. ////// @FXML
  78. ////// private Button btnSearchpermission;
  79. //////
  80. ////// @FXML
  81. ////// private TableView<?> tablePermission;
  82. //////
  83. ////// @FXML
  84. ////// private Button btnEditresult;
  85. //////
  86. ////// @FXML
  87. ////// private ImageView btnEditpermission1;
  88. //////
  89. ////// @FXML
  90. ////// private Button btnDeleteresult;
  91. //////
  92. ////// @FXML
  93. ////// private ImageView btnDeletepermission1;
  94. //////
  95. ////// @FXML
  96. ////// private Button btnSearchresult;
  97. //////
  98. ////// @FXML
  99. ////// private ImageView btnSearchpermission1;
  100. //////
  101. ////// @FXML
  102. ////// private TableView<?> tableResult;
  103. //////// @FXML
  104. //////// private TableView<Listtests> tablehaha;
  105. //////
  106. ////// @FXML
  107. ////// void btnCreatetest(ActionEvent event) {
  108. //////
  109. ////// }
  110. ////// Statement statement = Server.getStatement();
  111. //////
  112. ////// private ObservableList<ListTests> listData = FXCollections.observableArrayList();
  113. ////// private ObservableList<User> usersData = FXCollections.observableArrayList();
  114. //////
  115. ////// UserAccount user = AuthController.getUser();
  116. ////// private void getlist(){
  117. ////// String sqlquery = "Select testname, disciplinename,creator From alltests INNER JOIN permissions on alltests.idtest = permissions.idtest where permissions.login = \"" + user.getLogin() +"\"";
  118. ////// String t,d,a;
  119. ////// try{
  120. ////// ResultSet resultSet = statement.executeQuery(sqlquery);
  121. ////// while(resultSet.next()){
  122. ////// t = resultSet.getString(1);
  123. ////// d = resultSet.getString(2);
  124. ////// a = resultSet.getString(3);
  125. ////// System.out.println(t + d + a);
  126. ////// listData.add(new ListTests(t,d,a));
  127. ////// }
  128. ////// }catch (SQLException e){e.printStackTrace();}
  129. ////// }
  130. ////// private void initData() {
  131. ////// usersData.add(new User(1, "Alex", "qwerty", "alex@mail.com"));
  132. ////// usersData.add(new User(2, "Bob", "dsfsdfw", "bob@mail.com"));
  133. ////// usersData.add(new User(3, "Jeck", "dsfdsfwe", "Jeck@mail.com"));
  134. ////// usersData.add(new User(4, "Mike", "iueern", "mike@mail.com"));
  135. ////// usersData.add(new User(5, "colin", "woeirn", "colin@mail.com"));
  136. ////// }
  137. //////
  138. ////// @FXML
  139. ////// void initialize() {
  140. ////// String sqlquery = "select* from users";
  141. ////// try {
  142. ////// ResultSet resultSet = statement.executeQuery(sqlquery);
  143. ////// while (resultSet.next())
  144. ////// listData.add(new ListTests(resultSet.getString(1),resultSet.getString(2),resultSet.getString(3)));
  145. ////// } catch (SQLException e) {
  146. ////// e.printStackTrace();
  147. ////// }
  148. ////// //getlist();
  149. ////// title.setCellValueFactory(new PropertyValueFactory<>("Название"));
  150. ////// disp.setCellValueFactory(new PropertyValueFactory<>("Дисциплина"));
  151. ////// author.setCellValueFactory(new PropertyValueFactory<>("Автор"));
  152. ////// tableTest.setItems(listData);
  153. //////
  154. //////
  155. //////
  156. //////
  157. ////// for(ListTests t : listData){
  158. ////// t.display();
  159. ////// }
  160. ////// //initData();
  161. //////// title.setCellValueFactory(new PropertyValueFactory<Listtests, String>("Название"));
  162. //////// disp.setCellValueFactory(new PropertyValueFactory<Listtests, String>("Дисциплина"));
  163. //////// author.setCellValueFactory(new PropertyValueFactory<Listtests, String>("Автор"));
  164. //////// //tableTest.getColumns().addAll(title,disp,author);
  165. //////// if(!listData.isEmpty()) tableTest.setItems(listData);
  166. //////// else System.out.println("list is empty");
  167. //////
  168. //////
  169. //////// ObservableList<Listtests> list = FXCollections.observableArrayList(
  170. //////// new Listtests("q","w","e"),
  171. //////// new Listtests("r","t","y")
  172. //////// );
  173. //////// tablehaha.setItems(list);// = new TableView<Listtests>(list);
  174. //////// TableColumn<Listtests, String> nameColumn = new TableColumn<Listtests, String>("Name");
  175. //////// nameColumn.setCellValueFactory(new PropertyValueFactory<Listtests, String>("name"));
  176. //////// tablehaha.getColumns().add(nameColumn);
  177. //////// TableColumn<Listtests, String> discColumn = new TableColumn<Listtests, String>("Discipline");
  178. //////// nameColumn.setCellValueFactory(new PropertyValueFactory<Listtests, String>("discipline"));
  179. //////// tablehaha.getColumns().add(discColumn);
  180. //////// TableColumn<Listtests, String> authColumn = new TableColumn<Listtests, String>("Author");
  181. //////// nameColumn.setCellValueFactory(new PropertyValueFactory<Listtests, String>("author"));
  182. //////// tablehaha.getColumns().add(authColumn);
  183. //////// title = new TableColumn<Listtests,String>("Title");
  184. //////// disp = new TableColumn<Listtests,String>("Discipline");
  185. //////// author = new TableColumn<Listtests,String>("Author");
  186. ////// //title = new TableColumn<>("Title");
  187. ////// //disp = new TableColumn<>("disp");
  188. ////// // author = new TableColumn<>("author");
  189. //////// System.out.println("q");
  190. //////// title.setCellValueFactory(new PropertyValueFactory<Listtests, String>("title"));
  191. //////// System.out.println("q");
  192. //////// disp.setCellValueFactory(new PropertyValueFactory<Listtests, String>("disc"));
  193. //////// System.out.println("q");
  194. //////// author.setCellValueFactory(new PropertyValueFactory<Listtests, String>("author"));
  195. //////// System.out.println("q");
  196. ////// //list.add(new Listtests("q","q","q"));
  197. ////// //title.setCellValueFactory(new PropertyValueFactory<>("название"));
  198. ////// //disp.setCellValueFactory(new PropertyValueFactory<>("дисциплина"));
  199. ////// //author.setCellValueFactory(new PropertyValueFactory<>("автор"));
  200. //////
  201. //////
  202. ////// //tablehaha.setItems(list);// = new TableView<>(list);
  203. ////// //tablehaha.getColumns().addAll(title,disp,author);
  204. //////
  205. ////// assert btnSearchtest1 != null : "fx:id=\"btnSearchtest1\" was not injected: check your FXML file 'MainWindow.fxml'.";
  206. ////// assert btnCreatetest != null : "fx:id=\"btnCreatetest\" was not injected: check your FXML file 'MainWindow.fxml'.";
  207. ////// assert btnEdittest != null : "fx:id=\"btnEdittest\" was not injected: check your FXML file 'MainWindow.fxml'.";
  208. ////// assert btnDeletetest != null : "fx:id=\"btnDeletetest\" was not injected: check your FXML file 'MainWindow.fxml'.";
  209. ////// assert btnSearchtest != null : "fx:id=\"btnSearchtest\" was not injected: check your FXML file 'MainWindow.fxml'.";
  210. ////// assert tableTest != null : "fx:id=\"tableTest\" was not injected: check your FXML file 'MainWindow.fxml'.";
  211. ////// assert title != null : "fx:id=\"title\" was not injected: check your FXML file 'MainWindow.fxml'.";
  212. ////// assert disp != null : "fx:id=\"disp\" was not injected: check your FXML file 'MainWindow.fxml'.";
  213. ////// assert author != null : "fx:id=\"author\" was not injected: check your FXML file 'MainWindow.fxml'.";
  214. ////// assert btnCreateuser != null : "fx:id=\"btnCreateuser\" was not injected: check your FXML file 'MainWindow.fxml'.";
  215. ////// assert btnEdituser != null : "fx:id=\"btnEdituser\" was not injected: check your FXML file 'MainWindow.fxml'.";
  216. ////// assert btnDeleteuser != null : "fx:id=\"btnDeleteuser\" was not injected: check your FXML file 'MainWindow.fxml'.";
  217. ////// assert btnSearchuser != null : "fx:id=\"btnSearchuser\" was not injected: check your FXML file 'MainWindow.fxml'.";
  218. ////// assert tableUser != null : "fx:id=\"tableUser\" was not injected: check your FXML file 'MainWindow.fxml'.";
  219. ////// assert btnCreatepermission != null : "fx:id=\"btnCreatepermission\" was not injected: check your FXML file 'MainWindow.fxml'.";
  220. ////// assert btnEditpermission != null : "fx:id=\"btnEditpermission\" was not injected: check your FXML file 'MainWindow.fxml'.";
  221. ////// assert btnDeletepermission != null : "fx:id=\"btnDeletepermission\" was not injected: check your FXML file 'MainWindow.fxml'.";
  222. ////// assert btnSearchpermission != null : "fx:id=\"btnSearchpermission\" was not injected: check your FXML file 'MainWindow.fxml'.";
  223. ////// assert tablePermission != null : "fx:id=\"tablePermission\" was not injected: check your FXML file 'MainWindow.fxml'.";
  224. ////// assert btnEditresult != null : "fx:id=\"btnEditresult\" was not injected: check your FXML file 'MainWindow.fxml'.";
  225. ////// assert btnEditpermission1 != null : "fx:id=\"btnEditpermission1\" was not injected: check your FXML file 'MainWindow.fxml'.";
  226. ////// assert btnDeleteresult != null : "fx:id=\"btnDeleteresult\" was not injected: check your FXML file 'MainWindow.fxml'.";
  227. ////// assert btnDeletepermission1 != null : "fx:id=\"btnDeletepermission1\" was not injected: check your FXML file 'MainWindow.fxml'.";
  228. ////// assert btnSearchresult != null : "fx:id=\"btnSearchresult\" was not injected: check your FXML file 'MainWindow.fxml'.";
  229. ////// assert btnSearchpermission1 != null : "fx:id=\"btnSearchpermission1\" was not injected: check your FXML file 'MainWindow.fxml'.";
  230. ////// assert tableResult != null : "fx:id=\"tableResult\" was not injected: check your FXML file 'MainWindow.fxml'.";
  231. //////
  232. ////// }
  233. ////// public class User {
  234. //////
  235. ////// private int id;
  236. ////// private String login;
  237. ////// private String password;
  238. ////// private String email;
  239. //////
  240. ////// public User(int id, String login, String password, String email) {
  241. ////// this.id = id;
  242. ////// this.login = login;
  243. ////// this.password = password;
  244. ////// this.email = email;
  245. ////// }
  246. //////
  247. ////// public User() {
  248. ////// }
  249. //////
  250. ////// public int getId() {
  251. ////// return id;
  252. ////// }
  253. //////
  254. ////// public void setId(int id) {
  255. ////// this.id = id;
  256. ////// }
  257. //////
  258. ////// public String getLogin() {
  259. ////// return login;
  260. ////// }
  261. //////
  262. ////// public void setLogin(String login) {
  263. ////// this.login = login;
  264. ////// }
  265. //////
  266. ////// public String getPassword() {
  267. ////// return password;
  268. ////// }
  269. //////
  270. ////// public void setPassword(String password) {
  271. ////// this.password = password;
  272. ////// }
  273. //////
  274. ////// public String getEmail() {
  275. ////// return email;
  276. ////// }
  277. //////
  278. ////// public void setEmail(String email) {
  279. ////// this.email = email;
  280. ////// }
  281. ////// }
  282. //////}
  283. //////
  284. ///////*
  285. //////
  286. //////
  287. ////// */
  288.  
  289. package org.openjfx;
  290.  
  291. import java.io.IOException;
  292. import java.net.URL;
  293. import java.sql.ResultSet;
  294. import java.sql.SQLException;
  295. import java.sql.Statement;
  296. import java.util.ArrayList;
  297. import java.util.Iterator;
  298. import java.util.List;
  299. import java.util.ResourceBundle;
  300.  
  301. import javafx.collections.FXCollections;
  302. import javafx.collections.ObservableList;
  303. import javafx.event.ActionEvent;
  304. import javafx.fxml.FXML;
  305. import javafx.scene.control.*;
  306. import javafx.scene.control.cell.PropertyValueFactory;
  307. import javafx.scene.image.ImageView;
  308. import javafx.scene.layout.AnchorPane;
  309. import org.xml.sax.SAXException;
  310.  
  311. public class MainWindowController {
  312.  
  313.  
  314. @FXML
  315. private Label labelName;
  316.  
  317. @FXML
  318. private ResourceBundle resources;
  319.  
  320. @FXML
  321. private URL location;
  322.  
  323. @FXML
  324. private TableView<ListTests> tableTest;
  325.  
  326. @FXML
  327. private TableColumn<ListTests, String> titletest;
  328.  
  329. @FXML
  330. private TableColumn<ListTests,String> disc;
  331.  
  332. @FXML
  333. private TableColumn<ListTests,String> author;
  334.  
  335. @FXML
  336. private TableColumn<ListTests, String> idtest;
  337.  
  338. @FXML
  339. private Button btnCreatetest;
  340.  
  341. @FXML
  342. private Button btnEditTest;
  343.  
  344. @FXML
  345. private Button btnDeleteTest;
  346.  
  347. @FXML
  348. private Button btnSetPerm;
  349.  
  350. @FXML
  351. private AnchorPane anchCreate;
  352.  
  353. @FXML
  354. private TextField txtTitleTest;
  355.  
  356. @FXML
  357. private TextField txtDiscTest;
  358.  
  359. @FXML
  360. private Button btnContinue;
  361.  
  362. @FXML
  363. private Button btnBackFromCreate;
  364.  
  365. @FXML
  366. private AnchorPane anchPerm;
  367.  
  368. @FXML
  369. private ComboBox<String> cmbGroupList;
  370.  
  371. @FXML
  372. private Button btnAgreePerm;
  373.  
  374. @FXML
  375. private Label labelPerm;
  376.  
  377. @FXML
  378. private Button btnBackFromPerm;
  379.  
  380. @FXML
  381. private Button btnCreatepermission;
  382.  
  383. @FXML
  384. private Button btnEditpermission;
  385.  
  386. @FXML
  387. private Button btnDeletepermission;
  388.  
  389. @FXML
  390. private Button btnSearchpermission;
  391.  
  392. @FXML
  393. private TableView<?> tablePermission;
  394.  
  395. @FXML
  396. private Button btnEditresult;
  397.  
  398. @FXML
  399. private ImageView btnEditpermission1;
  400.  
  401. @FXML
  402. private Button btnDeleteresult;
  403.  
  404. @FXML
  405. private ImageView btnDeletepermission1;
  406.  
  407. @FXML
  408. private Button btnSearchresult;
  409.  
  410. @FXML
  411. private ImageView btnSearchpermission1;
  412.  
  413. @FXML
  414. private Button btnCreateuser;
  415.  
  416. @FXML
  417. private Button btnEdituser;
  418.  
  419. @FXML
  420. private Button btnDeleteuser;
  421.  
  422. @FXML
  423. private Button btnSearchuser;
  424.  
  425. @FXML
  426. private TableView<?> tableUser;
  427.  
  428. @FXML
  429. private Tab tabTest;
  430.  
  431. @FXML
  432. private Tab tabResult;
  433.  
  434. @FXML
  435. private TableView<ResultTest> tableResult;
  436.  
  437. @FXML
  438. private TableColumn<ResultTest, String> colLName;
  439.  
  440. @FXML
  441. private TableColumn<ResultTest, String> colFName;
  442.  
  443. @FXML
  444. private TableColumn<ResultTest, Integer> colScore;
  445.  
  446. @FXML
  447. private TableColumn<ResultTest, Integer> colPercent;
  448.  
  449. @FXML
  450. private TableColumn<ResultTest, Integer> colRating;
  451.  
  452. @FXML
  453. private ComboBox<String> cmbGroupListResult;
  454.  
  455. @FXML
  456. private ComboBox<String> cmbListTest;
  457.  
  458. @FXML
  459. private Button btnClose;
  460.  
  461. @FXML
  462. void btnClose(ActionEvent event)throws IOException {
  463. App.setRoot("auth",432,340);
  464. }
  465. Statement statement = Server.getStatement();
  466. ObservableList<ListTests> oblist = FXCollections.observableArrayList();
  467. ObservableList<ResultTest> resultTests = FXCollections.observableArrayList();
  468. UserAccount user = AuthController.getUser();
  469. private static ListTests selected;
  470. public static ListTests getSelected(){
  471. return selected;
  472. }
  473. private int idtestForPerm;
  474. String selectedGroupFromResult = "";
  475. int selectedIdTestFromResult = 0;
  476.  
  477. @FXML
  478. void onActionSetPerm(ActionEvent event) {
  479. idtestForPerm = tableTest.getSelectionModel().getSelectedItem().getId();
  480. System.out.println(idtestForPerm);
  481. String sql = "SELECT DISTINCT users.group from users";
  482. ObservableList<String> grouplist = FXCollections.observableArrayList();
  483. try{
  484. ResultSet resultSet = statement.executeQuery(sql);
  485. while (resultSet.next())
  486. grouplist.add(resultSet.getString(1));
  487. }catch (SQLException e) {e.printStackTrace();}
  488. cmbGroupList.setItems(grouplist);
  489. anchPerm.setVisible(true);
  490. cmbGroupList.setPromptText("Группа");
  491. btnBackFromPerm.setVisible(true);
  492. tableTest.setDisable(true);
  493. btnCreatetest.setDisable(true);
  494. btnEditTest.setDisable(true);
  495. btnDeleteTest.setDisable(true);
  496. btnSetPerm.setDisable(true);
  497. tabResult.setDisable(true);
  498. }
  499.  
  500. @FXML
  501. void onActionSelectGroup(ActionEvent event) {
  502. String selectedGroup = cmbGroupList.getSelectionModel().getSelectedItem();
  503. //String sql = "SELECT login from permissions Inner Join users u on permissions.login = permissions.login where idtest = \""+idtestForPerm+"\" And users.group =\""+
  504. // selectedGroup + "\"";
  505. String sql = "select permissions.login from permissions inner join users on permissions.login=users.login where idtest = \""+idtestForPerm+"\" and users.group = \""+selectedGroup+"\"";
  506. System.out.println(sql);
  507. try{
  508. ResultSet resultSet = statement.executeQuery(sql);
  509. resultSet.next();
  510. System.out.println(resultSet.getString(1));
  511. labelPerm.setText("Выбранная группа обладает доступом!");
  512. btnAgreePerm.setDisable(true);
  513. }catch (SQLException e) {
  514. System.out.println("vse nais");
  515. labelPerm.setText("");
  516. }
  517. }
  518.  
  519. @FXML
  520. void onActionAgreePerm(ActionEvent event) {
  521. String selectedGroup = cmbGroupList.getSelectionModel().getSelectedItem();
  522. String sqlSel = "Select login from users where users.group = \"" + selectedGroup + "\"";
  523. String sqlUpd;
  524. List<String> listLogins = new ArrayList<>();
  525. try {
  526. ResultSet resultSet = statement.executeQuery(sqlSel);
  527. while (resultSet.next()){
  528. listLogins.add(resultSet.getString(1));
  529. }
  530. Iterator iterator = listLogins.iterator();
  531. while (iterator.hasNext()){
  532. sqlUpd = "Insert Into permissions (idtest,login) VALUES (\""+idtestForPerm+"\",\"" + iterator.next()+"\")";
  533. System.out.println(sqlUpd);
  534. statement.executeUpdate(sqlUpd);
  535. }
  536. }catch (SQLException e) {e.printStackTrace();}
  537. }
  538.  
  539. @FXML
  540. void onActionBackCreate(ActionEvent event) {
  541. setVisAndDis();
  542. }
  543. void setVisAndDis(){
  544. anchPerm.setVisible(false);
  545. btnBackFromPerm.setVisible(false);
  546. tableTest.setDisable(false);
  547. btnCreatetest.setDisable(false);
  548. btnEditTest.setDisable(false);
  549. btnDeleteTest.setDisable(false);
  550. btnSetPerm.setDisable(false);
  551. tableResult.setDisable(false);
  552. tabResult.setDisable(false);
  553. }
  554. @FXML
  555. void onActionBackPerm(ActionEvent event) {
  556. setVisAndDis();
  557. }
  558.  
  559. @FXML
  560. void onActionContinue(ActionEvent event) throws IOException {
  561. String title = txtTitleTest.getText();
  562. String disc = txtDiscTest.getText();
  563. String sql = "Insert into alltests (testname, disciplinename, creator) VALUES (\""+title+"\",\""+disc+"\",\""+user.getLogin()+"\")";
  564. try{
  565. statement.executeUpdate(sql);
  566. }catch (SQLException e) {e.printStackTrace();}
  567. sql = "SELECT idtest FROM alltests where testname = \""+title+"\" and disciplinename = \""+disc+"\"";
  568. selected = new ListTests(title, disc, user.getLogin());
  569. try{
  570. ResultSet resultSet = statement.executeQuery(sql);
  571. resultSet.next();
  572. selected.setId(resultSet.getInt(1));
  573. }catch (SQLException e) {e.printStackTrace();}
  574. App.setRoot("TestEditor",1200,1000);
  575. }
  576.  
  577. @FXML
  578. void onActionEditTest(ActionEvent event) throws IOException {
  579. String t = tableTest.getSelectionModel().getSelectedItem().getName();
  580. String d = tableTest.getSelectionModel().getSelectedItem().getDisc();
  581. selected = new ListTests(t,d);
  582. System.out.println(t+d);
  583. String sql = "SELECT idtest FROM alltests where testname = \""+t+"\" and disciplinename = \""+d+"\"";
  584. try{
  585. ResultSet resultSet = statement.executeQuery(sql);
  586. resultSet.next();
  587. selected.setId(resultSet.getInt(1));
  588. }catch (SQLException e) {}
  589. System.out.println(selected.getId());
  590. System.out.println(sql);
  591. App.setRoot("TestEditor",1200,1000);
  592. }
  593.  
  594. @FXML
  595. void onActionDeleteTest(ActionEvent event) {
  596. int i = tableTest.getSelectionModel().getSelectedItem().getId();
  597. String sql = "Delete From alltests where idtest = \"" + i + "\"";
  598. try{
  599. statement.executeUpdate(sql);
  600. }catch (SQLException e) {e.printStackTrace();}
  601. oblist.clear();
  602. getlist();
  603. }
  604.  
  605. @FXML
  606. void btnCreatetest(ActionEvent event) throws IOException {
  607. tableTest.setDisable(true);
  608. btnCreatetest.setDisable(true);
  609. btnEditTest.setDisable(true);
  610. btnDeleteTest.setDisable(true);
  611. btnSetPerm.setDisable(true);
  612. tabResult.setDisable(true);
  613. anchCreate.setVisible(true);
  614. btnBackFromCreate.setVisible(true);
  615. }
  616.  
  617. @FXML
  618. void onActionSelectGroupResult(ActionEvent event) {
  619. selectedGroupFromResult = cmbGroupListResult.getSelectionModel().getSelectedItem();
  620. if(selectedIdTestFromResult != 0){
  621. getResultList();
  622. System.out.println("naisGroup");
  623. }
  624. }
  625. @FXML
  626. void onActionSelectTest(ActionEvent event) {
  627. String selectedTestFromResult = cmbListTest.getSelectionModel().getSelectedItem();
  628. String sql = "select idtest from alltests where testname = \""+ selectedTestFromResult + "\"";
  629. try {
  630. ResultSet resultSet = statement.executeQuery(sql);
  631. resultSet.next();
  632. selectedIdTestFromResult = resultSet.getInt(1);
  633. }catch (SQLException e){e.printStackTrace();}
  634.  
  635. if(!selectedGroupFromResult.equals("")) {
  636. getResultList();
  637. System.out.println("naisTest");
  638. }
  639. }
  640. void fillCmbResult(){
  641. String sqlGroup = "SELECT DISTINCT users.group from users";
  642. String sqlTest = "Select testname from alltests";
  643. ObservableList<String> listGroup = FXCollections.observableArrayList();
  644. ObservableList<String> listTest = FXCollections.observableArrayList();
  645. try{
  646. ResultSet resultSet = statement.executeQuery(sqlGroup);
  647. while(resultSet.next()){
  648. listGroup.add(resultSet.getString(1));
  649. }
  650. }catch (SQLException e) { e.printStackTrace();}
  651. try{
  652. ResultSet resultSet = statement.executeQuery(sqlTest);
  653. while (resultSet.next()){
  654. listTest.add(resultSet.getString(1));
  655. }
  656. }catch (SQLException e) { e.printStackTrace();}
  657. cmbGroupListResult.setItems(listGroup);
  658. cmbListTest.setItems(listTest);
  659.  
  660. }
  661. private void getlist(){
  662. String sqlquery = "Select testname, disciplinename,idtest From alltests where creator = \"" + user.getLogin() +"\"";
  663. String t,d;
  664. int i;
  665. try{
  666. ResultSet resultSet = statement.executeQuery(sqlquery);
  667. while(resultSet.next()){
  668. t = resultSet.getString(1);
  669. d = resultSet.getString(2);
  670. i = resultSet.getInt(3);
  671. System.out.println(t + d);
  672. oblist.add(new ListTests(t,d,i));
  673. }
  674. }catch (SQLException e){e.printStackTrace();}
  675. }
  676. void getResultList(){
  677. String sql = "Select users.lastname, users.firstname, results.points, results.percents, results.score From results Inner Join users on results.login = users.login Where users.group = \""+selectedGroupFromResult +
  678. "\" And results.idtest = \""+selectedIdTestFromResult+"\"";
  679. System.out.println("sql = " + sql);
  680. try{
  681. ResultSet resultSet = statement.executeQuery(sql);
  682. while (resultSet.next())
  683. resultTests.add(new ResultTest(resultSet.getString(1),resultSet.getString(2),resultSet.getInt(3),resultSet.getInt(4),resultSet.getInt(5)));
  684. //resultTests.add(new ResultTest(resultSet.getString(1)));
  685. }catch (SQLException e) {e.printStackTrace();}
  686. for (ResultTest r: resultTests){
  687. System.out.println(r);
  688. }
  689. colLName.setCellValueFactory(new PropertyValueFactory<>("lastnamer"));
  690. colFName.setCellValueFactory(new PropertyValueFactory<>("firstnamer"));
  691. colScore.setCellValueFactory(new PropertyValueFactory<>("ratingr"));
  692. colPercent.setCellValueFactory(new PropertyValueFactory<>("percentr"));
  693. colRating.setCellValueFactory(new PropertyValueFactory<>("scorer"));
  694. tableResult.setItems(resultTests);
  695. }
  696. @FXML
  697. public void initialize() {
  698. //fill tab tests
  699. getlist();
  700. titletest.setCellValueFactory(new PropertyValueFactory<>("name"));
  701. disc.setCellValueFactory(new PropertyValueFactory<>("disc"));
  702. author.setCellValueFactory(new PropertyValueFactory<>("author"));
  703. idtest.setCellValueFactory(new PropertyValueFactory<>("id"));
  704. titletest.setText("Название");
  705. disc.setText("Дисциплина");
  706. tableTest.setItems(oblist);
  707. labelName.setText(user.getLastname() + " " + user.getFirstname() + " " + user.getMiddlename());
  708.  
  709. //fill tab result
  710. fillCmbResult();
  711.  
  712.  
  713. }
  714. }
  715. class ResultTest{
  716.  
  717. public ResultTest(String lastnamer, String firstnamer, Integer scorer, Integer percentr, Integer ratingr) {
  718. this.lastnamer = lastnamer;
  719. this.firstnamer = firstnamer;
  720. this.scorer = scorer;
  721. this.percentr = percentr;
  722. this.ratingr = ratingr;
  723. }
  724. public ResultTest(){}
  725. private String lastnamer, firstnamer;
  726. private Integer scorer;
  727. private Integer percentr;
  728.  
  729. public String getLastnamer() {
  730. return lastnamer;
  731. }
  732.  
  733. public void setLastnamer(String lastnamer) {
  734. this.lastnamer = lastnamer;
  735. }
  736.  
  737. public String getFirstnamer() {
  738. return firstnamer;
  739. }
  740.  
  741. public void setFirstnamer(String firstnamer) {
  742. this.firstnamer = firstnamer;
  743. }
  744.  
  745. public Integer getScorer() {
  746. return scorer;
  747. }
  748.  
  749. public void setScorer(Integer scorer) {
  750. this.scorer = scorer;
  751. }
  752.  
  753. public Integer getPercentr() {
  754. return percentr;
  755. }
  756.  
  757. public void setPercentr(Integer percentr) {
  758. this.percentr = percentr;
  759. }
  760.  
  761. public Integer getRatingr() {
  762. return ratingr;
  763. }
  764.  
  765. public void setRatingr(Integer ratingr) {
  766. this.ratingr = ratingr;
  767. }
  768.  
  769. private Integer ratingr;
  770.  
  771. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement