X-Git-Url: https://harishankar.org/repos/?p=habeas.git;a=blobdiff_plain;f=src%2Fhabeas%2FUtility.java;h=192b113d90059aa6fe51366adc55a14c1704cf18;hp=8602583be2c111cf3a72cb3b5406c62782929847;hb=HEAD;hpb=703ad2090595c7cf19f92a58b95ce197c60bf5ea diff --git a/src/habeas/Utility.java b/src/habeas/Utility.java index 8602583..14edb1f 100644 --- a/src/habeas/Utility.java +++ b/src/habeas/Utility.java @@ -17,6 +17,7 @@ import java.text.MessageFormat; import java.text.SimpleDateFormat; import java.util.logging.Level; import java.util.logging.Logger; +import org.sqlite.util.StringUtils; /** * @@ -354,14 +355,14 @@ public class Utility { } static boolean updateNoticeBillDetails(int selid, String bill_status, - java.util.Date bill_date, int bill_amount) { + java.util.Date bill_date, long bill_amount) { try { Connection conn = DriverManager.getConnection(JDBC + connectionURL); PreparedStatement st = conn.prepareStatement("UPDATE legalnotices" + " SET BillStatus=?,BillDate=?,BillAmount=? WHERE id=?;"); st.setString (1, bill_status); st.setDate(2, toSqlDate(bill_date)); - st.setInt(3, bill_amount); + st.setLong(3, bill_amount); st.setInt(4, selid); st.execute(); conn.close(); @@ -592,13 +593,13 @@ public class Utility { try { FileWriter f = new FileWriter (filePath); for (int i = 0; i < reportCols.length; i ++) { - f.append (escapeQuote(reportCols[i])); + f.append (escapeQuoteCSV(reportCols[i])); f.append (","); } f.append("\n"); for (int i = 0; i < reportData.size(); i += reportCols.length) { for (int j = 0; j < reportCols.length; j ++) { - f.append (escapeQuote(reportData.get(i+j))); + f.append (escapeQuoteCSV(reportData.get(i+j))); f.append (","); } f.append ("\n"); @@ -613,8 +614,10 @@ public class Utility { } - private static String escapeQuote(Object bareStr) { - if (bareStr.getClass() == String.class) { + private static String escapeQuoteCSV(Object bareStr) { + if (bareStr == null) + return ""; + else if (bareStr.getClass() == String.class) { String str = (String)bareStr; String escapedStr = str.replace ("\"", "\"\""); System.out.println(escapedStr); @@ -625,6 +628,60 @@ public class Utility { return String.format("\"%s\"", bareStr.toString()); } + static boolean saveReportHTML(String filepath, String report_title, + String[] report_cols, ArrayList report_data) { + FileWriter htmlFile; + try { + htmlFile = new FileWriter(filepath); + htmlFile.append("\n\n\n"); + htmlFile.append(htmlEscape(report_title)); + htmlFile.append("\n\n"); + htmlFile.append ("\n"); + htmlFile.append("

"); + htmlFile.append(htmlEscape(report_title)); + htmlFile.append("

\n"); + htmlFile.append ("\n"); + htmlFile.append ("\t\n"); + for (int i = 0; i < report_cols.length; i ++) { + htmlFile.append ("\t\t\n"); + } + htmlFile.append ("\t\n"); + for (int r = 0; r < report_data.size(); r += report_cols.length) { + htmlFile.append("\t\n"); + for (int c = 0; c < report_cols.length; c ++) { + htmlFile.append("\t\t\n"); + } + htmlFile.append ("\t\n"); + } + htmlFile.append("
"); + htmlFile.append (htmlEscape(report_cols[i])); + htmlFile.append("
"); + htmlFile.append(htmlEscape(report_data.get(r+c))); + htmlFile.append("
\n"); + htmlFile.append("\n"); + htmlFile.append(""); + htmlFile.flush(); + htmlFile.close(); + return true; + } catch (IOException ex) { + Logger.getLogger(Utility.class.getName()).log(Level.SEVERE, null, ex); + return false; + } + } + + private static String htmlEscape(Object barestr) { + if (barestr == null) + return ""; + else if (barestr.getClass() == String.class) { + String barestrs = (String)barestr; + String str = barestrs.replace("&", "&").replace("<", "<"). + replace(">", ">").replace("\"", """).replace("\n", "
"); + return str; + } + else + return barestr.toString(); + } + public Utility () {