Reporting Functionality - resizing columns to content width
[habeas.git] / src / habeas / MainFrame.java
index 4c7d97b..070a7f7 100644 (file)
@@ -6,10 +6,7 @@
 package habeas;
 
 import java.util.ArrayList;
-import javax.swing.JFileChooser;
 import javax.swing.JOptionPane;
-import javax.swing.filechooser.FileFilter;
-import javax.swing.filechooser.FileNameExtensionFilter;
 
 /**
  *
@@ -42,6 +39,10 @@ public class MainFrame extends javax.swing.JFrame {
         jSeparator1 = new javax.swing.JPopupMenu.Separator();
         menuGenerateRaisedBills = new javax.swing.JMenuItem();
         menuNoticesReports = new javax.swing.JMenu();
+        menuNoticesToBeDrafted = new javax.swing.JMenuItem();
+        menuNoticesClarificationPending = new javax.swing.JMenuItem();
+        menuNoticeDraftAwaitingApproval = new javax.swing.JMenuItem();
+        menuNoticesSentNotYetDelivered = new javax.swing.JMenuItem();
         menuAwaitingPayment = new javax.swing.JMenuItem();
         menuSettings = new javax.swing.JMenu();
         menuDatabaseSettings = new javax.swing.JMenuItem();
@@ -99,6 +100,41 @@ public class MainFrame extends javax.swing.JFrame {
         menuNoticesReports.setMnemonic('r');
         menuNoticesReports.setText("Reports");
 
+        menuNoticesToBeDrafted.setText("To Be Drafted...");
+        menuNoticesToBeDrafted.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                menuNoticesToBeDraftedActionPerformed(evt);
+            }
+        });
+        menuNoticesReports.add(menuNoticesToBeDrafted);
+
+        menuNoticesClarificationPending.setMnemonic('c');
+        menuNoticesClarificationPending.setText("Clarifications pending...");
+        menuNoticesClarificationPending.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                menuNoticesClarificationPendingActionPerformed(evt);
+            }
+        });
+        menuNoticesReports.add(menuNoticesClarificationPending);
+
+        menuNoticeDraftAwaitingApproval.setMnemonic('d');
+        menuNoticeDraftAwaitingApproval.setText("Drafts to be approved...");
+        menuNoticeDraftAwaitingApproval.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                menuNoticeDraftAwaitingApprovalActionPerformed(evt);
+            }
+        });
+        menuNoticesReports.add(menuNoticeDraftAwaitingApproval);
+
+        menuNoticesSentNotYetDelivered.setMnemonic('s');
+        menuNoticesSentNotYetDelivered.setText("Notices sent not yet delivered...");
+        menuNoticesSentNotYetDelivered.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                menuNoticesSentNotYetDeliveredActionPerformed(evt);
+            }
+        });
+        menuNoticesReports.add(menuNoticesSentNotYetDelivered);
+
         menuAwaitingPayment.setMnemonic('a');
         menuAwaitingPayment.setText("Bills awaiting payment...");
         menuAwaitingPayment.addActionListener(new java.awt.event.ActionListener() {
@@ -192,16 +228,80 @@ public class MainFrame extends javax.swing.JFrame {
         // TODO add your handling code here:
         NoticesReportViewDialog frm = new NoticesReportViewDialog(this, false);
         String [] cols = {"Reference Number", "Description", "Bill Date", "Bill Amount", "Client"};
-        ArrayList<Object> data = Utility.getPendingPaymentBills ();
+        int rep = 0;
+        ArrayList<Object> data = Utility.getReportData(rep, -1);
         if (data == null) {
             JOptionPane.showMessageDialog(this, ERROR_DISPLAYING_REPORT);
             return;
         }
-        frm.setupReportTable(REPORT_TITLE_BILLS_AWAITING_PAYMENT, cols, data);
+        frm.setupReportTable(rep, REPORT_TITLE_BILLS_AWAITING_PAYMENT, cols, data);
         frm.setVisible(true);
     }//GEN-LAST:event_menuAwaitingPaymentActionPerformed
-    private static final String ERROR_DISPLAYING_REPORT = "Error displaying report";
-    private static final String REPORT_TITLE_BILLS_AWAITING_PAYMENT = "Bills Awaiting Payment";
+
+    private void menuNoticesSentNotYetDeliveredActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_menuNoticesSentNotYetDeliveredActionPerformed
+        // TODO add your handling code here:
+        NoticesReportViewDialog frm = new NoticesReportViewDialog(this, false);
+        String[] cols = {"Reference Number", "Description", "Sent Date", "RPAD Reference", "Client"};
+        int rep = 1;
+        ArrayList<Object> data = Utility.getReportData (rep, -1);
+        if (data == null) {
+            JOptionPane.showMessageDialog(this, ERROR_DISPLAYING_REPORT);
+            return;
+        }
+        frm.setupReportTable(rep, REPORT_TITLE_NOTICES_SENT_NOT_DELIVERED, cols, data);
+        frm.setVisible (true);
+    }//GEN-LAST:event_menuNoticesSentNotYetDeliveredActionPerformed
+
+    private void menuNoticeDraftAwaitingApprovalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_menuNoticeDraftAwaitingApprovalActionPerformed
+        // TODO add your handling code here:
+       NoticesReportViewDialog frm = new NoticesReportViewDialog(this, false);
+       String cols[] = {"Reference Number", "Description", "Entrustment Date", "Client"};
+       int rep = 2;
+       ArrayList<Object> data = Utility.getReportData(rep, -1);
+       if (data == null) {
+           JOptionPane.showMessageDialog(this, ERROR_DISPLAYING_REPORT);
+           return;
+       }
+       frm.setupReportTable(rep, REPORT_TITLE_DRAFTS_AWAITING_APPROVAL, cols, data);
+       frm.setVisible(true);
+    }//GEN-LAST:event_menuNoticeDraftAwaitingApprovalActionPerformed
+
+    private void menuNoticesClarificationPendingActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_menuNoticesClarificationPendingActionPerformed
+        // TODO add your handling code here:
+        NoticesReportViewDialog frm = new NoticesReportViewDialog(this, false);
+        String cols[] = {"Reference Number", "Description", "Entrustment Date",
+            "Clarification Remarks", "Client" };
+        int rep = 3;
+        ArrayList<Object> data = Utility.getReportData(rep, -1);
+        if (data == null) {
+            JOptionPane.showMessageDialog(this, ERROR_DISPLAYING_REPORT);
+            return;
+        }
+        frm.setupReportTable(rep, REPORT_TITLE_CLARIFICATIONS_PENDING, cols, data);
+        frm.setVisible(true);
+    }//GEN-LAST:event_menuNoticesClarificationPendingActionPerformed
+
+    private void menuNoticesToBeDraftedActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_menuNoticesToBeDraftedActionPerformed
+        // TODO add your handling code here:
+        NoticesReportViewDialog frm = new NoticesReportViewDialog(this, false);
+        String cols[] = {"Reference Number", "Description", "Entrustment Date",
+            "Clarification Remarks", "Client" };
+        int rep = 4;
+        ArrayList<Object> data = Utility.getReportData(rep, -1);
+        if (data == null) {
+            JOptionPane.showMessageDialog(this , ERROR_DISPLAYING_REPORT);
+            return;
+        }
+        frm.setupReportTable(rep, REPORT_TITLE_TO_BE_DRAFTED, cols, data);
+        frm.setVisible(true);
+                
+    }//GEN-LAST:event_menuNoticesToBeDraftedActionPerformed
+    private static final String REPORT_TITLE_TO_BE_DRAFTED = "To Be Drafted";
+    private static final String REPORT_TITLE_CLARIFICATIONS_PENDING = "Clarifications Pending";
+    private static final String REPORT_TITLE_DRAFTS_AWAITING_APPROVAL = "Drafts To Be Approved";
+    public static final String REPORT_TITLE_NOTICES_SENT_NOT_DELIVERED = "Notices Sent Not Yet Delivered";
+    public static final String ERROR_DISPLAYING_REPORT = "Error displaying report";
+    public static final String REPORT_TITLE_BILLS_AWAITING_PAYMENT = "Bills Awaiting Payment";
 
     /**
      * @param args the command line arguments
@@ -249,7 +349,11 @@ public class MainFrame extends javax.swing.JFrame {
     private javax.swing.JMenu menuLawyerNotices;
     private javax.swing.JMenuItem menuManageNotices;
     private javax.swing.JMenu menuMaster;
+    private javax.swing.JMenuItem menuNoticeDraftAwaitingApproval;
+    private javax.swing.JMenuItem menuNoticesClarificationPending;
     private javax.swing.JMenu menuNoticesReports;
+    private javax.swing.JMenuItem menuNoticesSentNotYetDelivered;
+    private javax.swing.JMenuItem menuNoticesToBeDrafted;
     private javax.swing.JMenu menuSettings;
     private javax.swing.JMenuItem menuStationery;
     // End of variables declaration//GEN-END:variables