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