package Übungen.MyBankSystem;

import java.util.ArrayList;

public class User {

	private String name;
	private String password;
	private int id;
	private static int ID = 1000;
	private ArrayList<Konto> konten;

	public User(String name, String password) {
		this.name = name;
		this.password = password;
		this.id = ID++;
		konten = new ArrayList<>();
	}
	
	public void addKonto(Konto neuesKonto) {
		konten.add(neuesKonto);
	}
	
	public void einzahlen(int betrag, Konto konto) throws Exception {

		if (betrag > 0)
			konto.setKontostand(konto.getKontostand() + betrag);
		else
			throw new Exception("Der Betrag muss größer 0€ sein!");
	}

	public void auszahlen(int betrag, Konto konto) throws Exception {
		if (betrag > konto.getKontostand())
			throw new Exception("Sie haben kein genug Geld!");

		konto.setKontostand(konto.getKontostand() - betrag);

	}

	public void ueberweisen(int betrag, Konto sender, Konto empfaenger) throws Exception {
		if (empfaenger == null)
			throw new Exception("Dieser Konto existiert nicht");

		if (betrag > sender.getKontostand())
			throw new Exception("Sie haben kein genug Geld!");

		empfaenger.setKontostand(empfaenger.getKontostand() + betrag);
		sender.setKontostand(sender.getKontostand() - betrag);
	}
	
	
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public ArrayList<Konto> getKonten() {
		return konten;
	}

	public void setKonten(ArrayList<Konto> konten) {
		this.konten = konten;
	}

}
