Luotu enum Tyyppi {LOUNAS, PÄIVÄLLINEN}
Signed-off-by: laurimaaninka <lauri.maaninka@gmail.com>
This commit is contained in:
@@ -8,11 +8,17 @@ import java.util.ArrayList;
|
||||
|
||||
@SuppressWarnings("DuplicatedCode")
|
||||
public class Kuljetus implements TietokantaOlio {
|
||||
public enum Tyyppi {
|
||||
LOUNAS(),
|
||||
PÄIVÄLLINEN();
|
||||
}
|
||||
|
||||
private int id = -1;
|
||||
private int asiakasID;
|
||||
private String nimi;
|
||||
private LocalDate kuljetusPäivämäärä;
|
||||
private int kuljetusKierros;
|
||||
private Tyyppi tyyppi;
|
||||
private int salaatit, pääruoat, jälkiruoat;
|
||||
private String osoite, lisätieto, avainTieto, ruokarajoite;
|
||||
|
||||
@@ -22,6 +28,7 @@ public class Kuljetus implements TietokantaOlio {
|
||||
this.nimi = vanha.nimi;
|
||||
this.kuljetusPäivämäärä = vanha.kuljetusPäivämäärä;
|
||||
this.kuljetusKierros = vanha.kuljetusKierros;
|
||||
this.tyyppi = vanha.tyyppi;
|
||||
this.salaatit = vanha.salaatit;
|
||||
this.pääruoat = vanha.pääruoat;
|
||||
this.jälkiruoat = vanha.jälkiruoat;
|
||||
@@ -31,11 +38,12 @@ public class Kuljetus implements TietokantaOlio {
|
||||
this.ruokarajoite = vanha.ruokarajoite;
|
||||
}
|
||||
|
||||
public Kuljetus(Asiakas asiakas, LocalDate pvm, int kuljetusKierros) {
|
||||
public Kuljetus(Asiakas asiakas, LocalDate pvm, int kuljetusKierros, Tyyppi tyyppi) {
|
||||
this.asiakasID = asiakas.getId();
|
||||
this.nimi = asiakas.getNimi();
|
||||
this.kuljetusPäivämäärä = pvm;
|
||||
this.kuljetusKierros = kuljetusKierros;
|
||||
this.tyyppi = tyyppi;
|
||||
this.salaatit = asiakas.getPäivänSalaatit(pvm);
|
||||
this.pääruoat = asiakas.getPäivänPääruoat(pvm);
|
||||
this.jälkiruoat = asiakas.getPäivänJälkiruoat(pvm);
|
||||
@@ -45,7 +53,19 @@ public class Kuljetus implements TietokantaOlio {
|
||||
this.ruokarajoite = asiakas.getErityisruokavalio();
|
||||
}
|
||||
|
||||
private Kuljetus(int id, int asiakasID, String nimi, LocalDate kuljetusPäivämäärä, int kuljetusKierros, int salaatit, int pääruoat, int jälkiruoat, String osoite, String lisätieto, String avainTieto, String ruokarajoite) {
|
||||
private Kuljetus(int id,
|
||||
int asiakasID,
|
||||
String nimi,
|
||||
LocalDate kuljetusPäivämäärä,
|
||||
int kuljetusKierros,
|
||||
int salaatit,
|
||||
int pääruoat,
|
||||
int jälkiruoat,
|
||||
String osoite,
|
||||
String lisätieto,
|
||||
String avainTieto,
|
||||
String ruokarajoite,
|
||||
Tyyppi tyyppi) {
|
||||
this.id = id;
|
||||
this.asiakasID = asiakasID;
|
||||
this.nimi = nimi;
|
||||
@@ -118,19 +138,20 @@ public class Kuljetus implements TietokantaOlio {
|
||||
@Override
|
||||
public boolean päivitäTietokantaan() {
|
||||
try (Connection tietokanta = Tietokanta.haeYhteys()) {
|
||||
PreparedStatement stmt = tietokanta.prepareStatement("UPDATE kuljetukset set asiakasID = ?, nimi = ?, kuljetusPäivämäärä = ?, kuljetusKierros = ?, salaatit = ?, pääruoat = ?, jälkiruoat = ?, ruokarajoite = ?, osoite = ?, avainTieto = ?, lisätieto = ? WHERE id = ?");
|
||||
PreparedStatement stmt = tietokanta.prepareStatement("UPDATE kuljetukset set asiakasID = ?, nimi = ?, kuljetusPäivämäärä = ?, kuljetusKierros = ?, tyyppi = ?, salaatit = ?, pääruoat = ?, jälkiruoat = ?, ruokarajoite = ?, osoite = ?, avainTieto = ?, lisätieto = ? WHERE id = ?");
|
||||
stmt.setInt(1, asiakasID);
|
||||
stmt.setString(2, nimi);
|
||||
stmt.setDate(3, Date.valueOf(kuljetusPäivämäärä));
|
||||
stmt.setInt(4, kuljetusKierros);
|
||||
stmt.setInt(5, salaatit);
|
||||
stmt.setInt(6, pääruoat);
|
||||
stmt.setInt(7, jälkiruoat);
|
||||
stmt.setString(8, ruokarajoite);
|
||||
stmt.setString(9, osoite);
|
||||
stmt.setString(10, avainTieto);
|
||||
stmt.setString(11, lisätieto);
|
||||
stmt.setInt(12, id);
|
||||
stmt.setString(5, tyyppi.toString());
|
||||
stmt.setInt(6, salaatit);
|
||||
stmt.setInt(7, pääruoat);
|
||||
stmt.setInt(8, jälkiruoat);
|
||||
stmt.setString(9, ruokarajoite);
|
||||
stmt.setString(10, osoite);
|
||||
stmt.setString(11, avainTieto);
|
||||
stmt.setString(12, lisätieto);
|
||||
stmt.setInt(13, id);
|
||||
stmt.executeUpdate();
|
||||
return true;
|
||||
} catch (SQLException e) {
|
||||
@@ -169,6 +190,12 @@ public class Kuljetus implements TietokantaOlio {
|
||||
|
||||
try {
|
||||
while (rs.next()) {
|
||||
Tyyppi kuljetusTyyppi = Tyyppi.LOUNAS;
|
||||
switch (rs.getString("tyyppi")) {
|
||||
case "LOUNAS": kuljetusTyyppi = Tyyppi.LOUNAS; break;
|
||||
case "PÄIVÄLLINEN": kuljetusTyyppi = Tyyppi.PÄIVÄLLINEN; break;
|
||||
}
|
||||
|
||||
Kuljetus uusi = new Kuljetus(
|
||||
rs.getInt("id"),
|
||||
rs.getInt("asiakasID"),
|
||||
@@ -181,7 +208,8 @@ public class Kuljetus implements TietokantaOlio {
|
||||
rs.getString("osoite"),
|
||||
rs.getString("lisätieto"),
|
||||
rs.getString("avainTieto"),
|
||||
rs.getString("ruokarajoite")
|
||||
rs.getString("ruokarajoite"),
|
||||
kuljetusTyyppi
|
||||
);
|
||||
kuljetukset.add(uusi);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user