1    package com.instantbank.collections.collectionsActivities.web;
2    
3    import java.io.IOException;
4    import java.io.PrintWriter;
5    import java.rmi.RemoteException;
6    import java.util.Enumeration;
7    import javax.servlet.RequestDispatcher;
8    import javax.servlet.ServletConfig;
9    import javax.servlet.ServletContext;
10   import javax.servlet.ServletException;
11   import javax.servlet.http.HttpServlet;
12   import javax.servlet.http.HttpServletRequest;
13   import javax.servlet.http.HttpServletResponse;
14   import javax.servlet.http.HttpSession;
15   import com.instantbank.collections.collectionsActivities.ejb.ActionResultServices;
16   import com.instantbank.collections.collectionsActivities.ejb.ActionResultServicesHome;
17   import com.instantbank.collections.creditInfo.ejb.AccountInfoServices;
18   import com.instantbank.collections.creditInfo.ejb.AccountInfoServicesHome;
19   import com.instantbank.collections.util.FilterChain;
20   import com.instantbank.collections.util.InstantbankException;
21   import com.instantbank.collections.util.ServiceLocator;
22   
23   public class ActionResultHistoryController extends HttpServlet {
24   
25     private AccountInfoServices accountInfoServices;
26     private AccountInfoServicesHome accountInfoServicesHome;
27     private ActionResultServices actionResultServices;
28     private ActionResultServicesHome arhome;
29     private PrintWriter out;
30     private HttpSession session;
31   
32   
33     public void init(ServletConfig config) throws ServletException {
34       super.init(config);
35       try {
36         arhome = (ActionResultServicesHome)ServiceLocator.instance().createEJB("ActionResultServicesHome", ActionResultServicesHome.class, false);
37         actionResultServices = arhome.create();
38         accountInfoServicesHome = (AccountInfoServicesHome)ServiceLocator.instance().createEJB("AccountInfoServicesHome", AccountInfoServicesHome.class, false);
39         accountInfoServices = accountInfoServicesHome.create();
40       }
41       catch(Exception e) {}
42     }
43   
44   
45     public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
46       doPost(request, response);
47     }
48   
49   
50     public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
51       String action = "";
52       com.instantbank.collections.util.FilterChain chain;
53       try {
54         action = request.getParameter("action");
55         session = request.getSession(false);
56   
57         try {
58   
59           chain = new com.instantbank.collections.util.FilterChain(true, getServletConfig().getServletContext());
60           if(chain.processFilter(request, response)) {
61             return;
62           }
63           if(action.equals("initialize")) {
64             initialize(request, response);
65           }
66           else if(action.equals("searchActionResult")) {
67             searchActionResult(request, response);
68           }
69           else {
70             throw new InstantbankException("522002", "Action " + action + " not supported");
71           }
72         }
73         catch(Exception e) {
74           throw new InstantbankException(e, "522002", "Failed to execute controller action " + action);
75         }
76       }
77       catch(InstantbankException e) {
78         session.setAttribute("Exception", e);
79         response.sendRedirect("../main_web/ControllerError.jsp?showTechnical=0");
80       }
81     }
82   
83   
84     private void initialize(HttpServletRequest request, HttpServletResponse response) throws InstantbankException, RemoteException, IOException, ServletException {
85       Long agrmId;
86       String attr;
87       Long companyId;
88       String contactYes;
89       String contactNo;
90       String data;
91       String primarySort;
92       String secondarySort;
93       Long maxRows;
94       Long rowNum;
95       Boolean isAttr = new Boolean(false);
96   
97       Enumeration AttributeNames = request.getAttributeNames();
98       while(AttributeNames.hasMoreElements()) {
99         attr = (String)AttributeNames.nextElement();
100        if(attr.equals("rowNum")) {
101          isAttr = new Boolean(true);
102        }
103      }
104  
105      if(isAttr.equals(new Boolean(false))) {
106        rowNum = new Long("1");
107      }
108      else {
109        rowNum = new Long((String)request.getAttribute("rowNum"));
110      }
111  
112      primarySort = (String)request.getAttribute("primarySort");
113      secondarySort = (String)request.getAttribute("secondarySort");
114      contactYes = (String)request.getAttribute("contactYes");
115      contactNo = (String)request.getAttribute("contactNo");
116      if(contactYes == null) {
117        contactYes = "1";
118      }
119      if(contactNo == null) {
120        contactNo = "1";
121      }
122      agrmId = new Long(request.getParameter("agrmId"));
123      companyId = (Long)session.getAttribute("companyId");
124      data = actionResultServices.getHistory(companyId, agrmId, primarySort, secondarySort, rowNum);
125      maxRows = actionResultServices.getRowsHistory(companyId, agrmId);
126  
127      request.setAttribute("data", data);
128      request.setAttribute("rowNum", rowNum);
129      request.setAttribute("maxRows", maxRows);
130      request.setAttribute("contactYes", contactYes);
131      request.setAttribute("contactNo", contactNo);
132  
133      ServletContext sctx = getServletConfig().getServletContext();
134      RequestDispatcher rd = sctx.getRequestDispatcher("/collectionsActivities_web/ActionResultHistoryView.jsp");
135      rd.forward(request, response);
136    }
137  
138  
139    private void searchActionResult(HttpServletRequest request, HttpServletResponse response) throws InstantbankException, ServletException, IOException {
140      Long agrmCode;
141      Long agrmId;
142      Long companyId;
143      Long rowNum;
144      String data;
145      String wrkiId;
146      String mainData;
147      String primarySort;
148      String secondarySort;
149      String contactYes;
150      String contactNo;
151  
152      companyId = (Long)session.getAttribute("companyId");
153      agrmCode = new Long((String)request.getParameter("agrmId"));
154      rowNum = new Long((String)request.getParameter("rowNum"));
155      primarySort = (String)request.getParameter("primarySort");
156      secondarySort = (String)request.getParameter("secondarySort");
157      wrkiId = request.getParameter("wrki_id");
158      mainData = request.getParameter("mainData");
159      contactYes = (String)request.getParameter("contactYes");
160      contactNo = (String)request.getParameter("contactNo");
161      request.setAttribute("contactYes", contactYes);
162      request.setAttribute("contactNo", contactNo);
163      response.sendRedirect("/Instantbank/collectionsActivities_web/ReviewAccountController?action=changeTab&mainData= " + mainData + "&tab=ActionResults&agrmId=" + agrmCode.toString() + "&wrki_id=" + wrkiId + "&rowNum=" + rowNum.toString() + "&primarySort=" + primarySort + "&secondarySort=" + secondarySort
164        + "&contactYes=" + contactYes + "&contactNo=" + contactNo);
165    }
166  
167  
168    public String getServletInfo() {
169      return "com.instantbank.collectionsActions.web.AccountDetailsController Information";
170    }
171  }
172  
173