--- dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/AddressReport.java 2016/01/24 21:48:55 2838 +++ dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/coveragefileupload/AddressReport.java 2016/06/08 15:31:27 3044 @@ -1,28 +1,27 @@ -package dk.daoas.adressevedligehold; +package dk.daoas.adressevedligehold.coveragefileupload; import java.util.HashMap; import java.util.List; -import java.util.Properties; - -import javax.mail.Message; -import javax.mail.MessagingException; -import javax.mail.Session; -import javax.mail.Transport; -import javax.mail.internet.InternetAddress; -import javax.mail.internet.MimeMessage; +import java.util.Map.Entry; +import dk.daoas.adressevedligehold.MailSender; import dk.daoas.adressevedligehold.beans.Address; import dk.daoas.adressevedligehold.beans.Address.AddressState; +import dk.daoas.adressevedligehold.tasks.TaskLogger; import dk.daoas.adressevedligehold.util.TimingHelper; +/* + * + */ + public class AddressReport { - - class NumEntry { + + static class NumEntry { int open = 0; int closed = 0; int modified = 0; int created = 0; - + public void updateFromState(AddressState st) { if (st == AddressState.OPENED) open++; @@ -38,7 +37,7 @@ this.created += other.created; } } - class WeekEntry { + static class WeekEntry { NumEntry man = new NumEntry(); NumEntry tir = new NumEntry(); NumEntry ons = new NumEntry(); @@ -46,7 +45,7 @@ NumEntry fre = new NumEntry(); NumEntry lor = new NumEntry(); NumEntry son = new NumEntry(); - + public void incrementFromOther(WeekEntry other) { man.updateFromOther(other.man); tir.updateFromOther(other.tir); @@ -56,7 +55,7 @@ lor.updateFromOther(other.lor); son.updateFromOther(other.son); } - + public void incrementCreated() { man.created++; tir.created++; @@ -67,94 +66,91 @@ son.created++; } } - - + + private static TaskLogger logger = TaskLogger.getInstance(); + + AddressManager addrManager; List
addressList; int entryCount; EntryUgedage ugedage; AddressSource source; TimingHelper timer; boolean writeBack; - - //TODO: Afviste adresser - public AddressReport(AddressManager addrManager, int entryCount, EntryUgedage ugedage, AddressSource source, TimingHelper timer, boolean writeBack ) { + int duplicateCount; + + + public AddressReport(AddressManager addrManager, int entryCount, EntryUgedage ugedage, AddressSource source, TimingHelper timer, boolean writeBack, int duplicateCount ) { + this.addrManager = addrManager; addressList = addrManager.getAddressList(); this.entryCount = entryCount; this.ugedage = ugedage; this.source = source; this.timer = timer; this.writeBack = writeBack; - + this.duplicateCount = duplicateCount; } - + public void sendRapport() { - System.out.println("Sending mail"); - + logger.info("Sending mail"); + String reportData = getReportData(); String subject = "Indlæsnings rapport for " + source.getDistributor(); - - 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() ); - } - - + String newOpenCloseAttachment = getAttachement(); + + MailSender.sendMailWithAttachment(subject, reportData, "Details.csv", newOpenCloseAttachment); + } - + + + public String getReportData() { - + WeekEntry total = new WeekEntry(); HashMap"); sb.append("Mangler kommune/vejkode: ").append(antalUdenKommunekode).append("\n"); + sb.append("Mangler gadeid: ").append(antalUdenGadeid).append("\n"); sb.append("Mangler DBK bane: ").append(antalUdenDBKBane).append("\n"); sb.append("Mangler latitude/longitude: ").append(antalUdenLatitude).append("\n"); sb.append(""); - - + + sb.append("
Mandag | Tirsdag | Onsdag | Torsdag | Fredag | Lørdag | Søndag | |
Oprettet: | ").append(total.man.created).append(" | ").append(total.tir.created).append(" | ").append(total.ons.created).append(" | ").append(total.tor.created).append(" | ").append(total.fre.created).append(" | ").append(total.lor.created).append(" | ").append(total.son.created).append(" |
Åbnet: | ").append(total.man.open).append(" | ").append(total.tir.open).append(" | ").append(total.ons.open).append(" | ").append(total.tor.open).append(" | ").append(total.fre.open).append(" | ").append(total.lor.open).append(" | ").append(total.son.open).append(" |
Ændret: | ").append(total.man.modified).append(" | ").append(total.tir.modified).append(" | ").append(total.ons.modified).append(" | ").append(total.tor.modified).append(" | ").append(total.fre.modified).append(" | ").append(total.lor.modified).append(" | ").append(total.son.modified).append(" |
Lukket: | ").append(total.man.closed).append(" | ").append(total.tir.closed).append(" | ").append(total.ons.closed).append(" | ").append(total.tor.closed).append(" | ").append(total.fre.closed).append(" | ").append(total.lor.closed).append(" | ").append(total.son.closed).append(" |
Gadeid | Vejnavn |
---|---|
").append(unknownStreet.getKey()).append(" | ").append(unknownStreet.getValue()).append(" |