Skip to content
Snippets Groups Projects
Commit a30c4e73 authored by AdrianBeilharz's avatar AdrianBeilharz
Browse files

Merge branch 'main' into dev-frontend

parents e6b6c486 8276ba63
No related branches found
No related tags found
No related merge requests found
Showing
with 140 additions and 66 deletions
......@@ -4,6 +4,7 @@ import com.ebdapo.backend.entity.enums.Rolle;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.annotations.Type;
import javax.persistence.*;
import java.util.List;
......@@ -31,7 +32,8 @@ public class Benutzer {
@Column(name="passwort", nullable = false)
private String passwort;
@Column(name="aktiv", nullable = false)
@Type(type = "org.hibernate.type.NumericBooleanType")
@Column(name="aktiv",columnDefinition = "TINYINT", nullable = false)
private boolean aktiv;
@Enumerated(EnumType.STRING)
......
......@@ -31,6 +31,9 @@ public class Betaeubungsmittel {
@Column(name="einheit", nullable = false)
private Einheit einheit;
@Column(name="menge")
private int menge;
@ManyToOne(targetEntity = Apotheke.class)
@JoinColumn(name="apotheke", referencedColumnName = "id")
private Apotheke apotheke;
......
......@@ -19,5 +19,6 @@ public class BenutzerAPIDetails {
private String apotheke; //id
private String oldPassword;
private String newPassword;
private String passwort;
}
......@@ -15,6 +15,7 @@ public class BetaeubungsmittelAPIDetails {
private Darreichungsform darreichungsform;
private Einheit einheit;
private String apotheke; //id
private int menge;
}
......@@ -12,7 +12,6 @@ public class LieferantAPIDetails {
private String id;
private String name;
private Adresse anschrift;
private String apotheke; //id
}
......@@ -27,6 +27,7 @@ public class ApothekenController {
@PostMapping("/apotheke")
public ResponseEntity<?> newApotheke(@RequestBody Apotheke apotheke) {
if(apotheke.getName() == null || apotheke.getEmail() == null || apotheke.getAnschrift() == null) {
throw new InvalidInputException("Ungültige oder fehlende Angaben");
}
......@@ -53,12 +54,14 @@ public class ApothekenController {
@PutMapping("/apotheke/{apothekeId}")
public ResponseEntity<?> updateApotheke(@PathVariable String apothekeId, @RequestBody Apotheke newApo) {
if(!authController.checkIfAuthorized(authController.getCurrentUsername(), apothekeId)) {
//only admin can update apotheke
if(!authController.isAdmin(authController.getCurrentUsername(), apothekeId)) {
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
Apotheke apo = apothekenRepo.findById(apothekeId).orElseThrow(InvalidInputException::new);
apo.setName(newApo.getName());
apo.setEmail(newApo.getEmail());
if(newApo.getAnschrift() != null){
apo.getAnschrift().setNummer(newApo.getAnschrift().getNummer());
apo.getAnschrift().setOrt(newApo.getAnschrift().getOrt());
......@@ -73,9 +76,15 @@ public class ApothekenController {
@DeleteMapping("/apotheke/{apothekeId}")
public ResponseEntity<?> deleteApotheke(@PathVariable String apothekeId) {
//only admin can delete apotheke
if(!authController.isAdmin(authController.getCurrentUsername(), apothekeId)) {
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
if(!apothekenRepo.existsById(apothekeId)) {
throw new BadRequestException();
}
apothekenRepo.deleteById(apothekeId);
return new ResponseEntity<>(HttpStatus.OK);
}
......
......@@ -83,10 +83,6 @@ public class ArztController {
if(found == null) {
throw new InvalidInputException("Arzt konnte nicht gefunden werden");
}
if(arzt.getApotheke() == null || arzt.getApotheke().isEmpty()){
throw new InvalidInputException("ApothekenId darf nicht leer sein");
}
found.setName(arzt.getName());
found.getAnschrift().setPlz(arzt.getAnschrift().getPlz());
......@@ -94,7 +90,6 @@ public class ArztController {
found.getAnschrift().setStrasse(arzt.getAnschrift().getStrasse());
found.getAnschrift().setNummer(arzt.getAnschrift().getNummer());
found.setApotheke(apothekenRepo.findById(arzt.getApotheke()).orElseThrow(InvalidInputException::new));
arztRepo.save(found);
return new ResponseEntity<>(found, HttpStatus.OK);
}
......
......@@ -56,31 +56,34 @@ public class BenutzerController {
}
@PostMapping("/apotheke/{apothekeId}/benutzer")
public ResponseEntity<?> createNewBenutzer(@PathVariable String apothekeId, @RequestBody Benutzer benutzer) {
public ResponseEntity<?> createNewBenutzer(@PathVariable String apothekeId, @RequestBody BenutzerAPIDetails benutzerData) {
if(!authController.checkIfAuthorized(authController.getCurrentUsername(), apothekeId)) {
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
benutzer.setApotheke(apothekeRepo.findById(apothekeId).orElseThrow(InvalidInputException::new));
String nutzername = benutzer.getNutzername();
String name = benutzer.getName();
String vorname = benutzer.getVorname();
String passwort = benutzer.getPasswort();
if(nutzername == null || benutzer.getApotheke() == null || vorname == null || name == null ||
passwort == null || benutzer.getRolle() == null){
if(benutzerData.getPasswort() == null || benutzerData.getVorname() == null || benutzerData.getName() == null
|| benutzerData.getRolle() == null) {
throw new InvalidInputException("Ungültige oder fehlende Angaben");
}else if(nutzername.length() < 4 ||vorname.length() < 1 || name.length() < 1 || passwort.length() < 5) {
}else if(benutzerData.getNutzername().length() < 4 || benutzerData.getVorname().length() < 1 ||
benutzerData.getName().length() < 1 || benutzerData.getPasswort().length() < 5) {
throw new InvalidInputException("Ungültige oder fehlende Angaben");
}
if(checkIfUserExists(benutzer)) {
if(checkIfUserExists(benutzerData)) {
throw new InvalidInputException("Benutzer existiert bereits");
}
Benutzer benutzer = new Benutzer();
benutzer.setApotheke(apothekeRepo.findById(apothekeId).orElseThrow(InvalidInputException::new));
benutzer.setNutzername(benutzerData.getNutzername());
benutzer.setName(benutzerData.getName());
benutzer.setVorname(benutzerData.getVorname());
benutzer.setPasswort(benutzerData.getPasswort());
benutzer.setRolle(benutzerData.getRolle());
benutzer.setId(UUID.randomUUID().toString());
benutzer.setPasswort(new BCryptPasswordEncoder().encode(benutzer.getPasswort()));
benutzer.setPasswort(new BCryptPasswordEncoder().encode(benutzerData.getPasswort()));
benutzer.setAktiv(true);
benutzerRepo.save(benutzer);
return new ResponseEntity<>(benutzer, HttpStatus.CREATED);
......@@ -96,41 +99,67 @@ public class BenutzerController {
@PutMapping("/apotheke/{apothekeId}/benutzer/{benutzerId}")
public ResponseEntity<?> updateBenutzerById(@PathVariable String apothekeId, @PathVariable String benutzerId, @RequestBody BenutzerAPIDetails newBenutzer){
if(!authController.checkIfAuthorizedAndSameUserOrAdmin(authController.getCurrentUsername(), apothekeId, benutzerId)) {
String authorized = authController.checkIfAuthorizedAndSameUserOrAdmin(authController.getCurrentUsername(), apothekeId, benutzerId);
if(authorized == null) {
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
if(!benutzerRepo.existsById(benutzerId)){
throw new InvalidInputException("Falsche ID");
}
Benutzer benutzer = benutzerRepo.findById(benutzerId).orElseThrow(InvalidInputException::new);
if(usernameIsTaken(benutzer.getNutzername(), newBenutzer.getNutzername())) {
return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
}
boolean reqFromAdmin = authorized.equals("admin");
//checks if the user is authorized to change it (entering valid password)
String pw = newBenutzer.getOldPassword() ;
if(pw != null && !pw.isBlank() && !benutzer.getRolle().toString().toLowerCase().equals("admin")){
if(!new BCryptPasswordEncoder().matches(pw, benutzer.getPasswort())) {
throw new InvalidInputException("Falsches Passwort");
if(!reqFromAdmin){
if(pw != null && !pw.isBlank()){
if(!new BCryptPasswordEncoder().matches(pw, benutzer.getPasswort())) {
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
}else {
return new ResponseEntity<>(HttpStatus.FORBIDDEN);
}
}else {
throw new InvalidInputException("Passwort wird benötigt");
}
Apotheke apo = apothekeRepo.findById(apothekeId).orElseThrow(InvalidInputException::new);
benutzer.setName(newBenutzer.getName());
benutzer.setNutzername(newBenutzer.getNutzername());
benutzer.setVorname(newBenutzer.getVorname());
//Nur Admin kann aktiv oder inaktiv setzen
if(reqFromAdmin){
benutzer.setAktiv(newBenutzer.isAktiv());
}
//nur admin kann Rolle ändern
if(reqFromAdmin && newBenutzer.getRolle() != null){
benutzer.setRolle(newBenutzer.getRolle());
}
if(newBenutzer.getNewPassword() != null){
benutzer.setPasswort(new BCryptPasswordEncoder().encode(newBenutzer.getNewPassword()));
}
benutzer.setAktiv(newBenutzer.isAktiv());
benutzer.setRolle(newBenutzer.getRolle());
benutzer.setApotheke(apo);
benutzerRepo.save(benutzer);
return new ResponseEntity<>(benutzer, HttpStatus.OK);
}
private boolean usernameIsTaken(String current, String newName) {
return !current.equals(newName) && benutzerRepo.getBenutzerByUsername(newName) != null;
}
@DeleteMapping("/apotheke/{apothekeId}/benutzer/{benutzerId}")
public ResponseEntity<?> deleteUser(@PathVariable String apothekeId, @PathVariable String benutzerId) {
if(!authController.checkIfAuthorized(authController.getCurrentUsername(), apothekeId)) {
......@@ -154,7 +183,7 @@ public class BenutzerController {
}
private boolean checkIfUserExists(Benutzer benutzer) {
private boolean checkIfUserExists(BenutzerAPIDetails benutzer) {
return benutzerRepo.getBenutzerByUsername(benutzer.getNutzername()) != null;
}
}
......@@ -142,6 +142,7 @@ public class BetaeubungsmittelBuchungController {
zugang.setPruefdatum(btDetails.getPruefdatum());
Betaeubungsmittel btm = btmRepo.findById(btDetails.getBtm()).orElseThrow(InvalidInputException::new);
btm.setMenge(btm.getMenge()+zugang.getMenge());
zugang.setBtm(btm);
Benutzer benutzer = benutzerRepository.findById(btDetails.getBenutzer()).orElseThrow(InvalidInputException::new);
......@@ -151,6 +152,9 @@ public class BetaeubungsmittelBuchungController {
Lieferant lieferant = lieferantRepo.findById(btDetails.getLieferant()).orElseThrow(InvalidInputException::new);
zugang.setLieferant(lieferant);
zugang.setAnfordergungsschein(btDetails.getAnforderungsschein());
btmRepo.save(btm);
zugangRepository.save(zugang);
return new ResponseEntity<>(zugang, HttpStatus.CREATED);
......@@ -163,6 +167,7 @@ public class BetaeubungsmittelBuchungController {
abgang.setPruefdatum(btDetails.getPruefdatum());
Betaeubungsmittel btm = btmRepo.findById(btDetails.getBtm()).orElseThrow(InvalidInputException::new);
btm.setMenge(btm.getMenge()-abgang.getMenge());
abgang.setBtm(btm);
Benutzer benutzer = benutzerRepository.findById(btDetails.getBenutzer()).orElseThrow(InvalidInputException::new);
......@@ -174,6 +179,8 @@ public class BetaeubungsmittelBuchungController {
Arzt arzt = arztRepository.findById(btDetails.getArzt()).orElseThrow(InvalidInputException::new);
abgang.setArzt(arzt);
abgang.setRezept(btDetails.getRezept());
btmRepo.save(btm);
abgangRepository.save(abgang);
return new ResponseEntity<>(abgang, HttpStatus.CREATED);
}else {
......@@ -206,9 +213,13 @@ public class BetaeubungsmittelBuchungController {
}
Zugang z = zugangRepository.findByIds(btmbuchungId, apothekeId);
if(z != null){
Betaeubungsmittel btm = z.getBtm();
int previousMenge = z.getMenge();
if(!pruefer){
//Wenn eine Buchung aktualisiert wird, muss die vorherige Mengenberechnung
//rückgängig gemacht werden
btm.setMenge(btm.getMenge()-previousMenge+newBtmBuchung.getMenge());
z.setBenutzer(benutzerRepository.findById(newBtmBuchung.getBenutzer()).orElseThrow(InvalidInputException::new));
z.setBtm(btmRepo.findById(newBtmBuchung.getBtm()).orElseThrow(InvalidInputException::new));
z.setMenge(newBtmBuchung.getMenge());
......@@ -216,13 +227,17 @@ public class BetaeubungsmittelBuchungController {
z.setLieferant(lieferantRepo.findById(newBtmBuchung.getLieferant()).orElseThrow(InvalidInputException::new));
}
z.setPruefdatum(newBtmBuchung.getPruefdatum());
btmRepo.save(btm);
zugangRepository.save(z);
return new ResponseEntity<>(z, HttpStatus.OK);
}
Abgang a = abgangRepository.findByIds(btmbuchungId, apothekeId);
if(a != null){
Betaeubungsmittel btm = a.getBtm();
int previousMenge = a.getMenge();
if(!pruefer){
btm.setMenge(btm.getMenge()+previousMenge-newBtmBuchung.getMenge());
a.setBenutzer(benutzerRepository.findById(newBtmBuchung.getBenutzer()).orElseThrow(InvalidInputException::new));
a.setBtm(btmRepo.findById(newBtmBuchung.getBtm()).orElseThrow(InvalidInputException::new));
a.setMenge(newBtmBuchung.getMenge());
......@@ -231,6 +246,7 @@ public class BetaeubungsmittelBuchungController {
a.setArzt(arztRepository.findById(newBtmBuchung.getArzt()).orElseThrow(InvalidInputException::new));
}
a.setPruefdatum(newBtmBuchung.getPruefdatum());
btmRepo.save(btm);
abgangRepository.save(a);
return new ResponseEntity<>(a, HttpStatus.OK);
}else {
......
......@@ -71,12 +71,13 @@ public class BetaeubungsmittelController {
throw new InvalidInputException("Betaeubungsmittel konnte nicht gefunden werden");
}
Apotheke apo = apothekeRepo.findById(newBtm.getApotheke()).orElseThrow(InvalidInputException::new);
Apotheke apo = apothekeRepo.findById(apothekeId).orElseThrow(InvalidInputException::new);
btm.setName(newBtm.getName());
btm.setDarreichungsform(newBtm.getDarreichungsform());
btm.setEinheit(newBtm.getEinheit());
btm.setApotheke(apo);
btm.setMenge(newBtm.getMenge());
btmRepo.save(btm);
return new ResponseEntity<>(btm, HttpStatus.OK);
......
......@@ -80,18 +80,12 @@ public class LieferantController {
throw new InvalidInputException("Lieferant konnte nicht gefunden werden");
}
if(newLiefer.getApotheke() == null || newLiefer.getApotheke().isEmpty()){
throw new InvalidInputException("ApothekenId darf nicht leer sein");
}
found.setName(newLiefer.getName());
found.getAnschrift().setPlz(newLiefer.getAnschrift().getPlz());
found.getAnschrift().setOrt(newLiefer.getAnschrift().getOrt());
found.getAnschrift().setStrasse(newLiefer.getAnschrift().getStrasse());
found.getAnschrift().setNummer(newLiefer.getAnschrift().getNummer());
found.setApotheke(apothekenRepo.findById(newLiefer.getApotheke()).orElseThrow(InvalidInputException::new));
lieferantRepo.save(found);
return new ResponseEntity<>(found, HttpStatus.OK);
}
......
......@@ -65,11 +65,25 @@ public class AuthenticationController {
}
}
public boolean checkIfAuthorizedAndSameUserOrAdmin(String username, String apothekeId, String benutzerId) {
public String checkIfAuthorizedAndSameUserOrAdmin(String username, String apothekeId, String benutzerId) {
if(username == null || apothekeId == null){
return null;
}
Benutzer b = benutzerRepo.getBenutzerWithApotheke(username, apothekeId);
if(b.getRolle().toString().toLowerCase().equals("admin")){
return "admin";
}else if(b.getId().equals(benutzerId)) {
return "user";
}
//unauthorized
return null ;
}
public boolean isAdmin(String username, String apothekeId) {
if(username == null ){
return false;
}
Benutzer b = benutzerRepo.getBenutzerWithApotheke(username, apothekeId);
return b.getRolle().toString().toLowerCase().equals("admin") || b.getId().equals(benutzerId);
return b.getRolle().toString().toLowerCase().equals("admin");
}
}
......@@ -9,27 +9,36 @@ INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('8', 'Honigstrasse'
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('9', 'Hausstrasse', '16/1a','Reutlingen', '72764' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('10', 'Neckartalstrasse', '153','Stuttgart', '70376' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('11', 'Friozheimerstrasse', '7','Stuttgart', '70499' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('12', 'Milchstrasse', '14a','Dresden', '01139' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('13', 'Hasenbergstrasse', '8','Dresden', '01139' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('14', 'Königstrasse', '56','Dresden', '01139' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('15', 'Apothekerstrasse', '23','Dresden', '01126' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('16', 'Honigstrasse', '1','Reutlingen', '72764' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('17', 'Hausstrasse', '24','Reutlingen', '72764' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('18', 'Echazstrasse', '65/1','Reutlingen', '54326' );
INSERT INTO adresse_t(id, strasse, nummer, ort, plz) values ('19', 'Honigstrasse', '5','Reutlingen', '72764' );
INSERT INTO apotheke(id, name, email, anschrift) values ('1', 'Löwen Apotheke','apo1@outlook.de', '1');
INSERT INTO apotheke(id, name, email, anschrift) values ('2', 'Dorf Apotheke', 'apo2@outlook.de', '2');
INSERT INTO apotheke(id, name, email, anschrift) values ('3', 'Hirsch Apotheke', 'apo3@outlook.de', '5');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('1', 'Capros Akut 20 mg', 'Tbl', 'Stueck', '1');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('2', 'Carehoxal 10mg', 'RTA', 'Stueck', '1');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('3', 'Dipidolor', 'Ampullen', 'Stueck', '1');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('4', 'Dronabinol 25mg/ml','Rezeptursubstanz','mg', '1');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('5', 'Elvanse 30 mg', 'HKP', 'Stueck', '1');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('6', 'Fentanyl-Hexal Pfl 37,5 ug/Std.', 'Pfl', 'Stueck', '2');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('7', 'Carehoxal 10mg', 'RTA', 'Stueck', '2');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('8', 'Dipidolor', 'Ampullen', 'Stueck', '2');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('9', 'Equasim Ret. 20mg', 'HKP', 'Stueck', '2');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('10','Elvanse 30 mg' ,'HKP', 'Stueck', '2');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('11', 'Oxycodon/Nalox Beta 10/5', 'RTA', 'Stueck', '3');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('12', 'Oxycodon/Nalox 20/10 mg Beta', 'RTA', 'Stueck', '3');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('13', 'Oxiconoica 10 mg', 'RTA', 'Stueck', '3');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('14', 'Dipidolor', 'Ampullen', 'Stueck', '3');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('15', 'Palexia', 'RTA', 'Stueck', '3');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke) values ('16','Elvanse 30 mg','HKP', 'Stueck', '3');
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('1', 'Capros Akut 20 mg', 'Tbl', 'Stueck', '1', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('2', 'Carehoxal 10mg', 'RTA', 'Stueck', '1', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('3', 'Dipidolor', 'Ampullen', 'Stueck', '1', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('4', 'Dronabinol 25mg/ml','Rezeptursubstanz','mg', '1', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('5', 'Elvanse 30 mg', 'HKP', 'Stueck', '1', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('6', 'Fentanyl-Hexal Pfl 37,5 ug/Std.', 'Pfl', 'Stueck', '2', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('7', 'Carehoxal 10mg', 'RTA', 'Stueck', '2', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('8', 'Dipidolor', 'Ampullen', 'Stueck', '2', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('9', 'Equasim Ret. 20mg', 'HKP', 'Stueck', '2', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('10','Elvanse 30 mg' ,'HKP', 'Stueck', '2', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('11', 'Oxycodon/Nalox Beta 10/5', 'RTA', 'Stueck', '3', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('12', 'Oxycodon/Nalox 20/10 mg Beta', 'RTA', 'Stueck', '3', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('13', 'Oxiconoica 10 mg', 'RTA', 'Stueck', '3', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('14', 'Dipidolor', 'Ampullen', 'Stueck', '3', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('15', 'Palexia', 'RTA', 'Stueck', '3', 0);
INSERT INTO btm(id,name, darreichungsform, einheit,apotheke, menge) values ('16','Elvanse 30 mg','HKP', 'Stueck', '3', 0);
INSERT INTO benutzer(id , name, vorname, nutzername, passwort, rolle, aktiv, apotheke) values ('1', 'Heller', 'Helga', 'nutzername1', '123_abcd', 'ADMIN', true, '1');
INSERT INTO benutzer(id , name, vorname, nutzername, passwort, rolle, aktiv, apotheke) values ('2', 'Kurz', 'Martin', 'benutzername2', '123_zbgvf', 'Pruefer', true, '1');
......@@ -49,15 +58,15 @@ INSERT INTO benutzer(id , name, vorname, nutzername, passwort, rolle, aktiv, apo
INSERT INTO benutzer(id , name, vorname, nutzername, passwort, rolle, aktiv, apotheke) values ('15', 'pruefer', 'pruefer', 'pruefer', '$2a$10$HkldGXpGNCKV/u1c9dT1ZuUgCEHvtFgDGcVEQjAMNzz96ERJodIyW', 'PRUEFER', true, '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('1', 'GEHE', '10', '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('2', 'GEHE', '10', '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('3', 'GEHE', '10', '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('4', 'Alliance Healthcare GmbH', '11', '2');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('5', 'Alliance Healthcare GmbH', '11', '2');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('6', 'Alliance Healthcare GmbH', '11', '2');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('7', 'Noweda','1', '3');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('8', 'Noweda','1', '3');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('9', 'Noweda','1', '3');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('1', 'Browsecat', '11', '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('2', 'Wikivu', '12', '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('3', 'Demizz', '13', '1');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('4', 'Rhyzio', '14', '2');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('5', 'Tagtune', '15', '2');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('6', 'Jayo', '16', '2');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('7', 'Mymm','17', '3');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('8', 'Jabberbean','18', '3');
INSERT INTO lieferant (id, name, anschrift, apotheke) values ('9', 'Topiczoom','19', '3');
INSERT INTO arzt (id, name, anschrift, apotheke) value ('1', 'Dr. Krause', '6', '1');
INSERT INTO arzt (id, name, anschrift, apotheke) value ('2', 'Dr. Michellmann', '7', '1');
......
......@@ -34,6 +34,7 @@ CREATE TABLE btm(
darreichungsform ENUM ('Tbl', 'Trp', 'Sup', 'RTA', 'RKA', 'Ampullen', 'Rezeptursubstanz', 'HKP', 'Pfl') NOT NULL,
einheit ENUM('g','mg','ml', 'Stueck') NOT NULL,
apotheke VARCHAR (40) NOT NULL,
menge INTEGER,
PRIMARY KEY (id),
FOREIGN KEY (apotheke) REFERENCES apotheke (id) ON UPDATE CASCADE ON DELETE CASCADE
);
......
......@@ -3,7 +3,7 @@
## Docker Container bauen
```
docker-compose up down #only needed if containers already exist
docker-compose down #only needed if containers already exist
cd Backend
mvn package -Dmaven.test.skip=true
cd ..
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment