· 9 years ago · Dec 04, 2016, 08:54 PM
1//this is the button action im working on
2public void lisaMenyyNupp() {
3
4 try{
5 String query = "Select * from Toiduinfo where Toidu = ?";
6 prep = con.prepareStatement(query);
7 prep.setString(1, (String)cbToiduaine.getSelectionModel().getSelectedItem());
8 rs = prep.executeQuery();
9 String food = rs.getString("Toidu");
10 int kalor = rs.getInt("Kalorid");
11 int valk = rs.getInt("Valgud");
12 int sys = rs.getInt("Süsivesikud");
13 int rasv = rs.getInt("Rasvad");
14
15 con = DriverManager.getConnection("jdbc:sqlite:Menyy.sqlite");
16 stat = con.createStatement();
17 stat.executeUpdate(
18 "CREATE TABLE IF NOT EXISTS Menuu (Toidunimi TEXT, Calories INTEGER, Proteins INTEGER, Carbs INTEGER, Fats INTEGER)");
19
20 String queryone = "INSERT OR IGNORE INTO Menuu (Toidunimi, Calories, Proteins, Carbs, Fats) VALUES(?, ?, ?, ?, ?)";
21 prep = con.prepareStatement(queryone);
22 while(rs.next()){
23 prep.setString(1, food);
24 prep.setInt(2, kalor);
25 prep.setInt(3, valk);
26 prep.setInt(4, sys);
27 prep.setInt(5, rasv);
28 prep.close();
29 }
30
31 }catch(Exception e) {
32 System.out.println(e);
33 }
34
35}
36
37package packet;
38
39import java.sql.Connection;
40import java.sql.DriverManager;
41import java.sql.PreparedStatement;
42import java.sql.ResultSet;
43import java.sql.SQLException;
44import java.sql.Statement;
45import javafx.collections.FXCollections;
46import javafx.collections.ObservableList;
47import javafx.event.ActionEvent;
48import javafx.fxml.FXML;
49import javafx.fxml.FXMLLoader;
50import javafx.scene.Parent;
51import javafx.scene.Scene;
52import javafx.scene.control.Button;
53import javafx.scene.control.ComboBox;
54import javafx.scene.control.Label;
55import javafx.scene.control.TableColumn;
56import javafx.scene.control.TableView;
57import javafx.scene.control.TextField;
58import javafx.scene.control.cell.PropertyValueFactory;
59import javafx.stage.Stage;
60
61public class Paevikcontroll {
62 @FXML
63 private Label summaKcal;
64
65 @FXML
66 private Label summaValk;
67
68 @FXML
69 private Label summaSysi;
70
71 @FXML
72 private Label summaRasv;
73
74 @FXML
75 private Button lisaMenyy;
76
77 @FXML
78 private TableView tbTabel;
79
80 @FXML
81 private TableColumn tbToit;
82
83 @FXML
84 private TableColumn tbValk;
85
86 @FXML
87 private TableColumn tbRasv;
88
89 @FXML
90 private TableColumn tbKcal;
91
92 @FXML
93 private TableColumn tbSysi;
94
95 @FXML
96 private ComboBox cbToiduaine;
97
98 @FXML
99 private TextField txtKogus;
100
101 private static Connection con;
102 private static Statement stat;
103 private PreparedStatement prep;
104 ResultSet rs = null;
105 ObservableList menuData;
106 ObservableList options = FXCollections.observableArrayList();
107
108 @FXML
109 private void initialize() {
110
111 menuData = FXCollections.observableArrayList();
112
113 tbKcal.setCellValueFactory(new PropertyValueFactory<Toidubaas, Integer>("rbCal"));
114 tbValk.setCellValueFactory(new PropertyValueFactory<Toidubaas, Integer>("rbProt"));
115 tbSysi.setCellValueFactory(new PropertyValueFactory<Toidubaas, Integer>("rbCarb"));
116 tbRasv.setCellValueFactory(new PropertyValueFactory<Toidubaas, Integer>("rbFat"));
117 tbToit.setCellValueFactory(new PropertyValueFactory<Toidubaas, String>("rbMeal"));
118
119 try {
120
121 con = DriverManager.getConnection("jdbc:sqlite:Fooditabel.sqlite");
122 stat = con.createStatement();
123 stat.executeUpdate(
124 "CREATE TABLE IF NOT EXISTS Menuu (Toidunimi TEXT, Calories INTEGER, Proteins INTEGER, Carbs INTEGER, Fats INTEGER)");
125
126 ResultSet rs = con.createStatement()
127 .executeQuery("SELECT Toidunimi, Calories, Proteins, Carbs, Fats FROM Menuu");
128 while (rs.next()) {
129 Toidubaas nrt = new Toidubaas();
130
131 nrt.rbMeal.set(rs.getString("Toidunimi"));
132 nrt.rbCal.set(rs.getInt("Calories"));
133 nrt.rbProt.set(rs.getInt("Proteins"));
134 nrt.rbCarb.set(rs.getInt("Carbs"));
135 nrt.rbFat.set(rs.getInt("Fats"));
136 menuData.add(nrt);
137 }
138
139 tbTabel.setItems(menuData);
140
141 } catch (SQLException ex) {
142 System.out.println(ex.getMessage());
143 ;
144 }
145
146 cbToiduaine.setItems(options);
147 fillComboBox();
148
149 }
150
151
152 public void fillComboBox() {
153 String query = "select Toidu from Toiduinfo";
154 try {
155 con = DriverManager.getConnection("jdbc:sqlite:Fooditabel.sqlite");
156
157 prep = con.prepareStatement(query);
158 rs = prep.executeQuery();
159 while (rs.next()) {
160 options.add(rs.getString("Toidu"));
161 }
162 prep.close();
163 rs.close();
164 } catch (SQLException e) {
165
166 e.printStackTrace();
167 }
168 }
169
170 public void DataNupp(ActionEvent event) throws Exception {
171 try {
172 Parent root1 = (Parent) FXMLLoader.load(getClass().getResource("Databaas.fxml"));
173 Stage stage = new Stage();
174 stage.setScene(new Scene(root1));
175 stage.show();
176 } catch (Exception e) {
177
178 }
179 }
180
181 public void lisaMenyyNupp() {
182
183 try{
184 String query = "Select * from Toiduinfo where Toidu = ?";
185 prep = con.prepareStatement(query);
186 prep.setString(1, (String)cbToiduaine.getSelectionModel().getSelectedItem());
187 rs = prep.executeQuery();
188 String food = rs.getString("Toidu");
189 int kalor = rs.getInt("Kalorid");
190 int valk = rs.getInt("Valgud");
191 int sys = rs.getInt("Süsivesikud");
192 int rasv = rs.getInt("Rasvad");
193
194 con = DriverManager.getConnection("jdbc:sqlite:Fooditabel.sqlite");
195 stat = con.createStatement();
196 stat.executeUpdate(
197 "CREATE TABLE IF NOT EXISTS Menuu (Toidunimi TEXT, Calories INTEGER, Proteins INTEGER, Carbs INTEGER, Fats INTEGER)");
198
199 String queryone = "INSERT OR IGNORE INTO Menuu (Toidunimi, Calories, Proteins, Carbs, Fats) VALUES(?, ?, ?, ?, ?)";
200 prep = con.prepareStatement(queryone);
201 while(rs.next()){
202 prep.setString(1, food);
203 prep.setInt(2, kalor);
204 prep.setInt(3, valk);
205 prep.setInt(4, sys);
206 prep.setInt(5, rasv);
207 prep.close();
208 }
209
210 /*while(rs.next()){
211 Toidubaas nst = new Toidubaas();
212 nst.rbMeal.set(rs.getString("Toidu"));
213 nst.rbCal.set(rs.getInt("Kalorid"));
214 nst.rbProt.set(rs.getInt("Valgud"));
215 nst.rbCarb.set(rs.getInt("Süsivesikud"));
216 nst.rbFat.set(rs.getInt("Rasvad"));
217 menuData.add(nst);
218 }*/
219 }catch(Exception e) {
220 System.out.println(e);
221 }
222
223 /*try{
224 String query = "Insert or Ignore into Menuu(Toidunimi, Calories, Proteins, Carbs, Fats)";
225 prep = con.prepareStatement(query);
226 prep.setObject(1, cbToiduaine.getSelectionModel().getSelectedItem());
227 }catch(Exception e){
228 System.out.println(e);
229 }*/
230 summad();
231
232 }
233
234 public void valiNupp() {
235
236 refreshCB();
237 }
238
239 public void refreshCB() {
240 options.clear();
241 try {
242 String query = "Select * FROM Toiduinfo";
243 prep = con.prepareStatement(query);
244 rs = prep.executeQuery();
245
246 while (rs.next()) {
247
248 options.add(rs.getString("Toidu"));
249 cbToiduaine.setItems(options);
250 }
251 prep.close();
252 rs.close();
253 } catch (Exception e2) {
254 System.out.println(e2);
255 }
256 }
257 public void summad(){
258
259 int sumCal = 0;
260 int sumProt = 0;
261 int sumCarb = 0;
262 int sumFat = 0;
263 try {
264 con = DriverManager.getConnection("jdbc:sqlite:Fooditabel.sqlite");
265 stat = con.createStatement();
266
267 rs = stat.executeQuery("SELECT SUM(Calories), SUM(Proteins), SUM(Carbs), SUM(Fats) FROM Menuu");
268 while (rs.next()) {
269 int c = rs.getInt(1);
270 int d = rs.getInt(2);
271 int e = rs.getInt(3);
272 int f = rs.getInt(4);
273 sumCal = sumCal + c;
274 sumProt = sumProt + d;
275 sumCarb = sumCarb + e;
276 sumFat = sumFat + f;
277 fillComboBox();
278 refreshCB();
279 }
280
281
282 rs.close();
283
284 } catch (Exception e) {
285 System.out.println(e);
286 }
287 String sC = Integer.toString(sumCal);
288 String sP = Integer.toString(sumProt);
289 String sS = Integer.toString(sumCarb);
290 String sF = Integer.toString(sumFat);
291 summaKcal.setText(sC + " kcal");
292 summaValk.setText(sP + " g");
293 summaSysi.setText(sS + " g");
294 summaRasv.setText(sF + " g");
295
296
297 }
298
299 public void removeBtn(){
300
301 }
302
303
304 }
305
306package packet;
307
308import javafx.beans.property.SimpleIntegerProperty;
309import javafx.beans.property.SimpleStringProperty;
310
311public class Toidubaas {
312
313 public SimpleIntegerProperty rbCal = new SimpleIntegerProperty();
314 public SimpleIntegerProperty rbProt = new SimpleIntegerProperty();
315 public SimpleIntegerProperty rbCarb = new SimpleIntegerProperty();
316 public SimpleIntegerProperty rbFat = new SimpleIntegerProperty();
317 public SimpleStringProperty rbMeal = new SimpleStringProperty();
318
319 public Toidubaas() {
320 }
321 public Toidubaas(String sbMeal) {
322 this.rbMeal = new SimpleStringProperty(sbMeal);
323 ;
324 }
325
326 public Toidubaas(String sbMeal, Integer sbCal, Integer sbProt, Integer sbCarb, Integer sbFat) {
327
328 this.rbMeal = new SimpleStringProperty(sbMeal);
329 this.rbCal = new SimpleIntegerProperty(sbCal);
330 this.rbProt = new SimpleIntegerProperty(sbProt);
331 this.rbCarb = new SimpleIntegerProperty(sbCarb);
332 this.rbFat = new SimpleIntegerProperty(sbFat);
333
334 }
335
336 public String getRbMeal() {
337 return rbMeal.get();
338 }
339
340 public void setRbMeal(String v) {
341 rbMeal.set(v);
342 }
343
344 public Integer getRbCal() {
345 return rbCal.get();
346 }
347
348 public void setRbCal(Integer v) {
349 rbCal.set(v);
350 }
351
352 public Integer getRbProt() {
353 return rbProt.get();
354 }
355
356 public void setRbProt(Integer v) {
357 rbProt.set(v);
358 }
359
360 public Integer getRbCarb() {
361 return rbCarb.get();
362 }
363
364 public void setRbCarb(Integer v) {
365 rbCarb.set(v);
366 }
367
368 public Integer getRbFat() {
369 return rbFat.get();
370 }
371
372 public void setRbFat(Integer v) {
373 rbFat.set(v);
374 }
375
376}