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