/[projects]/dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/AddressReport.java
ViewVC logotype

Diff of /dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/AddressReport.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2839 by torben, Mon Jan 25 06:18:21 2016 UTC revision 2873 by torben, Thu Jan 28 17:04:34 2016 UTC
# Line 2  package dk.daoas.adressevedligehold; Line 2  package dk.daoas.adressevedligehold;
2    
3  import java.util.HashMap;  import java.util.HashMap;
4  import java.util.List;  import java.util.List;
5    import java.util.Map.Entry;
6  import java.util.Properties;  import java.util.Properties;
7    
8  import javax.mail.Message;  import javax.mail.Message;
# Line 15  import dk.daoas.adressevedligehold.beans Line 16  import dk.daoas.adressevedligehold.beans
16  import dk.daoas.adressevedligehold.beans.Address.AddressState;  import dk.daoas.adressevedligehold.beans.Address.AddressState;
17  import dk.daoas.adressevedligehold.util.TimingHelper;  import dk.daoas.adressevedligehold.util.TimingHelper;
18    
19    /*
20     * TODO: detail rapport pr postnr
21     * TODO: ved mangel oversigten - skeln mellem om det er nye/CREATED eller om det er gamle kendte adresser
22     */
23    
24  public class AddressReport {  public class AddressReport {
25                    
26          class NumEntry {          static class NumEntry {
27                  int open = 0;                  int open = 0;
28                  int closed = 0;                  int closed = 0;
29                  int modified = 0;                  int modified = 0;
# Line 38  public class AddressReport { Line 44  public class AddressReport {
44                          this.created += other.created;                          this.created += other.created;
45                  }                  }
46          }          }
47          class WeekEntry {          static class WeekEntry {
48                  NumEntry man = new NumEntry();                  NumEntry man = new NumEntry();
49                  NumEntry tir = new NumEntry();                  NumEntry tir = new NumEntry();
50                  NumEntry ons = new NumEntry();                  NumEntry ons = new NumEntry();
# Line 94  public class AddressReport { Line 100  public class AddressReport {
100                  String reportData = getReportData();                  String reportData = getReportData();
101                  String subject = "Indlæsnings rapport for " + source.getDistributor();                  String subject = "Indlæsnings rapport for " + source.getDistributor();
102                                    
103                                    AddressReport.sendMail(subject, reportData);
         Properties props = new Properties();  
         props.put("mail.smtp.host", "10.30.1.28");  
         //props.put("mail.smtp.host", "192.168.12.10");  
           
         try {  
                 // create some properties and get the default Session  
                 Session session = Session.getDefaultInstance(props, null);  
                 session.setDebug(false);  
                   
                 MimeMessage msg = new MimeMessage(session);  
                         msg.setFrom( new InternetAddress("no-reply@daoas.dk") );  
                           
                           
                         msg.setRecipient(Message.RecipientType.TO, new InternetAddress("thn@daoas.dk") );//TODO: mulighed for at ændre modtager mail  
                         msg.setSubject( subject );                        
                         msg.setContent(reportData, "text/html; charset=utf-8");  
                           
                         Transport.send(msg);  
                           
                   
         } catch (MessagingException e) {  
                         System.out.println("Unable to send report mail " + e.getMessage() );  
                 }  
                   
104                                    
105          }          }
106                    
107            public static void sendMail(String subject, String htmlBody) {
108                   Properties props = new Properties();
109                    props.put("mail.smtp.host", "10.30.1.28");
110                    //props.put("mail.smtp.host", "192.168.12.10");
111                    
112                    try {
113                            // create some properties and get the default Session
114                            Session session = Session.getDefaultInstance(props, null);
115                            session.setDebug(false);
116                            
117                            MimeMessage msg = new MimeMessage(session);
118                                    msg.setFrom( new InternetAddress("no-reply@daoas.dk") );
119                                    
120                                    
121                                    msg.setRecipient(Message.RecipientType.TO, new InternetAddress("thn@daoas.dk") );//TODO: mulighed for at ændre modtager mail
122                                    msg.setSubject( subject );                      
123                                    msg.setContent(htmlBody, "text/html; charset=utf-8");
124                                    
125                                    Transport.send(msg);
126                                    
127                            
128                    } catch (MessagingException e) {
129                                    System.out.println("Unable to send report mail " + e.getMessage() );
130                            }              
131            }
132            
133            
134          public String getReportData() {          public String getReportData() {
135                    
136                  WeekEntry total = new WeekEntry();                  WeekEntry total = new WeekEntry();
# Line 135  public class AddressReport { Line 144  public class AddressReport {
144                  // first gather the intel                  // first gather the intel
145                  for (Address a : addressList) {                  for (Address a : addressList) {
146                          if (a.kommunekode == 0 || a.vejkode == 0) {                          if (a.kommunekode == 0 || a.vejkode == 0) {
147                                    
148                                  antalUdenKommunekode++;                                  antalUdenKommunekode++;
149                          }                          }
150                                                    
# Line 180  public class AddressReport { Line 190  public class AddressReport {
190                  sb.append("Tidsforbrug: ").append( timer.getElapsed() ).append("ms. <br>");                  sb.append("Tidsforbrug: ").append( timer.getElapsed() ).append("ms. <br>");
191                  sb.append("Skriv til DB: ").append( writeBack ).append("<br>");                  sb.append("Skriv til DB: ").append( writeBack ).append("<br>");
192                  sb.append("Antal entries: " ).append( entryCount ).append("<br>");                  sb.append("Antal entries: " ).append( entryCount ).append("<br>");
193                  sb.append("Antal afviste: " ).append( addrManager.getAfvistAntal() ).append("<br>");                  sb.append("Antal afviste: " ).append( addrManager.getRejectedCount() ).append("<br>");
194                    sb.append("Filen indeholder data til: ");
195                    if (ugedage.mandag) sb.append("Mandag, ");
196                    if (ugedage.tirsdag) sb.append("Tirsdag, ");
197                    if (ugedage.onsdag) sb.append("Onsdag, ");
198                    if (ugedage.torsdag) sb.append("Torsdag, ");
199                    if (ugedage.fredag) sb.append("Fredag, ");
200                    if (ugedage.lordag) sb.append("Lørdag, ");
201                    if (ugedage.sondag) sb.append("Søndag, ");
202                    sb.append("<br>");
203                                    
204                  sb.append("<h2>Data Mangler</h2>\n");                  sb.append("<h2>Data Mangler</h2>\n");
205                  sb.append("<pre>");                  sb.append("<pre>");
# Line 199  public class AddressReport { Line 218  public class AddressReport {
218                  sb.append("<tr><td>Åbnet:</td><td>").append(total.man.open).append("</td><td>").append(total.tir.open).append("</td><td>").append(total.ons.open).append("</td><td>").append(total.tor.open).append("</td><td>").append(total.fre.open).append("</td><td>").append(total.lor.open).append("</td><td>").append(total.son.open).append("</td></tr>");                  sb.append("<tr><td>Åbnet:</td><td>").append(total.man.open).append("</td><td>").append(total.tir.open).append("</td><td>").append(total.ons.open).append("</td><td>").append(total.tor.open).append("</td><td>").append(total.fre.open).append("</td><td>").append(total.lor.open).append("</td><td>").append(total.son.open).append("</td></tr>");
219                  sb.append("<tr><td>Ændret:</td><td>").append(total.man.modified).append("</td><td>").append(total.tir.modified).append("</td><td>").append(total.ons.modified).append("</td><td>").append(total.tor.modified).append("</td><td>").append(total.fre.modified).append("</td><td>").append(total.lor.modified).append("</td><td>").append(total.son.modified).append("</td></tr>");                  sb.append("<tr><td>Ændret:</td><td>").append(total.man.modified).append("</td><td>").append(total.tir.modified).append("</td><td>").append(total.ons.modified).append("</td><td>").append(total.tor.modified).append("</td><td>").append(total.fre.modified).append("</td><td>").append(total.lor.modified).append("</td><td>").append(total.son.modified).append("</td></tr>");
220                  sb.append("<tr><td>Lukket:</td><td>").append(total.man.closed).append("</td><td>").append(total.tir.closed).append("</td><td>").append(total.ons.closed).append("</td><td>").append(total.tor.closed).append("</td><td>").append(total.fre.closed).append("</td><td>").append(total.lor.closed).append("</td><td>").append(total.son.closed).append("</td></tr>");                  sb.append("<tr><td>Lukket:</td><td>").append(total.man.closed).append("</td><td>").append(total.tir.closed).append("</td><td>").append(total.ons.closed).append("</td><td>").append(total.tor.closed).append("</td><td>").append(total.fre.closed).append("</td><td>").append(total.lor.closed).append("</td><td>").append(total.son.closed).append("</td></tr>");
221                    sb.append("</table>");
222                    
223                    sb.append("<br>");
224                    sb.append("<h2>Nye/Ukendte gader</h2>");
225                    sb.append("<table>");
226                    sb.append("<tr><th>Gadeid</th><th>Vejnavn</th></tr>");
227                    for( Entry<Integer,String> unknownStreet : addrManager.getUnknownStreets().entrySet() ) {
228                            sb.append("<tr><td>").append(unknownStreet.getKey()).append("</td><td>").append(unknownStreet.getValue()).append("</td></tr>");
229                    }
230                    sb.append("</table>");
231                                    
232                                    
233                  sb.append("</table><br>\n");                  sb.append("</table><br>\n");

Legend:
Removed from v.2839  
changed lines
  Added in v.2873

  ViewVC Help
Powered by ViewVC 1.1.20