Advertisement
Guest User

Untitled

a guest
Jan 20th, 2020
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.78 KB | None | 0 0
  1. package hotel;
  2.  
  3. import java.awt.BorderLayout;
  4. import static java.lang.Integer.parseInt;
  5. import java.net.URL;
  6. import java.util.ResourceBundle;
  7. import javafx.beans.property.SimpleStringProperty;
  8. import javafx.collections.FXCollections;
  9. import javafx.collections.ObservableList;
  10. import javafx.event.Event;
  11. import javafx.event.EventHandler;
  12. import javafx.fxml.FXML;
  13. import javafx.fxml.Initializable;
  14. import javafx.scene.control.Button;
  15. import javafx.scene.control.CheckBox;
  16. import javafx.scene.control.Label;
  17. import javafx.scene.control.TableView;
  18. import javafx.scene.control.TextField;
  19. import javafx.scene.layout.FlowPane;
  20. import javafx.scene.layout.VBox;
  21. import javafx.scene.Node;
  22. import javafx.scene.control.TableColumn;
  23. import javafx.scene.control.TextArea;
  24. import javafx.scene.control.cell.PropertyValueFactory;
  25.  
  26. /**
  27. * FXML Controller class
  28. *
  29. * @author admin
  30. */
  31. public class FxmlHotelController implements Initializable {
  32.  
  33. @FXML
  34. private VBox v;
  35. @FXML
  36. private FlowPane Checkboxy;
  37. @FXML
  38. private CheckBox CheckBoxDyrektor;
  39.  
  40. @FXML
  41. private CheckBox CheckBoxGosc;
  42. @FXML
  43. private CheckBox CheckBoxRecepcjonista;
  44. @FXML
  45. private CheckBox CheckBoxSprzatacz;
  46. @FXML
  47. private FlowPane Buttony;
  48. @FXML
  49. private Button button_Dodaj_Pokoj;
  50. @FXML
  51. private Button button_Rezerwuj;
  52. @FXML
  53. private Button button_Zajmij;
  54. @FXML
  55. private Button button_Anuluj_Rezerwacje;
  56. @FXML
  57. private FlowPane Texts;
  58. @FXML
  59. private Label Label_NrPokoju;
  60. @FXML
  61. private TextField TextField_NrPokoju;
  62.  
  63. public int dajNrPokoju() {
  64. return Integer.parseInt(TextField_NrPokoju.getText());
  65. }
  66. @FXML
  67. private Label Label_Nazwisko;
  68. @FXML
  69. private TextField TextField_Nazwisko;
  70. @FXML
  71. private Button button_Oddaj_Pokoj;
  72. @FXML
  73. private Button button_Remont;
  74. @FXML
  75. private Button button_Przywroc_Pokoj;
  76. @FXML
  77. private Button button_Sprzataj;
  78. @FXML
  79. private FlowPane Tabela;
  80. @FXML
  81. private TableView<Pokoj> TableView_Pokoje;
  82.  
  83. @FXML
  84. private TableColumn<Pokoj, Integer> ColNrPokoju;
  85.  
  86. @FXML
  87. private TableColumn<Pokoj, String> ColUzytkownik;
  88.  
  89. @FXML
  90. private TableColumn<Pokoj, Status> ColStan;
  91.  
  92. public void clear() {
  93. TextField_Nazwisko.clear();
  94. TextField_NrPokoju.clear();
  95. }
  96.  
  97. public void clearDisable(Boolean b) {
  98. clear();
  99. TextField_Nazwisko.setDisable(b);
  100. TextField_NrPokoju.setDisable(b);
  101. }
  102.  
  103. public void checkDyr(boolean alfa) {
  104. button_Dodaj_Pokoj.setDisable(!alfa);
  105. button_Remont.setDisable(!alfa);
  106. button_Przywroc_Pokoj.setDisable(!alfa);
  107. }
  108.  
  109. public void checkGosc(boolean alfa) {
  110. button_Zajmij.setDisable(!alfa);
  111. button_Rezerwuj.setDisable(!alfa);
  112. button_Anuluj_Rezerwacje.setDisable(!alfa);
  113. }
  114.  
  115. public void checkRec(boolean alfa) {
  116. button_Oddaj_Pokoj.setDisable(!alfa);
  117. }
  118.  
  119. public void checkSprz(boolean alfa) {
  120. button_Sprzataj.setDisable(!alfa);
  121. }
  122. EventHandler CbDyr = new EventHandler() {
  123. @Override
  124. public void handle(Event event) {
  125.  
  126. CheckBox cb = (CheckBox) event.getSource();
  127. if (cb.isSelected() == true) {
  128. System.out.println("Hello " + cb.getText());
  129. checkDyr(true);
  130. checkSprz(false);
  131. checkGosc(false);
  132. checkRec(false);
  133. CheckBoxGosc.setSelected(false);
  134. CheckBoxRecepcjonista.setSelected(false);
  135. CheckBoxSprzatacz.setSelected(false);
  136. clear();
  137. TextField_NrPokoju.setDisable(false);
  138. TextField_Nazwisko.setDisable(true);
  139. } else if (cb.isSelected() == false) {
  140. checkDyr(false);
  141. clearDisable(true);
  142. }
  143.  
  144. }
  145. };
  146.  
  147. //----------GoscCb-----------
  148. EventHandler CbGosc = new EventHandler() {
  149. @Override
  150. public void handle(Event event) {
  151. CheckBox cb = (CheckBox) event.getSource();
  152. if (cb.isSelected() == true) {
  153. System.out.println("Hello " + cb.getText());
  154. CheckBoxDyrektor.setSelected(false);
  155. CheckBoxRecepcjonista.setSelected(false);
  156. CheckBoxSprzatacz.setSelected(false);
  157. checkDyr(false);
  158. checkSprz(false);
  159. checkGosc(true);
  160. checkRec(false);
  161. clear();
  162. TextField_NrPokoju.setDisable(true);
  163. TextField_Nazwisko.setDisable(false);
  164. } else {
  165. checkGosc(false);
  166. clearDisable(true);
  167. }
  168. }
  169. };
  170. //------------CbRec----------//
  171. EventHandler CbRec = new EventHandler() {
  172. @Override
  173. public void handle(Event event) {
  174. CheckBox cb = (CheckBox) event.getSource();
  175. if (cb.isSelected() == true) {
  176. System.out.println("He " + cb.getText());
  177. checkDyr(false);
  178. checkGosc(true);
  179. checkRec(true);
  180. checkSprz(false);
  181. CheckBoxDyrektor.setSelected(false);
  182. CheckBoxGosc.setSelected(false);
  183. CheckBoxSprzatacz.setSelected(false);
  184. clearDisable(false);
  185. } else {
  186. checkGosc(false);
  187. checkRec(false);
  188. clearDisable(true);
  189. }
  190. }
  191. };
  192. //------------CbSprzataj--------//
  193. EventHandler CbSprz = new EventHandler() {
  194. @Override
  195. public void handle(Event event) {
  196. CheckBox cb = (CheckBox) event.getSource();
  197. if (cb.isSelected() == true) {
  198. System.out.println("Hello " + cb.getText());
  199. checkDyr(false);
  200. checkGosc(false);
  201. checkRec(false);
  202. checkSprz(true);
  203. CheckBoxDyrektor.setSelected(false);
  204. CheckBoxGosc.setSelected(false);
  205. CheckBoxRecepcjonista.setSelected(false);
  206. TextField_Nazwisko.setDisable(true);
  207. TextField_NrPokoju.setDisable(true);
  208. clear();
  209. } else {
  210. checkSprz(false);
  211. }
  212. }
  213. };
  214.  
  215. @Override
  216. public void initialize(URL url, ResourceBundle rb) {
  217. //CheckBoxRecepcjonista.setOnAction(eh);
  218. Recepcja r = new Recepcja();
  219. Dyrektor dyr = new Dyrektor();
  220. // Gosc g = new Gosc();
  221. Sprzatacze sprzatacz = new Sprzatacze();
  222. Recepcjonista rec = new Recepcjonista();
  223. ObservableList<Pokoj> oPokoje = FXCollections.observableArrayList(r.pokoje);
  224. ColNrPokoju.setCellValueFactory(new PropertyValueFactory<>("NrPokoju"));
  225. ColUzytkownik.setCellValueFactory(data -> new SimpleStringProperty(data.getValue().uzytkownik));
  226. ColStan.setCellValueFactory(new PropertyValueFactory<>("Stan"));
  227. TableView_Pokoje.setItems(oPokoje);
  228.  
  229. CheckBoxDyrektor.setOnAction(CbDyr);
  230. CheckBoxRecepcjonista.setOnAction(CbRec);
  231. CheckBoxGosc.setOnAction(CbGosc);
  232. CheckBoxSprzatacz.setOnAction(CbSprz);
  233.  
  234. button_Dodaj_Pokoj.setOnAction(e -> {
  235. dyr.dodajPokoj(r);
  236. oPokoje.add(new Pokoj(r.pokoje.get(r.getSize() - 1).getNrPokoju()));
  237. oPokoje.set(r.getSize() - 1, new Pokoj(r.getSize()));
  238. });
  239.  
  240. button_Anuluj_Rezerwacje.setOnAction(e -> {
  241. int i = 0;
  242. boolean zarezerwowano = false;
  243. if (TextField_Nazwisko.getText().isEmpty()) {
  244. System.out.println("Podaj Nazwisko!");
  245. }else{
  246. rec.anulujRezerwacje2(r, TextField_Nazwisko.getText());
  247. while (i < oPokoje.size() && zarezerwowano == false) {
  248. if (oPokoje.get(i).uzytkownik.equals(TextField_Nazwisko.getText()) && oPokoje.get(i).stan == Status.zarezerwowany) {
  249. oPokoje.set(i, new Pokoj(i + 1));
  250. oPokoje.get(i).anulujRezerwacje2(TextField_Nazwisko.getText());
  251. zarezerwowano = true;
  252. } else {
  253. i++;
  254. }
  255. }
  256. }
  257. });
  258.  
  259. button_Oddaj_Pokoj.setOnAction(e -> { //dziala?
  260. if (TextField_NrPokoju.getText().isEmpty()) {
  261. System.out.println("Podaj nrPokoju");
  262. } else {
  263. if (TextField_NrPokoju.getText().matches("[0-9]+")) {
  264. rec.oddajPokoj(r, Integer.parseInt(TextField_NrPokoju.getText()));
  265. if (dajNrPokoju() >= 1 && dajNrPokoju() <= oPokoje.size()) {
  266. if (oPokoje.get(dajNrPokoju() - 1).stan == Status.zajety) {
  267. oPokoje.set(dajNrPokoju() - 1, new Pokoj(dajNrPokoju()));
  268. oPokoje.get(dajNrPokoju() - 1).sprzataj();
  269. }
  270. }
  271. } else {
  272. System.out.println("Nr pokoju nie może zawierać liter!");
  273. }
  274. }
  275. });
  276.  
  277. button_Przywroc_Pokoj.setOnAction(e -> { //dziala
  278. if (TextField_NrPokoju.getText().isEmpty()) {
  279. System.out.println("Podaj nrPokoju");
  280. } else {
  281. if (TextField_NrPokoju.getText().matches("[0-9]+")) {
  282. dyr.przywrocPokoj(r, Integer.parseInt(TextField_NrPokoju.getText()));
  283. if (dajNrPokoju() >= 1 && dajNrPokoju() <= oPokoje.size()) {
  284. if (oPokoje.get(dajNrPokoju() - 1).stan == Status.naprawa) {
  285. oPokoje.set(dajNrPokoju() - 1, new Pokoj(dajNrPokoju()));
  286. oPokoje.get(dajNrPokoju() - 1).sprzataj();
  287. }
  288. }
  289. } else {
  290. System.out.println("Nr pokoju nie może zawierać liter!");
  291. }
  292. }
  293. });
  294.  
  295. button_Remont.setOnAction(e -> { //dziala
  296. if (TextField_NrPokoju.getText().isEmpty()) {
  297. System.out.println("Podaj nrPokoju");
  298. } else {
  299. if (TextField_NrPokoju.getText().matches("[0-9]+")) {
  300. dyr.remont(r, Integer.parseInt(TextField_NrPokoju.getText()));
  301. if (dajNrPokoju() >= 1 && dajNrPokoju() <= oPokoje.size()) {
  302. if (oPokoje.get(dajNrPokoju() - 1).stan == Status.wolny) {
  303. oPokoje.set(dajNrPokoju() - 1, new Pokoj(dajNrPokoju()));
  304. oPokoje.get(dajNrPokoju() - 1).remont();
  305. }
  306. }
  307. } else {
  308. System.out.println("Nr pokoju nie może zawierać liter!");
  309. }
  310. }
  311.  
  312. });
  313.  
  314. button_Rezerwuj.setOnAction(e -> { //??
  315. if (TextField_Nazwisko.getText().isEmpty()) {
  316. System.out.println("Podaj Nazwisko!");
  317. } else {
  318. int i = 0;
  319. boolean zarezerwowano = false;
  320. rec.rezerwuj2(r, TextField_Nazwisko.getText());
  321. while (i < oPokoje.size() && zarezerwowano == false) {
  322. if (oPokoje.get(i).stan == Status.wolny) {
  323.  
  324. oPokoje.set(i, new Pokoj(i + 1));
  325. oPokoje.get(i).rezerwuj2(TextField_Nazwisko.getText());
  326. zarezerwowano = true;
  327. } else {
  328. i++;
  329. }
  330. }
  331. }
  332. });
  333.  
  334. button_Sprzataj.setOnAction(e -> {
  335. sprzatacz.wyszukajBrudny(r);
  336. int i = 0;
  337. boolean posprzatano = false;
  338. while (i < oPokoje.size() && posprzatano == false) {
  339. if (oPokoje.get(i).stan == Status.sprzataj) {
  340. oPokoje.set(i, new Pokoj(i + 1));
  341. oPokoje.get(i).posprzatano();
  342. //oPokoje.get(i).setStan(Status.wolny);
  343. posprzatano = true;
  344. } else {
  345. i++;
  346. }
  347. }
  348. });
  349. button_Zajmij.setOnAction(e -> { //not wokr
  350. if (TextField_Nazwisko.getText().isEmpty()) {
  351. System.out.println("Podaj Nazwisko!");
  352. } else {
  353.  
  354. int i = 0;
  355. boolean zajmij = false;
  356. rec.zajmijPokoj(r, TextField_Nazwisko.getText());
  357. while (i < oPokoje.size() && zajmij == false) {
  358. if (oPokoje.get(i).uzytkownik.equals(TextField_Nazwisko.getText()) && oPokoje.get(i).stan == Status.zarezerwowany) {
  359. //rec.zajmijPokoj(r, TextField_Nazwisko.getText());
  360. oPokoje.set(i, new Pokoj(i + 1));
  361. oPokoje.get(i).zajmij(TextField_Nazwisko.getText());
  362. zajmij = true;
  363. } else {
  364. i++;
  365. }
  366. }
  367. i = 0;
  368. while (i < oPokoje.size() && zajmij == false) {
  369. if (oPokoje.get(i).stan == Status.wolny) {
  370. //rec.zajmijPokoj(r, TextField_Nazwisko.getText());
  371. oPokoje.set(i, new Pokoj(i + 1));
  372. oPokoje.get(i).zajmij(TextField_Nazwisko.getText());
  373. zajmij = true;
  374. } else {
  375. i++;
  376. }
  377.  
  378. }
  379. // rec.zajmijPokoj(r, TextField_Nazwisko.getText());
  380. }
  381. });
  382.  
  383. }
  384. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement