Stoffel

Untitled

Jan 9th, 2012
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 8.98 KB | None | 0 0
  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package resources;
  6.  
  7. import Beans.DagBeanRemote;
  8. import Entities.Afspraak;
  9. import Entities.Dag;
  10. import java.math.BigDecimal;
  11. import java.math.BigInteger;
  12. import java.util.ArrayList;
  13. import java.util.Date;
  14. import java.util.List;
  15. import javax.naming.InitialContext;
  16. import javax.naming.NamingException;
  17.  
  18.  
  19. public class AfspraakManager {
  20.     private DagBeanRemote afmgr;
  21.     public AfspraakManager()
  22.     {
  23. try {
  24.             afmgr = (DagBeanRemote) InitialContext.doLookup("java:global/DokterAgenda-ejb/DagBean!Beans.DagBeanRemote");
  25.         } catch (NamingException ex) {
  26.             System.out.println("fout bij lookup van initialcontext");
  27.         }
  28.  
  29.     }
  30.     public String saveAfspraak(AfspraakC afs)
  31.     {
  32.         //de afspraak omzetten naar de andere entiteit (Afspraak.java) in plaats van (AfpraakC.java)
  33.         Afspraak input = new Afspraak();
  34.         input.setPatientvoornaam(afs.getVoornaam());
  35.         input.setPatientnaam(afs.getVoornaam());
  36.         String beginuur = afs.getBeginuur() + "." + afs.getBeginminuten();
  37.         double bu = Double.parseDouble(beginuur);
  38.         input.setBeginuur(bu);
  39.         String einduur = afs.getEinduur() + "." + afs.getEindminuten();
  40.         double eu = Double.parseDouble(einduur);
  41.         input.setEinduur(eu);
  42.         input.setOmschrijving(afs.getOmschrijving());
  43.         input.setBevestigd(false);
  44.         input.setCommentaar("");
  45.         input.setEmail(afs.getEmail());
  46.         input.setTelnr(afs.getTel());
  47.        
  48.         return "ok";
  49.     }
  50.     public List<AfspraakC> getAfsprakenByDag(Date dag)
  51.     {
  52.         //arraylist van AfspraakC klassen
  53.         List<AfspraakC> outputLijst = new ArrayList<AfspraakC>();
  54.        
  55.         //dag attributen opsplitsen
  56.         int dg = dag.getDate();
  57.         int mnd = dag.getMonth() + 1;
  58.         int jaar = dag.getYear() + 1900;
  59.         String DatumOmMeeTeGevenAanDb = zetDatumNaarString(dg, mnd, jaar);
  60.        
  61.         //de dag ophalen uit de database adhv..
  62.         Dag opgehaaldeDag = afmgr.getDagByDatum(DatumOmMeeTeGevenAanDb);
  63.        
  64.         //de afspraken uit de dag ophalen
  65.         ArrayList<Afspraak> opgehaaldeAfsprakenUitDag = opgehaaldeDag.getAfspraken();
  66.         if(opgehaaldeAfsprakenUitDag !=null)
  67.         {
  68.             //alle afspraken omzetten
  69.             for(Afspraak x : opgehaaldeAfsprakenUitDag)
  70.             //<editor-fold defaultstate="collapsed" desc="comment">
  71.             {
  72.                 //we hebben aenkel de beginuren en de einduren nodig omdat de de al geplande
  73.                 //afspraken toch niet gaan tonen. We hebben deze nodig om te bepalen welke uren
  74.                 //er nog beschikbaar zijn voor dag x zodat we de lege blokken kunnen bepalen
  75.                 AfspraakC y = new AfspraakC();
  76.                 y.setVoornaam("");
  77.                 y.setAchternaam("");
  78.                 y.setOmschrijving("");
  79.  
  80.                 //beginuur vna double omzetten naar int
  81.                 y.setBeginuur((int)x.getBeginuur());
  82.  
  83.                 //beginminuten bepalen van de afsrpaak
  84.                 String beginminuten = Double.toString(x.getBeginuur());
  85.                 String[] listjen = beginminuten.split("\\.");
  86.                 beginminuten = listjen [1];
  87.                 y.setBeginminuten(Integer.parseInt(beginminuten));
  88.  
  89.                 //dag instellen
  90.                 y.setDag(0);
  91.                 //toevoegen aan de lijst om uit te voeren
  92.                 outputLijst.add(y);
  93.                
  94.  
  95.             }//forlus
  96.             //</editor-fold>
  97.             List<AfspraakC> uitvoerlijstvrijeuren = getLegeUren(opgehaaldeAfsprakenUitDag);
  98.         }
  99.         //
  100.         return outputLijst;
  101.     }
  102.     private String zetDatumNaarString(int dag, int maand, int jaar)
  103.     {
  104.         String uitvoer = "";
  105.         uitvoer = Integer.toString(dag) + " ";
  106.        
  107.         switch(maand)
  108.         {
  109.             case 1: uitvoer = uitvoer + "Januari";
  110.                     break;
  111.             case 2: uitvoer = uitvoer + "Februari";
  112.                     break;
  113.             case 3: uitvoer = uitvoer + "Maart";
  114.                     break;
  115.             case 4: uitvoer = uitvoer + "April";
  116.                     break;
  117.             case 5: uitvoer = uitvoer + "Mei";
  118.                     break;
  119.             case 6: uitvoer = uitvoer + "Juni";
  120.                     break;
  121.             case 7: uitvoer = uitvoer + "Juli";
  122.                     break;
  123.             case 8: uitvoer = uitvoer + "Augustus";
  124.                     break;
  125.             case 9: uitvoer = uitvoer + "September";
  126.                     break;
  127.             case 10: uitvoer = uitvoer + "Oktober";
  128.                     break;
  129.             case 11: uitvoer = uitvoer + "November";
  130.                     break;
  131.             case 12: uitvoer = uitvoer + "December";
  132.                     break;
  133.         }
  134.         uitvoer = uitvoer + " " + jaar;
  135.         return uitvoer;
  136.     }
  137.     private List<AfspraakC> getLegeUren(List<Afspraak> inputlijst)
  138.     {
  139.         List<AfspraakC> legeUren = new ArrayList<AfspraakC>();
  140.        
  141.         ArrayList<Double> vrijeuren = new ArrayList<Double>();
  142.         //<editor-fold defaultstate="collapsed" desc="comment">
  143.         vrijeuren.add(8.0);
  144.         vrijeuren.add(8.3);
  145.         vrijeuren.add(9.0);
  146.         vrijeuren.add(9.3);
  147.         vrijeuren.add(10.0);
  148.         vrijeuren.add(10.3);
  149.         vrijeuren.add(11.0);
  150.         vrijeuren.add(11.3);
  151.         vrijeuren.add(12.0);
  152.         vrijeuren.add(12.3);
  153.         vrijeuren.add(13.0);
  154.         vrijeuren.add(13.3);
  155.         vrijeuren.add(14.0);
  156.         vrijeuren.add(14.3);
  157.         vrijeuren.add(15.0);
  158.         vrijeuren.add(15.3);
  159.         vrijeuren.add(16.0);
  160.         vrijeuren.add(16.3);
  161.         vrijeuren.add(17.0);
  162.         vrijeuren.add(17.3);
  163.         vrijeuren.add(18.0);
  164.         vrijeuren.add(18.3);
  165.         vrijeuren.add(19.0);
  166.         //</editor-fold>
  167.        
  168.         for(Afspraak x : inputlijst)
  169.         {
  170.             if(vrijeuren.contains(x.getBeginuur()))
  171.             {
  172.                 vrijeuren.remove(x.getBeginuur());
  173.             }
  174.         }
  175.         //elk bezet begintijdstip verwijderen uit de lijst
  176.         for(Double y : vrijeuren)
  177.         {
  178.             String beginuur = Double.toString(y);
  179.             String[] urenenminuten = beginuur.split("\\.");
  180.             AfspraakC temp = new AfspraakC("", "", "", Integer.parseInt(urenenminuten[0]),Integer.parseInt(urenenminuten[1]),0,0, 0,0,0);
  181.             legeUren.add(temp);
  182.         }
  183.         return legeUren;
  184.     }
  185.     private AfspraakC[] leegSchema(){
  186.         AfspraakC a = new AfspraakC("", "","", 8,  0,   8,30,   8, 0, 112);
  187.         AfspraakC b = new AfspraakC("", "","", 8,  30,  9, 0,   8, 0, 112);
  188.         AfspraakC c = new AfspraakC("", "","", 9,  0,   9,30,   8, 0, 112);
  189.         AfspraakC d = new AfspraakC("", "","", 9,  30,  10, 0,  8, 0, 112);
  190.         AfspraakC e = new AfspraakC("", "","", 10, 0,   10,30,  8, 0, 112);
  191.         AfspraakC f = new AfspraakC("", "","", 10, 30,  11, 0,  8, 0, 112);
  192.         AfspraakC h = new AfspraakC("", "","", 11, 0,   11,30,  8, 0, 112);
  193.         AfspraakC i = new AfspraakC("", "","", 11, 30,  12, 0,  8, 0, 112);
  194.         AfspraakC j = new AfspraakC("", "","", 12, 0,   12,30,  8, 0, 112);
  195.         AfspraakC k = new AfspraakC("", "","", 12, 30,  13, 0,  8, 0, 112);
  196.         AfspraakC l = new AfspraakC("", "","", 13, 0,   13, 30, 8, 0, 112);
  197.         AfspraakC m = new AfspraakC("", "","", 13, 30,  14, 0,  8, 0, 112);
  198.         AfspraakC n = new AfspraakC("", "","", 14, 0,   14, 30,  8, 0, 112);
  199.         AfspraakC o = new AfspraakC("", "","", 14, 30,  15, 0,  8, 0, 112);
  200.         AfspraakC p = new AfspraakC("", "","", 15, 0,   15, 30,  8, 0, 112);
  201.         AfspraakC q = new AfspraakC("", "","", 15, 30,  16, 0,  8, 0, 112);
  202.         AfspraakC r = new AfspraakC("", "","", 16, 0,   16, 30,  8, 0, 112);
  203.         AfspraakC s = new AfspraakC("", "","", 16, 30,  17, 0,  8, 0, 112);
  204.         AfspraakC t = new AfspraakC("", "","", 17, 0,   17, 30,  8, 0, 112);
  205.         AfspraakC u = new AfspraakC("", "","", 17, 30,  18, 0,  8, 0, 112);
  206.         AfspraakC v = new AfspraakC("", "","", 18, 0,   18, 30,  8, 0, 112);
  207.         AfspraakC w = new AfspraakC("", "","", 18, 30,  19, 0,  8, 0, 112);
  208.        
  209.         List<AfspraakC> leegschema = new ArrayList<AfspraakC>();
  210.        
  211.         leegschema.add(a);
  212.         leegschema.add(b);
  213.         leegschema.add(c);
  214.         leegschema.add(d);
  215.         leegschema.add(e);
  216.         leegschema.add(f);
  217.         leegschema.add(h);
  218.         leegschema.add(i);
  219.         leegschema.add(j);
  220.         leegschema.add(k);
  221.         leegschema.add(l);
  222.         leegschema.add(m);
  223.         leegschema.add(n);
  224.         leegschema.add(o);
  225.         leegschema.add(p);
  226.         leegschema.add(q);
  227.         leegschema.add(r);
  228.         leegschema.add(s);
  229.         leegschema.add(t);
  230.         leegschema.add(u);
  231.         leegschema.add(v);
  232.         leegschema.add(w);
  233.        
  234.         return leegschema.toArray(new AfspraakC[0]);
  235.     }
  236. }
Advertisement
Add Comment
Please, Sign In to add comment