rendered paste bodypackage edu.iup.cosc310.sales;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class SalesReport { private Salesperson[] salespersons; private int numSalespersons; private static SimpleDateFormat sdf = new SimpleDateFormat(); public SalesReport() { salespersons = new Salesperson[50]; } public void addSalesperson(Salesperson salesperson) { salespersons[numSalespersons++] = salesperson; } public void loadFromFile(String fileName) { try { BufferedReader in = new BufferedReader(new FileReader(fileName)); String line; while ((line = in.readLine()) != null) { String parts[] = line.split(","); String name = parts[0]; String acctNum = parts[1]; String poNum = parts[2]; double amount = Double.parseDouble(parts[3]); Date date = sdf.parse(parts[4]); Salesperson salesperson = null; for (int i = 0; i < numSalespersons; i++) { if (salespersons[i].getName().equals(name)) { salesperson = salespersons[i]; break; } } if (salesperson == null) { salesperson = new Salesperson(name); addSalesperson(salesperson); } salesperson.addSale(new Sales(name, acctNum, poNum, amount, date)); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void printReport() { System.out.println("Sales Report"); System.out.println(); for (int i = 0; i < numSalespersons; i++) { Salesperson salesperson = salespersons[i]; System.out.println(salesperson.getName()); System.out.println(); for (int j = 0; j < salesperson.getNumSales(); j++) { Sales sales = salesperson.getSales(j); System.out.println("\t" + sales.getDateBooked() + "\t" + sales.getAccountNum() + "\t" + sales.getAccountNum() + "\t" + sales.getPoNum() + "\t" + sales.getAmount()); } } } public static void main(String[] args) { SalesReport salesReport = new SalesReport(); salesReport.loadFromFile("sales.data.txt"); salesReport.printReport(); }}