Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package userinterface.HospitalAdminRole; import business.EcoSystem; import business.Enterprise.Enterprise; import business.Enterprise.HospitalEnterprise; import business.Network.Network; import business.Organization.Organization; import business.WorkQueue.WorkRequest; import java.awt.CardLayout; import java.awt.Color; import javax.swing.JPanel; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartFrame; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.CategoryPlot; import org.jfree.chart.plot.PlotOrientation; import org.jfree.data.category.DefaultCategoryDataset; /** * * @author Kaustubh Chaudhari */ public class DataAnalysisHospitalJPanel extends javax.swing.JPanel { /** * Creates new form DataAnalysisHospitalJPanel */ JPanel userProcessContainer; Enterprise enterprise; EcoSystem business; DataAnalysisHospitalJPanel(JPanel userProcessContainer, Enterprise enterprise, EcoSystem business) { initComponents(); this.userProcessContainer = userProcessContainer; this.enterprise = enterprise; this.business = business; } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { seeChartBtn = new javax.swing.JButton(); jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jButton1 = new javax.swing.JButton(); setBackground(new java.awt.Color(255, 255, 255)); setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); seeChartBtn.setFont(new java.awt.Font("Calibri", 1, 18)); // NOI18N seeChartBtn.setText("See Chart"); seeChartBtn.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { seeChartBtnActionPerformed(evt); } }); add(seeChartBtn, new org.netbeans.lib.awtextra.AbsoluteConstraints(360, 180, -1, -1)); jLabel1.setFont(new java.awt.Font("Calibri", 1, 36)); // NOI18N jLabel1.setText("Data analysis for Hospitals "); add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(28, 16, 440, 77)); jLabel2.setFont(new java.awt.Font("Calibri", 1, 24)); // NOI18N jLabel2.setText("Blood group demand"); add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 180, 230, -1)); jButton1.setFont(new java.awt.Font("Calibri", 1, 18)); // NOI18N jButton1.setText("<<BACK"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 410, -1, -1)); }// </editor-fold>//GEN-END:initComponents private void seeChartBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_seeChartBtnActionPerformed // TODO add your handling code here: int a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0; for (Network network : business.getNetworkList()) { for (Enterprise enterprise : network.getEnterpriseDirectory().getEnterpriseList()) { if (enterprise instanceof HospitalEnterprise) { for (Organization org : enterprise.getOrganizationDirectory().getOrganizationList()) { for (WorkRequest request : org.getWorkQueue().getWorkRequestList()) { String bg = request.getBloodGroup(); if (bg.equalsIgnoreCase("a+")) { a++; } if (bg.equalsIgnoreCase("a-")) { b++; } if (bg.equalsIgnoreCase("b+")) { c++; } if (bg.equalsIgnoreCase("b-")) { d++; } if (bg.equalsIgnoreCase("ab+")) { e++; } if (bg.equalsIgnoreCase("ab-")) { f++; } if (bg.equalsIgnoreCase("o+")) { g++; } if (bg.equalsIgnoreCase("o-")) { h++; } } } } } DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.setValue(a, "Number", "A+"); dataset.setValue(b, "Number", "A-"); dataset.setValue(c, "Number", "B+"); dataset.setValue(d, "Number", "B-"); dataset.setValue(e, "Number", "AB+"); dataset.setValue(f, "Number", "AB-"); dataset.setValue(g, "Number", "O+"); dataset.setValue(h, "Number", "O-"); JFreeChart chart = ChartFactory.createBarChart("Hospital Demands", "Blood Types", "Number", dataset, PlotOrientation.VERTICAL, false, true, false); CategoryPlot p = chart.getCategoryPlot(); p.setRangeGridlinePaint(Color.black); ChartFrame frame = new ChartFrame("Hospital Demands", chart); frame.setVisible(true); frame.setSize(450, 500); } }//GEN-LAST:event_seeChartBtnActionPerformed private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed // TODO add your handling code here: userProcessContainer.remove(this); CardLayout layout = (CardLayout) userProcessContainer.getLayout(); layout.previous(userProcessContainer); }//GEN-LAST:event_jButton1ActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButton1; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JButton seeChartBtn; // End of variables declaration//GEN-END:variables }