Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.HashSet;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- /**
- *
- * @author ebesard
- */
- public class AankoopManagement {
- private HashSet<AankoopProces> aankoopProcessen;
- private String gebruiker;
- public AankoopManagement(File file){
- try{
- int ingelezenProcessen= leesAankoopProcessen(file);
- System.out.println(ingelezenProcessen + " processen ingeladen!");
- }catch(Exception e){
- System.out.println("Geen processen ingeladen!");
- }
- }
- public int leesAankoopProcessen(File file)throws IOException, ClassNotFoundException{
- FileInputStream aankoopproces=null;
- aankoopproces= new FileInputStream(file);
- ObjectInputStream ois= new ObjectInputStream(aankoopproces);
- this.aankoopProcessen=(HashSet)ois.readObject();
- return this.aankoopProcessen.size();
- }
- public void schrijfAankoopProcessen(File file){
- FileOutputStream fout;
- try {
- fout = new FileOutputStream(file);
- ObjectOutputStream oos= new ObjectOutputStream(fout);
- oos.writeObject(this.aankoopProcessen);
- } catch (Exception ex) {
- System.out.println("Het bestand kan niet uitgeschreven worden!");
- }
- }
- public void setGebruiker(String gebruiker) {
- this.gebruiker = gebruiker;
- }
- public AankoopProces getAankoopProces(String aankoopOrderID){
- AankoopProces gezochtProces=null;
- for(AankoopProces proces:this.aankoopProcessen){
- if(proces.getOrder().getAankoopID().equals(aankoopOrderID)){
- gezochtProces=proces;
- }
- }
- return gezochtProces;
- }
- public String toevoegenAankoopOrder(String productID, int hoeveelheid, String leveranciersID){
- AankoopOrder nieuworder= new AankoopOrder(productID, leveranciersID, hoeveelheid, gebruiker);
- AankoopProces nieuwproces= new AankoopProces(nieuworder);
- this.aankoopProcessen.add(nieuwproces);
- return nieuworder.getAankoopID();
- }
- public void toevoegenGoederenOntvangen(String productID, int hoeveelheid, String leveranciersID, String aankoperID) throws AankoopException{
- GoederenOntvangen g = new GoederenOntvangen(productID, hoeveelheid, leveranciersID, gebruiker);
- AankoopProces p = getAankoopProces(aankoperID);
- if(p == null){
- throw new AankoopException(aankoperID + " hoort niet bij een gekend aankoop proces!");
- }
- //throw stopt uitvoering van uw methode
- p.setGoederenOntvangen(g);
- }
- public void toevoegenFactuur(String factuurID, String productID, int hoeveelheid,
- String leveranciersID, String aankoopOrderID)throws AankoopException{
- Factuur factuur = new Factuur(factuurID, productID, hoeveelheid, leveranciersID, gebruiker);
- AankoopProces p = getAankoopProces(aankoopOrderID);
- if(p==null){
- throw new AankoopException(aankoopOrderID + " hoort niet bij een gekend aankoop proces!");
- }
- p.setFactuur(factuur);
- }
- public HashSet<AankoopProces> interneControle(){
- HashSet<AankoopProces> afgerond= new HashSet<AankoopProces>();
- for(AankoopProces proces: this.aankoopProcessen){
- if(proces.isAfgerond() && proces.seperationOfDuties() && proces.threeWayMatch()){
- afgerond.add(proces);
- }
- }
- return afgerond;
- }
- /**public String printLog(){
- ArrayList<AankoopDocument>gesorteerdeProcessen= new ArrayList<>();
- for(AankoopProces proces: this.aankoopProcessen){
- if(proces.getFactuur()!= null){
- gesorteerdeProcessen.add(proces.getFactuur());
- }
- else if(proces.getGoederenOntvangen()!= null){
- gesorteerdeProcessen.add(proces.getGoederenOntvangen());
- }
- gesorteerdeProcessen.add(proces.getOrder());
- }
- if(gesorteerdeProcessen.isEmpty()){
- System.out.println("De log is leeg...");
- return "";
- }
- Collections.sort(gesorteerdeProcessen);
- String line="";
- for(AankoopDocument document: gesorteerdeProcessen){
- line += document.getAankoopID() + ";" + document.getPrefix() + ";"
- + document.getDatumTijd() + ";" + document.getUitvoerder() + "\n";
- }
- return line;
- }**/
- public String printLog(){
- ArrayList<AankoopDocument> list = new ArrayList<>();
- for(AankoopProces next : aankoopProcessen)
- {
- if(next.getFactuur()!=null){
- list.add(next.getFactuur());
- }
- if(next.getGoederenOntvangen()!=null){
- list.add(next.getGoederenOntvangen());
- }
- list.add(next.getOrder());
- }
- if(list.isEmpty())
- {
- System.out.println("De log is leeg...");
- return "";
- }
- Collections.sort(list);
- String line = "";
- for(AankoopDocument next : list){
- line += next.getAankoopID() + ";" + next.getPrefix() + ";"
- + next.getDatumTijd() + ";" + next.getUitvoerder() +"\n";
- }
- return line;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement