rendered paste bodypackage com.cypress.ecn.servlet.rel;/* * $Id: RelAdminHandler.java,v 1.5 2007/02/01 10:06:51 ons Exp $ * * Copyright (c) 2006 by Cypress Semiconductor * * Description : * Handler class for the Reliability Database Admin Utility * * Revision History : * * 12/07/2006 btg Initial version * */import java.sql.Connection;import java.util.ArrayList;import java.util.Vector;import java.util.Iterator;import java.util.Date;import java.text.SimpleDateFormat;import java.sql.Timestamp;import javax.servlet.RequestDispatcher;import javax.servlet.ServletContext;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.cypress.ecn.container.rel.*;import com.cypress.ecn.servlet.ChangeManagementServlet;import com.cypress.ecn.servlet.NoticeAdminHandler;import cypress.shared.util.Logger;import cypress.shared.util.sql.SQLUtil;public class RelAdminHandler implements NoticeAdminHandler { /* Global Variables */ protected ChangeManagementServlet servlet = null; private static Logger log = new Logger(RelAdminHandler.class.getName()); /** * Set the calling servlet. * */ public void setServlet(HttpServlet servlet) { this.servlet = (ChangeManagementServlet) servlet; } /* End of setServlet */ /** * Method declaration * * * @param request * @param response * * @see */ public void handle( HttpServletRequest request, HttpServletResponse response, String schema, Connection connection) { try { if (servlet == null) { log.error(Logger.COMPONENT, "Need to setServlet() before handle ()"); return; } // only if user logged in is a Cypress Employee Boolean isRelUser = new Boolean(true); // default to true since CMS login handles this validation String doWhat = (String) request.getAttribute("doWhat"); if ( isRelUser != null && isRelUser.booleanValue()) { String userID = (String) request.getAttribute("userID"); Boolean hasRelAdminAccess = RelAdmin.isRelAdmin(connection, schema, userID); request.setAttribute("hasRelAdminAccess", hasRelAdminAccess); if(doWhat != null) { if(doWhat.equals("manageQTP")) { doManageQTP(request, response, connection, schema); } else if (doWhat.equals("backToMain")) { showPage(request, connection, schema, "admin/rel/adminUtil.jsp"); } else if(doWhat.equals("manage")) { doAdminManageRefData(request, response, connection, schema); } else if (doWhat.equals("searchQTP")) { doSearchQTP(request, response, connection, schema); } else if (doWhat.equals("customSearchQTP")) { doCustomSearchQTP(request, response, connection, schema); } else if (doWhat.equals("saveCSV")) { doSaveCSV(request, response, connection, schema); } else if (doWhat.equals("addRule")) { doAddRule(request, response, connection, schema); } else if (doWhat.equals("addOrder")) { doAddOrder(request, response, connection, schema); } else if (doWhat.equals("removeRule")) { doRemoveRule(request, response, connection, schema); } else if (doWhat.equals("removeOrder")) { doRemoveOrder(request, response, connection, schema); } else if (doWhat.equals("resetRules")) { doResetRules(request, response, connection, schema); } else if (doWhat.equals("resetOrderBy")) { doResetOrderBy(request, response, connection, schema); } else if (doWhat.equals("resetEquation")) { doResetEquation(request, response, connection, schema); } else if (doWhat.equals("addRuleTV")) { doAddRuleTV(request, response, connection, schema); } else if (doWhat.equals("addOrderTV")) { doAddOrderTV(request, response, connection, schema); } else if (doWhat.equals("removeRuleTV")) { doRemoveRuleTV(request, response, connection, schema); } else if (doWhat.equals("removeOrderTV")) { doRemoveOrderTV(request, response, connection, schema); } else if (doWhat.equals("resetRulesTV")) { doResetRulesTV(request, response, connection, schema); } else if (doWhat.equals("resetOrderByTV")) { doResetOrderByTV(request, response, connection, schema); } else if (doWhat.equals("resetEquationTV")) { doResetEquationTV(request, response, connection, schema); } else if (doWhat.equals("addRuleStress")) { doAddRuleStress(request, response, connection, schema); } else if (doWhat.equals("addOrderStress")) { doAddOrderStress(request, response, connection, schema); } else if (doWhat.equals("removeRuleStress")) { doRemoveRuleStress(request, response, connection, schema); } else if (doWhat.equals("removeOrderStress")) { doRemoveOrderStress(request, response, connection, schema); } else if (doWhat.equals("resetRulesStress")) { doResetRulesStress(request, response, connection, schema); } else if (doWhat.equals("resetOrderByStress")) { doResetOrderByStress(request, response, connection, schema); } else if (doWhat.equals("resetEquationStress")) { doResetEquationStress(request, response, connection, schema); } else if (doWhat.equals("addRuleTest")) { doAddRuleTest(request, response, connection, schema); } else if (doWhat.equals("addOrderTest")) { doAddOrderTest(request, response, connection, schema); } else if (doWhat.equals("removeRuleTest")) { doRemoveRuleTest(request, response, connection, schema); } else if (doWhat.equals("removeOrderTest")) { doRemoveOrderTest(request, response, connection, schema); } else if (doWhat.equals("resetRulesTest")) { doResetRulesTest(request, response, connection, schema); } else if (doWhat.equals("resetOrderByTest")) { doResetOrderByTest(request, response, connection, schema); } else if (doWhat.equals("resetEquationTest")) { doResetEquationTest(request, response, connection, schema); } else if (doWhat.equals("customSearch")) { doCustomSearch(request, response, connection, schema); } else if (doWhat.equals("search")) { doSearch(request, response, connection, schema); } else if (doWhat.equals("viewQTP")) { doViewQTP(request, response, connection, schema); } else if (doWhat.equals("editQTP")) { doEditQTP(request, response, connection, schema); } else if (doWhat.equals("newQTP")) { doNewQTP(request, response, connection, schema); } else if (doWhat.equals("saveQTP")) { doSaveQTP(request, response, connection, schema); } else if (doWhat.equals("resetQTP")) { doResetQTP(request, response, connection, schema); } else if (doWhat.equals("cancelQTP")) { doCancelQTP(request, response, connection, schema); } else if (doWhat.equals("deleteQTP")) { doDeleteQTP(request, response, connection, schema); } else if (doWhat.equals("addNewTV")) { doAddNewTV(request, response, connection, schema); } else if (doWhat.equals("deleteTV")) { doDeleteTV(request, response, connection, schema); } else if (doWhat.equals("viewTV")) { doViewTV(request, response, connection, schema); } else if (doWhat.equals("editTV")) { doEditTV(request, response, connection, schema); } else if (doWhat.equals("cancelTV")) { doCancelTV(request, response, connection, schema); } else if (doWhat.equals("resetTV")) { doResetTV(request, response, connection, schema); } else if (doWhat.equals("saveTV")) { doSaveTV(request, response, connection, schema); } else if (doWhat.equals("addNewStress")) { doAddNewStress(request, response, connection, schema); } else if (doWhat.equals("deleteStress")) { doDeleteStress(request, response, connection, schema); } else if (doWhat.equals("viewStress")) { doViewStress(request, response, connection, schema); } else if (doWhat.equals("editStress")) { doEditStress(request, response, connection, schema); } else if (doWhat.equals("cancelStress")) { doCancelStress(request, response, connection, schema); } else if (doWhat.equals("resetStress")) { doResetStress(request, response, connection, schema); } else if (doWhat.equals("saveStress")) { doSaveStress(request, response, connection, schema); } else if (doWhat.equals("setStressInfo")) { doSetStressInfo(request, response, connection, schema); } else if (doWhat.equals("addNewTest")) { doAddNewTest(request, response, connection, schema); } else if (doWhat.equals("deleteTest")) { doDeleteTest(request, response, connection, schema); } else if (doWhat.equals("cancelTest")) { doCancelTest(request, response, connection, schema); } else if (doWhat.equals("saveTest")) { doSaveTest(request, response, connection, schema); } else { showPage(request, connection, schema, "admin/rel/adminUtil.jsp"); } } else { showPage(request, connection, schema, "admin/rel/adminUtil.jsp"); } } else { request.setAttribute("MAIN_PAGE", "admin/rel/adminAccessDenied.jsp"); } if(!(doWhat != null && doWhat.equals("saveCSV"))) { ServletContext context = servlet.getServletContext(); RequestDispatcher dispatcher = context.getRequestDispatcher("/template.jsp"); log.debug("handle(): Before forward."); dispatcher.forward(request, response); log.debug("handle(): After forward."); } } catch (Exception e) { log.debug("RelAdminhandler: An error occurred while handling a request : ", e); servlet.showSystemErrorPage(request,response, e); } } private void showPage( HttpServletRequest request, Connection connection, String schema, String page) throws Exception{ request.setAttribute("MAIN_PAGE", page); } private void showAdminMain( HttpServletRequest request, Connection connection, String schema, String mainPage) throws Exception{ request.setAttribute("MAIN_PAGE", mainPage); } private boolean isDateValid(String dateIn, String dateOut) { try { Date dtInTmp = new SimpleDateFormat("MM/dd/yyyy").parse(dateIn.trim()); Date dtOutTmp = new SimpleDateFormat("MM/dd/yyyy").parse(dateOut.trim()); if (dtInTmp.compareTo(dtOutTmp) > 0) return false; } catch (Exception e) { e.printStackTrace(); } return true; } protected void doManageQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doViewQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String searchQtpNumber = (String) request.getAttribute("searchQtpNumber"); RelQTPMainInfo resultMainInfo = null; ArrayList resultTVList = null; if(searchQtpNumber != null && !searchQtpNumber.trim().equals("")) { resultMainInfo = RelQTPMainInfo.getInstance(connection, schema, searchQtpNumber.trim()); resultTVList = RelTVInfo.getTVs(connection, schema, searchQtpNumber.trim()); } HttpSession session = request.getSession(true); if(session != null) { if(resultMainInfo != null) { session.setAttribute("evalNum", resultMainInfo.getEvalNum()); } } request.setAttribute("resultMainInfo", resultMainInfo); request.setAttribute("resultTVList", resultTVList); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doViewTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String searchTvNum = (String) request.getAttribute("searchTvNum"); RelTVInfo resultTvInfo = null; ArrayList resultStressList = null; HttpSession session = request.getSession(); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } if(searchTvNum != null && !searchTvNum.trim().equals("")) { resultTvInfo = RelTVInfo.getInstance(connection, schema, searchTvNum.trim(), evalNum); resultStressList = RelStressInfo.getStresses(connection, schema, searchTvNum.trim(), resultTvInfo.getEvalNum()); } request.setAttribute("resultTvInfo", resultTvInfo); request.setAttribute("resultStressList", resultStressList); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpTVDataView.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doViewStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String searchStressInfoNum = (String) request.getAttribute("searchStressInfoNum"); RelStressInfo resultStressInfo = null; ArrayList resultTestList = null; if(searchStressInfoNum != null && !searchStressInfoNum.trim().equals("")) { resultStressInfo = RelStressInfo.getInstance(connection, schema, searchStressInfoNum.trim()); resultTestList = RelTestInfo.getTests(connection, schema, searchStressInfoNum.trim()); } request.setAttribute("resultStressInfo", resultStressInfo); HttpSession session = request.getSession(true); if(session != null) { session.setAttribute("resultTestList", resultTestList); } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSearchQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ setSearchLists(request, connection, schema); HttpSession session = request.getSession(); if(session != null) { session.removeAttribute("result"); } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSaveCSV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ HttpSession session = request.getSession(); ArrayList result = null; String searchType = (String) request.getAttribute("searchType"); if(session != null) { result = (ArrayList) session.getAttribute("result"); session.setAttribute("result", result); } ServletContext context = servlet.getServletContext (); RequestDispatcher dispatcher = null; if(searchType != null && !searchType.equals("")) { if(searchType.equals("customSearch")) { dispatcher = context.getRequestDispatcher ("/admin/rel/qtpCustomSearchCSV.jsp"); } else { dispatcher = context.getRequestDispatcher ("/admin/rel/qtpSearchCSV.jsp"); } dispatcher.forward (request, response); } } protected void doCustomSearchQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ setCustomSearchLists(request, connection, schema); HttpSession session = request.getSession(true); if(session != null) { session.removeAttribute("rulesList"); session.removeAttribute("equation"); session.removeAttribute("orderList"); session.removeAttribute("rulesListTV"); session.removeAttribute("equationTV"); session.removeAttribute("orderListTV"); session.removeAttribute("rulesListStress"); session.removeAttribute("equationStress"); session.removeAttribute("orderListStress"); session.removeAttribute("rulesListTest"); session.removeAttribute("equationTest"); session.removeAttribute("orderListTest"); session.removeAttribute("result"); } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddRule( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesList = null; if(session != null) { rulesList = (ArrayList) session.getAttribute("rulesList"); if(rulesList != null) { Iterator iter = rulesList.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String field = (String) request.getAttribute("field_" + ruleNum); String operator = (String) request.getAttribute("operator_" + ruleNum); String value = (String) request.getAttribute("value_" + ruleNum); rule.setField(field); rule.setOperator(operator); rule.setValue(value); ruleNum++; } } } if(rulesList == null) { rulesList = new ArrayList(); } RelCustomSearchRule rule = new RelCustomSearchRule(); rulesList.add(rule); if(session != null) { session.setAttribute("rulesList", rulesList); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddRuleTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesListTV = null; if(session != null) { rulesListTV = (ArrayList) session.getAttribute("rulesListTV"); if(rulesListTV != null) { Iterator iter = rulesListTV.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldTV = (String) request.getAttribute("fieldTV_" + ruleNum); String operatorTV = (String) request.getAttribute("operatorTV_" + ruleNum); String valueTV = (String) request.getAttribute("valueTV_" + ruleNum); rule.setField(fieldTV); rule.setOperator(operatorTV); rule.setValue(valueTV); ruleNum++; } } } if(rulesListTV == null) { rulesListTV = new ArrayList(); } RelCustomSearchRule rule = new RelCustomSearchRule(); rulesListTV.add(rule); if(session != null) { session.setAttribute("rulesListTV", rulesListTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddRuleStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesListStress = null; if(session != null) { rulesListStress = (ArrayList) session.getAttribute("rulesListStress"); if(rulesListStress != null) { Iterator iter = rulesListStress.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldStress = (String) request.getAttribute("fieldStress_" + ruleNum); String operatorStress = (String) request.getAttribute("operatorStress_" + ruleNum); String valueStress = (String) request.getAttribute("valueStress_" + ruleNum); rule.setField(fieldStress); rule.setOperator(operatorStress); rule.setValue(valueStress); ruleNum++; } } } if(rulesListStress == null) { rulesListStress = new ArrayList(); } RelCustomSearchRule rule = new RelCustomSearchRule(); rulesListStress.add(rule); if(session != null) { session.setAttribute("rulesListStress", rulesListStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddRuleTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesListTest = null; if(session != null) { rulesListTest = (ArrayList) session.getAttribute("rulesListTest"); if(rulesListTest != null) { Iterator iter = rulesListTest.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldTest = (String) request.getAttribute("fieldTest_" + ruleNum); String operatorTest = (String) request.getAttribute("operatorTest_" + ruleNum); String valueTest = (String) request.getAttribute("valueTest_" + ruleNum); rule.setField(fieldTest); rule.setOperator(operatorTest); rule.setValue(valueTest); ruleNum++; } } } if(rulesListTest == null) { rulesListTest = new ArrayList(); } RelCustomSearchRule rule = new RelCustomSearchRule(); rulesListTest.add(rule); if(session != null) { session.setAttribute("rulesListTest", rulesListTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetRules( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesList = new ArrayList(); if(session != null) { session.setAttribute("rulesList", rulesList); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetRulesTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesListTV = new ArrayList(); if(session != null) { session.setAttribute("rulesListTV", rulesListTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetRulesStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesListStress = new ArrayList(); if(session != null) { session.setAttribute("rulesListStress", rulesListStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetRulesTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList rulesListTest = new ArrayList(); if(session != null) { session.setAttribute("rulesListTest", rulesListTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetEquation( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); String equation = ""; if(session != null) { session.setAttribute("equation", equation); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetEquationTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); String equationTV = ""; if(session != null) { session.setAttribute("equationTV", equationTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetEquationStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); String equationStress = ""; if(session != null) { session.setAttribute("equationStress", equationStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetEquationTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); String equationTest = ""; if(session != null) { session.setAttribute("equationTest", equationTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetOrderBy( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderList = new ArrayList(); if(session != null) { session.setAttribute("orderList", orderList); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetOrderByTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderListTV = new ArrayList(); if(session != null) { session.setAttribute("orderListTV", orderListTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetOrderByStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderListStress = new ArrayList(); if(session != null) { session.setAttribute("orderListStress", orderListStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetOrderByTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderListTest = new ArrayList(); if(session != null) { session.setAttribute("orderListTest", orderListTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddOrder( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderList = null; if(session != null) { orderList = (ArrayList) session.getAttribute("orderList"); } if(orderList == null) { orderList = new ArrayList(); } String order = ""; orderList.add(order); if(session != null) { session.setAttribute("orderList", orderList); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddOrderTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderListTV = null; if(session != null) { orderListTV = (ArrayList) session.getAttribute("orderListTV"); } if(orderListTV == null) { orderListTV = new ArrayList(); } String order = ""; orderListTV.add(order); if(session != null) { session.setAttribute("orderListTV", orderListTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddOrderStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderListStress = null; if(session != null) { orderListStress = (ArrayList) session.getAttribute("orderListStress"); } if(orderListStress == null) { orderListStress = new ArrayList(); } String order = ""; orderListStress.add(order); if(session != null) { session.setAttribute("orderListStress", orderListStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddOrderTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(true); ArrayList orderListTest = null; if(session != null) { orderListTest = (ArrayList) session.getAttribute("orderListTest"); } if(orderListTest == null) { orderListTest = new ArrayList(); } String order = ""; orderListTest.add(order); if(session != null) { session.setAttribute("orderListTest", orderListTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveRule( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeRuleNum = Integer.parseInt((String) request.getAttribute("ruleNum")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList rulesList = null; if(session != null) { rulesList = (ArrayList) session.getAttribute("rulesList"); if(rulesList != null) { Iterator iter = rulesList.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String field = (String) request.getAttribute("field_" + ruleNum); String operator = (String) request.getAttribute("operator_" + ruleNum); String value = (String) request.getAttribute("value_" + ruleNum); rule.setField(field); rule.setOperator(operator); rule.setValue(value); ruleNum++; } } } if(rulesList != null) { rulesList.remove(removeRuleNum); } if(session != null) { session.setAttribute("rulesList", rulesList); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveRuleTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeRuleNum = Integer.parseInt((String) request.getAttribute("ruleNumTV")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList rulesListTV = null; if(session != null) { rulesListTV = (ArrayList) session.getAttribute("rulesListTV"); if(rulesListTV != null) { Iterator iter = rulesListTV.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldTV = (String) request.getAttribute("fieldTV_" + ruleNum); String operatorTV = (String) request.getAttribute("operatorTV_" + ruleNum); String valueTV = (String) request.getAttribute("valueTV_" + ruleNum); rule.setField(fieldTV); rule.setOperator(operatorTV); rule.setValue(valueTV); ruleNum++; } } } if(rulesListTV != null) { rulesListTV.remove(removeRuleNum); } if(session != null) { session.setAttribute("rulesListTV", rulesListTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveRuleStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeRuleNum = Integer.parseInt((String) request.getAttribute("ruleNumStress")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList rulesListStress = null; if(session != null) { rulesListStress = (ArrayList) session.getAttribute("rulesListStress"); if(rulesListStress != null) { Iterator iter = rulesListStress.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldStress = (String) request.getAttribute("fieldStress_" + ruleNum); String operatorStress = (String) request.getAttribute("operatorStress_" + ruleNum); String valueStress = (String) request.getAttribute("valueStress_" + ruleNum); rule.setField(fieldStress); rule.setOperator(operatorStress); rule.setValue(valueStress); ruleNum++; } } } if(rulesListStress != null) { rulesListStress.remove(removeRuleNum); } if(session != null) { session.setAttribute("rulesListStress", rulesListStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveRuleTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeRuleNum = Integer.parseInt((String) request.getAttribute("ruleNumTest")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList rulesListTest = null; if(session != null) { rulesListTest = (ArrayList) session.getAttribute("rulesListTest"); if(rulesListTest != null) { Iterator iter = rulesListTest.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldTest = (String) request.getAttribute("fieldTest_" + ruleNum); String operatorTest = (String) request.getAttribute("operatorTest_" + ruleNum); String valueTest = (String) request.getAttribute("valueTest_" + ruleNum); rule.setField(fieldTest); rule.setOperator(operatorTest); rule.setValue(valueTest); ruleNum++; } } } if(rulesListTest != null) { rulesListTest.remove(removeRuleNum); } if(session != null) { session.setAttribute("rulesListTest", rulesListTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveOrder( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeOrderNum = Integer.parseInt((String) request.getAttribute("orderNum")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList orderList = null; if(session != null) { orderList = (ArrayList) session.getAttribute("orderList"); } if(orderList != null) { orderList.remove(removeOrderNum); } if(session != null) { session.setAttribute("orderList", orderList); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void manageRefDataSearch( HttpServletRequest request, HttpServletResponse response, String type, Connection connection, String schema) throws Exception { if(type != null && !type.trim().equals("")) { if (type.equals("sites")) { log.debug("doAdminManageRefData(): entry confirmed"); String siteName = (String) request.getAttribute("searchSiteName"); String siteDescription = (String) request.getAttribute("searchSiteDescription"); ArrayList searchResultRS = RelSite.searchSites(connection, schema, siteName, siteDescription); HttpSession session = request.getSession(true); if(session != null) { session.setAttribute("searchResultRS", searchResultRS); } } else if (type.equals("divisions")) { String divisionName = (String) request.getAttribute("searchDivisionName"); String divisionDescription = (String) request.getAttribute("searchDivisionDescription"); ArrayList searchResultDivision = RelDivision.searchDivisions(connection, schema, divisionName, divisionDescription); HttpSession session = request.getSession(true); if (session != null) { session.setAttribute("searchResultDivision", searchResultDivision); } } else if (type.equals("bizUnits")) { String bizUnit = (String) request.getAttribute("searchBizUnit"); String bizUnitDescription = (String) request.getAttribute("searchBizUnitDescription"); ArrayList searchResultBizUnit = RelBizUnit.searchBizUnits(connection, schema, bizUnit, bizUnitDescription); HttpSession session = request.getSession(true); if (session != null) { session.setAttribute("searchResultBizUnit", searchResultBizUnit); } } } } protected void doRemoveOrderTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeOrderNum = Integer.parseInt((String) request.getAttribute("orderNumTV")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList orderListTV = null; if(session != null) { orderListTV = (ArrayList) session.getAttribute("orderListTV"); } if(orderListTV != null) { orderListTV.remove(removeOrderNum); } if(session != null) { session.setAttribute("orderListTV", orderListTV); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveOrderStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeOrderNum = Integer.parseInt((String) request.getAttribute("orderNumStress")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList orderListStress = null; if(session != null) { orderListStress = (ArrayList) session.getAttribute("orderListStress"); } if(orderListStress != null) { orderListStress.remove(removeOrderNum); } if(session != null) { session.setAttribute("orderListStress", orderListStress); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doRemoveOrderTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ int removeOrderNum = Integer.parseInt((String) request.getAttribute("orderNumTest")); updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList orderListTest = null; if(session != null) { orderListTest = (ArrayList) session.getAttribute("orderListTest"); } if(orderListTest != null) { orderListTest.remove(removeOrderNum); } if(session != null) { session.setAttribute("orderListTest", orderListTest); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAdminManageRefData( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String doWhat = (String) request.getAttribute("doWhat"); String type = (String) request.getAttribute("type"); String mode = (String) request.getAttribute("mode"); String noticeType = (String) request.getAttribute("noticeType"); log.debug("doAdminManageRefData(): doWhat = "+doWhat+""); log.debug("doAdminManageRefData(): type = "+type+""); log.debug("doAdminManageRefData(): mode = "+mode+""); log.debug("doAdminManageRefData(): noticeType = "+noticeType+""); Boolean displaySearchResult = new Boolean(false); Boolean displayAddEdit = new Boolean(false); request.setAttribute("mode", mode); request.setAttribute("type", type); request.setAttribute("doWhat", doWhat); if(mode != null) { if( mode.equals("edit") || mode.equals("search") || (mode.equals("cancel"))) { displaySearchResult = Boolean.TRUE; } if( mode.equals("add") || mode.equals("edit") || mode.equals("test") || mode.equals("save")) { displayAddEdit = Boolean.TRUE; } if(mode.equals("search")) { manageRefDataSearch(request, response, type, connection, schema); } else if(mode.equals("add")) {// manageRefDataAdd(request, response, type, connection, schema); } else if(mode.equals("edit")) {// manageRefDataEdit(request, response, type, connection, schema); } else if(mode.equals("save")) {// manageRefDataSave(request, response, type, connection, schema); } else if(mode.equals("cancel")) {// manageRefDataCancel(request, response, type, connection, schema); } else if(mode.equals("test")) {// manageRefDataTest(request, response, type, connection, schema); } else if(mode.equals("remove")) {// manageRefDataRemove(request, response, type, connection, schema); } } request.setAttribute("displaySearchResult", displaySearchResult); request.setAttribute("displayAddEdit", displayAddEdit); if(type.equals("sites")) { ArrayList allSitesList = RelSite.getAllSites(connection, schema); request.setAttribute("allSitesList", allSitesList); } if(type.equals("divisions")) { ArrayList allDivisionsList = RelDivision.getAllDivisions(connection, schema); request.setAttribute("allDivisionsList", allDivisionsList); } if(type.equals("bizUnits")) { ArrayList allBizUnitsList = RelBizUnit.getAllBizUnits(connection, schema); request.setAttribute("allBizUnitsList", allBizUnitsList); } if(type.equals("technology")) { ArrayList allTechnologiesList = RelTechnology.getAllTechnologies(connection, schema); request.setAttribute("allTechnologiesList", allTechnologiesList); } if(type.equals("qtpCategories")) { ArrayList allQTPCategoriesList = RelQTPCategory.getAllQTPCategories(connection, schema); request.setAttribute("allQTPCategoriesList", allQTPCategoriesList); } if(type.equals("packages")) { ArrayList allPackagesList = RelPackage.getAllPackages(connection, schema); request.setAttribute("allPackagesList", allPackagesList); } if(type.equals("assylocs")) { ArrayList allAssyLocsList = RelAssyLoc.getAllAssyLocs(connection, schema); request.setAttribute("allAssyLocsList", allAssyLocsList); } if(type.equals("stress")) { ArrayList allRelStressCodesList = RelStress.getAllRelStressCodes(connection, schema); request.setAttribute("allRelStressCodesList", allRelStressCodesList); } request.setAttribute("MAIN_PAGE", "admin/rel/adminEdit.jsp"); String MAIN_PAGE = (String) request.getAttribute("MAIN_PAGE"); log.debug("doAdminManageRefData(): MAIN_PAGE = "+MAIN_PAGE+""); if(mode != null && mode.equals("back")) { showAdminMain(request, connection, schema, "admin/rel/adminUtil.jsp"); } } protected void doCustomSearch( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ updateCustomSearchInputs(request, connection, schema); HttpSession session = request.getSession(); ArrayList result = null; // main info ArrayList rulesList = null; String equation = null; ArrayList orderList = null; if(session != null) { rulesList = (ArrayList) session.getAttribute("rulesList"); equation = (String) session.getAttribute("equation"); orderList = (ArrayList) session.getAttribute("orderList"); } // tv info ArrayList rulesListTV = null; String equationTV = null; ArrayList orderListTV = null; if(session != null) { rulesListTV = (ArrayList) session.getAttribute("rulesListTV"); equationTV = (String) session.getAttribute("equationTV"); orderListTV = (ArrayList) session.getAttribute("orderListTV"); } // stress info ArrayList rulesListStress = null; String equationStress = null; ArrayList orderListStress = null; if(session != null) { rulesListStress = (ArrayList) session.getAttribute("rulesListStress"); equationStress = (String) session.getAttribute("equationStress"); orderListStress = (ArrayList) session.getAttribute("orderListStress"); } // test info ArrayList rulesListTest = null; String equationTest = null; ArrayList orderListTest = null; if(session != null) { rulesListTest = (ArrayList) session.getAttribute("rulesListTest"); equationTest = (String) session.getAttribute("equationTest"); orderListTest = (ArrayList) session.getAttribute("orderListTest"); } if((rulesList != null && rulesList.size() > 0) || (rulesListTV != null && rulesListTV.size() > 0) || (rulesListStress != null && rulesListStress.size() > 0) || (rulesListTest != null && rulesListTest.size() > 0) || (equation != null && !equation.equals("")) || (equationTV != null && !equationTV.equals("")) || (equationStress != null && !equationStress.equals("")) || (equationTest != null && !equationTest.equals(""))) { result = RelQTPMainInfo.customSearchQTP( connection, schema, rulesList, equation, orderList, rulesListTV, equationTV, orderListTV, rulesListStress, equationStress, orderListStress, rulesListTest, equationTest, orderListTest); } if(session != null) { session.setAttribute("result", result); } setCustomSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpCustomSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSearch( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String qtpNumber = (String) request.getAttribute("qtpNumber"); String owner = (String) request.getAttribute("owner"); String division = (String) request.getAttribute("division"); String product = (String) request.getAttribute("product"); String category = (String) request.getAttribute("category"); String relSite = (String) request.getAttribute("relSite"); String bizUnit = (String) request.getAttribute("bizUnit"); String status = (String) request.getAttribute("status"); ArrayList result = RelQTPMainInfo.searchQTP(connection, schema, qtpNumber, owner, division, product, category, relSite, bizUnit, status); HttpSession session = request.getSession(); if(session != null) { session.setAttribute("result", result); } setSearchLists(request, connection, schema); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpSearchQTP.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); if(session != null) { RelQTPMainInfo editMainInfo = (RelQTPMainInfo) session.getAttribute("editMainInfo"); if(editMainInfo != null) { if(editMode.equals("edit")) { editMainInfo = RelQTPMainInfo.getInstance(connection, schema, editMainInfo.getEvalNum()); } else { if(editMode.equals("add")) { editMainInfo.clearAllDataFields(); } } session.setAttribute("editMainInfo", editMainInfo); } } setQTPDataLists(request, connection, schema); request.setAttribute("editMode", editMode); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); RelTVInfo editTvInfo = (RelTVInfo) session.getAttribute("editTvInfo"); if(editTvInfo != null) { if(editMode.equals("edit")) { editTvInfo = RelTVInfo.getInstance(connection, schema, editTvInfo.getTvNum(), evalNum); } else { if(editMode.equals("add")) { editTvInfo.clearAllDataFields(); } } session.setAttribute("editTvInfo", editTvInfo); } } setTVDataLists(request, connection, schema); request.setAttribute("editMode", editMode); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpTVDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doResetStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); if(session != null) { RelStressInfo editStressInfo = (RelStressInfo) session.getAttribute("editStressInfo"); if(editStressInfo != null) { if(editMode.equals("edit")) { editStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfo.getStressInfoNum()); } else { if(editMode.equals("add")) { editStressInfo.clearAllDataFields(); } } session.setAttribute("editStressInfo", editStressInfo); } } setStressDataLists(request, connection, schema); request.setAttribute("editMode", editMode); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doNewQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ HttpSession session = request.getSession(true); if(session != null) { RelQTPMainInfo editMainInfo = new RelQTPMainInfo(); session.setAttribute("editMainInfo", editMainInfo); } setQTPDataLists(request, connection, schema); request.setAttribute("editMode", "add"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSaveQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ RelQTPMainInfo editMainInfo = null; Vector inputErrors = new Vector(); String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); if(session != null) { editMainInfo = (RelQTPMainInfo) session.getAttribute("editMainInfo"); } if(editMainInfo != null) { String editQTPNumber = (String) request.getAttribute("editQTPNumber"); String editPurpose = (String) request.getAttribute("editPurpose"); String editRelEngr = (String) request.getAttribute("editRelEngr"); String editOwner = (String) request.getAttribute("editOwner"); String editRelSite = (String) request.getAttribute("editRelSite"); String editDivision = (String) request.getAttribute("editDivision"); String editBizUnit = (String) request.getAttribute("editBizUnit"); String editProduct = (String) request.getAttribute("editProduct"); String editProcess = (String) request.getAttribute("editProcess"); String editFabSite = (String) request.getAttribute("editFabSite"); String editDieSize = (String) request.getAttribute("editDieSize"); String editCustomerNotice = (String) request.getAttribute("editCustomerNotice"); String editDPlanGetsNum = (String) request.getAttribute("editDPlanGetsNum"); String editDReceivedParts = (String) request.getAttribute("editDReceivedParts"); String editDStarted1stStress = (String) request.getAttribute("editDStarted1stStress"); String editStatus = (String) request.getAttribute("editStatus"); String editQTPCategory = (String) request.getAttribute("editQTPCategory"); String editRelStress = (String) request.getAttribute("editRelStress"); String editEntitlement = (String) request.getAttribute("editEntitlement"); String editDeviceVCC = (String) request.getAttribute("editDeviceVCC"); String editProductsFamily = (String) request.getAttribute("editProductsFamily"); String editBurnInConditions = (String) request.getAttribute("editBurnInConditions"); String editMoistureLevel = (String) request.getAttribute("editMoistureLevel"); String editPackage = (String) request.getAttribute("editPackage"); String editMoldingCompound = (String) request.getAttribute("editMoldingCompound"); String editDieAttach = (String) request.getAttribute("editDieAttach"); String editWADiameter = (String) request.getAttribute("editWADiameter"); String editAssemblySite = (String) request.getAttribute("editAssySite"); String editSolderReflowTemp = (String) request.getAttribute("editSolderReflowTemp"); String editSort1 = (String) request.getAttribute("editSort1"); String editSort2 = (String) request.getAttribute("editSort2"); String editSort3 = (String) request.getAttribute("editSort3"); String editSort4 = (String) request.getAttribute("editSort4"); String editClassHot = (String) request.getAttribute("editClassHot"); String editClassRoom = (String) request.getAttribute("editClassRoom"); String editClassCold = (String) request.getAttribute("editClassCold"); String editQA = (String) request.getAttribute("editQA"); if(editMode.equals("add")) { if(editQTPNumber != null && !editQTPNumber.trim().equals("")) { if(RelQTPMainInfo.isEvalNumAlreadyUsed(connection, schema, editQTPNumber.trim())) { inputErrors.addElement("<B>EVAL NUM</B> has already existing record/s for QTP General Information."); } else { editMainInfo.setEvalNum(editQTPNumber.trim()); } } else { inputErrors.addElement("<B>EVAL NUM</B> is blank."); } } if(editPurpose != null && !editPurpose.trim().equals("")) { editMainInfo.setPurpose(editPurpose.trim()); } else { inputErrors.addElement("<B>Purpose</B> is blank."); } if(editRelEngr != null && !editRelEngr.trim().equals("")) { editMainInfo.setRelEngr(editRelEngr.trim()); } else { inputErrors.addElement("<B>Rel Engineer</B> is blank."); } if(editOwner != null && !editOwner.trim().equals("")) { editMainInfo.setOwner(editOwner.trim()); } else { inputErrors.addElement("<B>Owner</B> is blank."); } if(editRelSite != null && !editRelSite.trim().equals("")) { editMainInfo.setRelSite(editRelSite.trim()); } else { inputErrors.addElement("No <B>Rel Site</B> selected."); } if(editDivision != null && !editDivision.trim().equals("")) { editMainInfo.setDivision(editDivision.trim()); } else { inputErrors.addElement("No <B>Division</B> selected."); } if(editBizUnit != null && !editBizUnit.trim().equals("")) { editMainInfo.setBizUnit(editBizUnit.trim()); } else { inputErrors.addElement("No <B>Biz Unit</B> selected."); } if(editProduct != null && !editProduct.trim().equals("")) { editMainInfo.setProduct(editProduct.trim()); } else { inputErrors.addElement("<B>Product</B> is blank."); } if(editProcess != null && !editProcess.trim().equals("")) { editMainInfo.setProcess(editProcess.trim()); } else { inputErrors.addElement("<B>Process</B> is blank."); } if(editFabSite != null && !editFabSite.trim().equals("")) { editMainInfo.setFabSite(editFabSite.trim()); } else { inputErrors.addElement("No <B>Fab Site</B> selected."); } if(editDieSize != null && !editDieSize.trim().equals("")) { editMainInfo.setDieSize(editDieSize.trim()); } else { inputErrors.addElement("<B>Die Size</B> is blank."); } if(editCustomerNotice != null && !editCustomerNotice.trim().equals("")) { editMainInfo.setCustomerNotice(editCustomerNotice.trim()); } else { inputErrors.addElement("<B>Customer Notice</B> is blank."); } if(editDPlanGetsNum != null && !editDPlanGetsNum.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDPlanGetsNum.trim()); editMainInfo.setDPlanGetsNum(new Timestamp(date.getTime())); }// else {// inputErrors.addElement("<B>Date QTP Completed</B> is blank.");// } if(editDReceivedParts != null && !editDReceivedParts.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDReceivedParts.trim()); editMainInfo.setDReceivedParts(new Timestamp(date.getTime())); } else { inputErrors.addElement("<B>Date Received Parts</B> is blank."); } if(editDStarted1stStress != null && !editDStarted1stStress.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDStarted1stStress.trim()); editMainInfo.setDStarted1stStress(new Timestamp(date.getTime())); } else { inputErrors.addElement("<B>Date Started 1st Stress</B> is blank."); } if(editStatus != null && !editStatus.trim().equals("")) { editMainInfo.setStatus(editStatus.trim()); } else { inputErrors.addElement("No <B>Status</B> selected."); } if(editQTPCategory != null && !editQTPCategory.trim().equals("")) { editMainInfo.setQtpCat(editQTPCategory.trim()); } else { inputErrors.addElement("No <B>QTP Category</B> selected."); } if(editRelStress != null && !editRelStress.trim().equals("")) { editMainInfo.setRelStress(editRelStress.trim()); } else { inputErrors.addElement("<B>Rel Stress</B> is blank."); } if(editEntitlement != null && !editEntitlement.trim().equals("")) { editMainInfo.setEntitlement(new Integer(editEntitlement.trim())); } else { inputErrors.addElement("<B>Entitlement</B> is blank."); } if(editDeviceVCC != null && !editDeviceVCC.trim().equals("")) { editMainInfo.setDeviceVCC(new Double(editDeviceVCC.trim())); } else { inputErrors.addElement("<B>Device VCC</B> is blank."); } if(editProductsFamily != null && !editProductsFamily.trim().equals("")) { editMainInfo.setProductsFamily(editProductsFamily.trim()); } else { inputErrors.addElement("<B>Products Family</B> is blank."); } if(editBurnInConditions != null && !editBurnInConditions.trim().equals("")) { editMainInfo.setBurnInConditions(editBurnInConditions.trim()); } else { inputErrors.addElement("<B>Burn-In Conditions</B> is blank."); } if(editMoistureLevel != null && !editMoistureLevel.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editMoistureLevel.trim().equals("na") || editMoistureLevel.trim().equals("NA") || editMoistureLevel.trim().equals("n/a") || editMoistureLevel.trim().equals("N/A") || editMoistureLevel.trim().equals("N/a") || editMoistureLevel.trim().equals("N/a")) { inputErrors.addElement("<B>Moisture Level</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setMoistureLevel(editMoistureLevel.trim()); } else editMainInfo.setMoistureLevel(editMoistureLevel.trim()); } else { inputErrors.addElement("No <B>Moisture Level</B> selected."); } if(editPackage != null && !editPackage.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editPackage.trim().equals("na") || editPackage.trim().equals("NA") || editPackage.trim().equals("n/a") || editPackage.trim().equals("N/A") || editPackage.trim().equals("N/a") || editPackage.trim().equals("N/a")) { inputErrors.addElement("<B>Package</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setPkg(editPackage.trim()); } else editMainInfo.setPkg(editPackage.trim()); } else { inputErrors.addElement("<B>Package</B> is blank."); } if(editMoldingCompound != null && !editMoldingCompound.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editMoldingCompound.trim().equals("na") || editMoldingCompound.trim().equals("NA") || editMoldingCompound.trim().equals("n/a") || editMoldingCompound.trim().equals("N/A") || editMoldingCompound.trim().equals("N/a") || editMoldingCompound.trim().equals("N/a")) { inputErrors.addElement("<B>Molding Compound</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setMoldingCompound(editMoldingCompound.trim()); } else editMainInfo.setMoldingCompound(editMoldingCompound.trim()); } else { inputErrors.addElement("<B>Molding Compound</B> is blank."); } if(editDieAttach != null && !editDieAttach.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editDieAttach.trim().equals("na") || editDieAttach.trim().equals("NA") || editDieAttach.trim().equals("n/a") || editDieAttach.trim().equals("N/A") || editDieAttach.trim().equals("N/a") || editDieAttach.trim().equals("N/a")) { inputErrors.addElement("<B>Die Attach</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setDieAttach(editDieAttach.trim()); } else editMainInfo.setDieAttach(editDieAttach.trim()); } else { inputErrors.addElement("<B>Die Attach</B> is blank."); } if(editWADiameter != null && !editWADiameter.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editWADiameter.trim().equals("na") || editWADiameter.trim().equals("NA") || editWADiameter.trim().equals("n/a") || editWADiameter.trim().equals("N/A") || editWADiameter.trim().equals("N/a") || editWADiameter.trim().equals("N/a")) { inputErrors.addElement("<B>Wire Material Diameter</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setWireMaterialDiameter(editWADiameter.trim()); } else editMainInfo.setWireMaterialDiameter(editWADiameter.trim()); } else { inputErrors.addElement("<B>Wire Material Diameter</B> is blank."); } if(editAssemblySite != null && !editAssemblySite.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editAssemblySite.trim().equals("na") || editAssemblySite.trim().equals("NA") || editAssemblySite.trim().equals("n/a") || editAssemblySite.trim().equals("N/A") || editAssemblySite.trim().equals("N/a") || editAssemblySite.trim().equals("N/a")) { inputErrors.addElement("<B>Assembly Site</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setAssySite(editAssemblySite.trim()); } else editMainInfo.setAssySite(editAssemblySite.trim()); } else { inputErrors.addElement("No <B>Assembly Site</B> selected."); } if(editSolderReflowTemp != null && !editSolderReflowTemp.trim().equals("")) { if (editQTPCategory.trim().equals("Automotive") || editQTPCategory.trim().equals("Assembly or Packaging QTP")) { if (editSolderReflowTemp.trim().equals("na") || editSolderReflowTemp.trim().equals("NA") || editSolderReflowTemp.trim().equals("n/a") || editSolderReflowTemp.trim().equals("N/A") || editSolderReflowTemp.trim().equals("N/a") || editSolderReflowTemp.trim().equals("N/a")) { inputErrors.addElement("<B>Solder Reflow Temp</B> is invalid for <B>QTP Category</B>."); } else editMainInfo.setSolderReflowTemp(editSolderReflowTemp.trim()); } else editMainInfo.setSolderReflowTemp(editSolderReflowTemp.trim()); } else { inputErrors.addElement("No <B>Solder Reflow Temp</B> selected."); } if(editSort1 != null && !editSort1.trim().equals("")) { editMainInfo.setSort1(editSort1.trim()); } if(editSort2 != null && !editSort2.trim().equals("")) { editMainInfo.setSort2(editSort2.trim()); } if(editSort3 != null && !editSort3.trim().equals("")) { editMainInfo.setSort3(editSort3.trim()); } if(editSort4 != null && !editSort4.trim().equals("")) { editMainInfo.setSort4(editSort4.trim()); } if(editClassHot != null && !editClassHot.trim().equals("")) { editMainInfo.setClassHot(editClassHot.trim()); } if(editClassRoom != null && !editClassRoom.trim().equals("")) { editMainInfo.setClassRoom(editClassRoom.trim()); } if(editClassCold != null && !editClassCold.trim().equals("")) { editMainInfo.setClassCold(editClassCold.trim()); } if(editQA != null && !editQA.trim().equals("")) { editMainInfo.setQa(editQA.trim()); } if(inputErrors.size() > 0) { setQTPDataLists(request, connection, schema); request.setAttribute("inputErrors", inputErrors); session.setAttribute("editMainInfo", editMainInfo); request.setAttribute("MAIN_SECTION", "qtpDataEdit.jsp"); request.setAttribute("editMode", editMode); } else { Boolean saveSuccess = editMainInfo.put(connection, schema); if(saveSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelQTPMainInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), editMainInfo.getRelQtpDataID(), RelConstants.ACTION_SAVE); if(session != null) { if(editMainInfo != null) { session.setAttribute("evalNum", editMainInfo.getEvalNum()); } } } // refreshing main info and tvList from DB RelQTPMainInfo resultMainInfo = RelQTPMainInfo.getInstance(connection, schema, editMainInfo.getEvalNum()); request.setAttribute("resultMainInfo", resultMainInfo); request.setAttribute("saveSuccess", saveSuccess); ArrayList resultTVList = RelTVInfo.getTVs(connection, schema, resultMainInfo.getEvalNum()); request.setAttribute("resultTVList", resultTVList); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); } } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSaveTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ RelTVInfo editTvInfo = null; Vector inputErrors = new Vector(); Boolean saveSuccess = null; String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); String evalNum = null; if(session != null) { editTvInfo = (RelTVInfo) session.getAttribute("editTvInfo"); evalNum = (String) session.getAttribute("evalNum"); } if(editTvInfo != null) { String editTvNumber = (String) request.getAttribute("editTvNumber"); String editMfgDevice = (String) request.getAttribute("editMfgDevice"); String editMktgDevice = (String) request.getAttribute("editMktgDevice"); String editBuildKit = (String) request.getAttribute("editBuildKit"); String editTestProgram = (String) request.getAttribute("editTestProgram"); String editBin = (String) request.getAttribute("editBin"); String editAssyLocation = (String) request.getAttribute("editAssyLocation"); String editMarkLot = (String) request.getAttribute("editMarkLot"); String editAssyLot = (String) request.getAttribute("editAssyLot"); String editFabLot = (String) request.getAttribute("editFabLot"); String editDc = (String) request.getAttribute("editDc"); String editTechnology = (String) request.getAttribute("editTechnology"); String editFamily = (String) request.getAttribute("editFamily"); String editAssyProcess = (String) request.getAttribute("editAssyProcess"); if(editMode.equals("add")) { if(editTvNumber != null && !editTvNumber.trim().equals("")) { if(RelTVInfo.isTVNumAlreadyUsed(connection, schema, editTvNumber.trim(), evalNum)) { inputErrors.addElement("<B>TV NUM</B> has already existing record/s for Test Vehicle Information."); } else { editTvInfo.setTvNum(editTvNumber.trim()); } } else { inputErrors.addElement("<B>TV NUM</B> is blank."); } } if(editMfgDevice != null && !editMfgDevice.trim().equals("")) { if (editAssyLot.trim().equals("DUMMY") && editMfgDevice.trim().equals("DUMMY")) { inputErrors.addElement("<B>Mfg Device</B> is inconsistent with <B>Assy Lot</B>"); } else { editTvInfo.setMfgDevice(editMfgDevice.trim()); } } else { inputErrors.addElement("<B>Mfg Device</B> is blank."); } if(editMktgDevice != null && !editMktgDevice.trim().equals("")) { if (editAssyLot.trim().equals("DUMMY") && editMktgDevice.trim().equals("DUMMY")) { inputErrors.addElement("<B>Mktg Device</B> is inconsistent with <B>Assy Lot</B>"); } else { editTvInfo.setMktgDevice(editMktgDevice.trim()); } } else { inputErrors.addElement("<B>Mktg Device</B> is blank."); } if(editBuildKit != null && !editBuildKit.trim().equals("")) { if (editAssyLot.trim().equals("DUMMY") && editBuildKit.trim().equals("DUMMY")) { inputErrors.addElement("<B>Build Kit</B> is inconsistent with <B>Assy Lot</B>"); } else { editTvInfo.setBuildKit(editBuildKit.trim()); } } else { inputErrors.addElement("<B>Build Kit</B> is blank."); } if(editTestProgram != null && !editTestProgram.trim().equals("")) { if (editAssyLot.trim().equals("DUMMY") && editTestProgram.trim().equals("DUMMY")) { inputErrors.addElement("<B>Test Program</B> is inconsistent with <B>Assy Lot</B>"); } else { editTvInfo.setTestProgram(editTestProgram.trim()); } } else { inputErrors.addElement("<B>Test Program</B> is blank."); } if(editBin != null && !editBin.trim().equals("")) { editTvInfo.setBin(editBin.trim()); } else { inputErrors.addElement("<B>Bin</B> is blank."); } if(editAssyLocation != null && !editAssyLocation.trim().equals("")) { editTvInfo.setAssyLoc(editAssyLocation.trim()); } else { inputErrors.addElement("<B>Assy Location</B> is blank."); } if(editMarkLot != null && !editMarkLot.trim().equals("")) { editTvInfo.setMLot(editMarkLot.trim()); } else { inputErrors.addElement("<B>Mark Lot</B> is blank."); } if(editAssyLot != null && !editAssyLot.trim().equals("")) { editTvInfo.setAssyLot(editAssyLot.trim()); } else { inputErrors.addElement("<B>Assy Lot</B> is blank."); } if(editFabLot != null && !editFabLot.trim().equals("")) { if (editAssyLot.trim().equals("DUMMY") && editFabLot.trim().equals("DUMMY")) { inputErrors.addElement("<B>Fab Lot</B> is inconsistent with <B>Assy Lot</B>"); } else { editTvInfo.setFabLot(editFabLot.trim()); } } else { inputErrors.addElement("<B>Fab Lot</B> is blank."); } if(editDc != null && !editDc.trim().equals("")) { if (editAssyLot.trim().equals("DUMMY") && editDc.trim().equals("DUMMY")) { inputErrors.addElement("<B>Date Code</B> is inconsistent with <B>Assy Lot</B>"); } else { editTvInfo.setDc(editDc.trim()); } } else { inputErrors.addElement("<B>Date Code</B> is blank."); } if(editTechnology != null && !editTechnology.trim().equals("")) { editTvInfo.setTechnology(editTechnology.trim()); } else { inputErrors.addElement("No <B>Technology</B> selected."); } if(editFamily != null && !editFamily.trim().equals("")) { editTvInfo.setFamily(editFamily.trim()); } else { inputErrors.addElement("No <B>Family</B> selected."); } if(editAssyProcess != null && !editAssyProcess.trim().equals("")) { editTvInfo.setAssyProcess(editAssyProcess.trim()); } else { inputErrors.addElement("<B>Assy Process</B> is blank."); } if(inputErrors.size() > 0) { setTVDataLists(request, connection, schema); request.setAttribute("inputErrors", inputErrors); session.setAttribute("editTvInfo", editTvInfo); request.setAttribute("MAIN_SECTION", "qtpTVDataEdit.jsp"); request.setAttribute("editMode", editMode); } else { saveSuccess = editTvInfo.put(connection, schema); if(saveSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelTVInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), editTvInfo.getTvDataID(), RelConstants.ACTION_SAVE); } if(editMode != null && editMode.equals("edit")) { RelTVInfo resultTvInfo = RelTVInfo.getInstance(connection, schema, editTvInfo.getTvNum(), evalNum); ArrayList resultStressList = RelStressInfo.getStresses(connection, schema, editTvInfo.getTvNum(), resultTvInfo.getEvalNum()); request.setAttribute("resultTvInfo", resultTvInfo); request.setAttribute("resultStressList", resultStressList); request.setAttribute("MAIN_SECTION", "qtpTVDataView.jsp"); } else if(editMode != null && editMode.equals("add")) { RelQTPMainInfo resultMainInfo = RelQTPMainInfo.getInstance(connection, schema, editTvInfo.getEvalNum()); ArrayList resultTVList = RelTVInfo.getTVs(connection, schema, editTvInfo.getEvalNum()); request.setAttribute("resultMainInfo", resultMainInfo); request.setAttribute("resultTVList", resultTVList); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); } } } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSaveStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ RelStressInfo editStressInfo = null; Vector inputErrors = new Vector(); Boolean saveSuccess = null; String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); String evalNum = null; if(session != null) { editStressInfo = (RelStressInfo) session.getAttribute("editStressInfo"); evalNum = (String) session.getAttribute("evalNum"); } if(editStressInfo != null) { String editStressCode = (String) request.getAttribute("editStressCode"); String editStressLevel = (String) request.getAttribute("editStressLevel"); String editDCommitted = (String) request.getAttribute("editDCommitted"); String editDReceived = (String) request.getAttribute("editDReceived"); String editStressClass = (String) request.getAttribute("editStressClass"); String editQty0Hr = (String) request.getAttribute("editQty0Hr"); String editProgRej = (String) request.getAttribute("editProgRej"); String editRej0Hr = (String) request.getAttribute("editRej0Hr"); String editDTest0Hr = (String) request.getAttribute("editDTest0Hr"); String editMrb = (String) request.getAttribute("editMrb"); String editEngr = (String) request.getAttribute("editEngr"); String editComment0 = (String) request.getAttribute("editComment0"); String editMethodCond = (String) request.getAttribute("editMethodCond"); String editTemp = (String) request.getAttribute("editTemp"); String editVolt = (String) request.getAttribute("editVolt"); String editVendor = (String) request.getAttribute("editVendor"); String editSpares = (String) request.getAttribute("editSpares"); String editDCompleted = (String) request.getAttribute("editDCompleted"); String editComments = (String) request.getAttribute("editComments"); String editCCode = (String) request.getAttribute("editCCode"); String editCost = (String) request.getAttribute("editCost"); if(editStressCode != null && !editStressCode.trim().equals("")) { editStressInfo.setStressCode(editStressCode.trim()); } else { inputErrors.addElement("No <B>STRESS CODE</B> selected."); } if(editStressLevel != null && !editStressLevel.trim().equals("")) { editStressInfo.setStressLevel(new Double(editStressLevel.trim())); } if(editDCommitted != null && !editDCommitted.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDCommitted.trim()); editStressInfo.setDCommitted(new Timestamp(date.getTime())); } else { inputErrors.addElement("<B>Date Committed</B> is blank."); } if(editDReceived != null && !editDReceived.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDReceived.trim()); editStressInfo.setDReceived(new Timestamp(date.getTime())); } else { inputErrors.addElement("<B>Date Received</B> is blank."); } if(editStressClass != null && !editStressClass.trim().equals("")) { editStressInfo.setStressClass(editStressClass.trim()); } if(editQty0Hr != null && !editQty0Hr.trim().equals("")) { editStressInfo.setQty0Hr(new Integer(editQty0Hr.trim())); } if(editProgRej != null && !editProgRej.trim().equals("")) { editStressInfo.setProgRej(new Integer(editProgRej.trim())); } if(editRej0Hr != null && !editRej0Hr.trim().equals("")) { editStressInfo.setRej0Hr(new Integer(editRej0Hr.trim())); } if(editDTest0Hr != null && !editDTest0Hr.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDTest0Hr.trim()); editStressInfo.setDTest0Hr(new Timestamp(date.getTime())); } if(editMrb != null && !editMrb.trim().equals("")) { editStressInfo.setMrb(editMrb.trim()); } if(editEngr != null && !editEngr.trim().equals("")) { editStressInfo.setEngr(editEngr.trim()); } if(editComment0 != null && !editComment0.trim().equals("")) { editStressInfo.setComment0(editComment0.trim()); } if(editMethodCond != null && !editMethodCond.trim().equals("")) { editStressInfo.setMethodCond(editMethodCond.trim()); } else { inputErrors.addElement("<B>Method Cond</B> is blank."); } if(editTemp != null && !editTemp.trim().equals("")) { editStressInfo.setTemp(new Integer(editTemp.trim())); } else { if (editStressCode.trim().startsWith("EFR", 0) || editStressCode.trim().startsWith("LFR", 0) || editStressCode.trim().startsWith("DRET", 0) || editStressCode.trim().startsWith("T/C", 0) || editStressCode.trim().startsWith("HAST", 0) || editStressCode.trim().startsWith("PCT", 0) || editStressCode.trim().startsWith("HTS", 0) || editStressCode.trim().startsWith("BI", 0) || editStressCode.trim().startsWith("TH", 0) || editStressCode.trim().startsWith("T/SHOCK", 0) || editStressCode.trim().startsWith("SDERBILTY", 0) || editStressCode.trim().startsWith("BURN IN", 0) || editStressCode.trim().startsWith("LATCH-UP", 0) || editStressCode.trim().startsWith("LIFE TEST", 0) || editStressCode.trim().startsWith("LIFE VER", 0) || editStressCode.trim().startsWith("LTOL", 0) || editStressCode.trim().startsWith("TEMP/HUMID", 0)) { inputErrors.addElement("<B>Temp</B> is invalid for <B>Stress Code</B>."); } } if(editVolt != null && !editVolt.trim().equals("")) { editStressInfo.setVolt(new Double(editVolt.trim())); } else { if (editStressCode.trim().startsWith("EFR", 0) || editStressCode.trim().startsWith("LFR", 0) || editStressCode.trim().startsWith("BI", 0) || editStressCode.trim().startsWith("BURN IN", 0) || editStressCode.trim().startsWith("HTSSL", 0) || editStressCode.trim().startsWith("HAST", 0)) { inputErrors.addElement("<B>Voltage</B> is invalid for <B>Stress Code</B>."); } } if(editVendor != null && !editVendor.trim().equals("")) { editStressInfo.setVendor(editVendor.trim()); } if(editSpares != null && !editSpares.trim().equals("")) { editStressInfo.setSpares(new Integer(editSpares.trim())); } if(editDCompleted != null && !editDCompleted.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDCompleted.trim()); editStressInfo.setDCompleted(new Timestamp(date.getTime())); } if(editComments != null && !editComments.trim().equals("")) { editStressInfo.setComments(editComments.trim()); } if(editCCode != null && !editCCode.trim().equals("")) { editStressInfo.setCCode(editCCode.trim()); } if(editCost != null && !editCost.trim().equals("")) { editStressInfo.setCost(new Double(editCost.trim())); } if(inputErrors.size() > 0) { setStressDataLists(request, connection, schema); request.setAttribute("inputErrors", inputErrors); session.setAttribute("editStressInfo", editStressInfo); request.setAttribute("MAIN_SECTION", "qtpStressDataEdit.jsp"); request.setAttribute("editMode", editMode); } else { saveSuccess = editStressInfo.put(connection, schema); if(saveSuccess != null && saveSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelStressInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), editStressInfo.getStressDataID(), RelConstants.ACTION_SAVE); } if(editMode != null && editMode.equals("edit")) { RelStressInfo resultStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfo.getStressInfoNum()); ArrayList resultTestList = RelTestInfo.getTests(connection, schema, editStressInfo.getStressInfoNum()); request.setAttribute("resultStressInfo", resultStressInfo); request.setAttribute("resultTestList", resultTestList); request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); } else if(editMode != null && editMode.equals("add")) { RelStress stress = RelStress.getInstance(connection, schema, editStressInfo.getStressCode()); if(stress != null) { ArrayList readpoints = RelStress.getReadpoints(connection, schema, stress.getReadpointSetID()); if(readpoints != null && readpoints.size() > 0) { Iterator iter = readpoints.iterator(); while(iter.hasNext()) { String readpoint = (String) iter.next(); RelTestInfo testInfo = new RelTestInfo(); testInfo.setTestID(RelTestInfo.getNewTestID(connection, schema)); testInfo.setReadpoint(readpoint); testInfo.setStressInfoNum(editStressInfo.getStressInfoNum()); testInfo.put(connection, schema); } } } RelTVInfo resultTvInfo = RelTVInfo.getInstance(connection, schema, editStressInfo.getTvNum(), evalNum); ArrayList resultStressList = RelStressInfo.getStresses(connection, schema, editStressInfo.getTvNum(), resultTvInfo.getEvalNum()); request.setAttribute("resultTvInfo", resultTvInfo); request.setAttribute("resultStressList", resultStressList); request.setAttribute("MAIN_SECTION", "qtpTVDataView.jsp"); } } } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSaveTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ ArrayList resultTestList = null; int failedSave = 0; Boolean saveSuccess = null; Vector inputErrors = new Vector(); HttpSession session = request.getSession(); if(session != null) { resultTestList = (ArrayList) session.getAttribute("resultTestList"); } if(resultTestList != null) { Iterator iter = resultTestList.iterator(); while(iter.hasNext()) { RelTestInfo testInfo = (RelTestInfo) iter.next(); Integer testID = testInfo.getTestID(); Vector errors = new Vector(); String editReadpt = (String) request.getAttribute("editReadpt_" + testID); String editQtyIn = (String) request.getAttribute("editQtyIn_" + testID); String editDateIn = (String) request.getAttribute("editDateIn_" + testID); String editQtyOut = (String) request.getAttribute("editQtyOut_" + testID); String editDateOut = (String) request.getAttribute("editDateOut_" + testID); String editQtyInTst = (String) request.getAttribute("editQtyInTst_" + testID); String editDateInTst = (String) request.getAttribute("editDateInTst_" + testID); String editQtyOutTst = (String) request.getAttribute("editQtyOutTst_" + testID); String editDateOutTst = (String) request.getAttribute("editDateOutTst_" + testID); String editRej = (String) request.getAttribute("editRej_" + testID); String editFA = (String) request.getAttribute("editFA_" + testID); String editDateInFA = (String) request.getAttribute("editDateInFA_" + testID); String editDateOutFA = (String) request.getAttribute("editDateOutFA_" + testID); String editComment = (String) request.getAttribute("editComment_" + testID); if(editReadpt != null && !editReadpt.trim().equals("")) { testInfo.setReadpoint(editReadpt.trim()); } if(editQtyIn != null && !editQtyIn.trim().equals("")) { testInfo.setQtyIn(new Integer(editQtyIn.trim())); } if(editDateIn != null && !editDateIn.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateIn.trim()); testInfo.setDIn(new Timestamp(date.getTime())); } if(editQtyOut != null && !editQtyOut.trim().equals("")) { testInfo.setQtyOut(new Integer(editQtyOut.trim())); } if(editDateOut != null && !editDateOut.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateOut.trim()); testInfo.setDOut(new Timestamp(date.getTime())); } if(editQtyInTst != null && !editQtyInTst.trim().equals("")) { testInfo.setQtyInTst(new Integer(editQtyInTst.trim())); } if(editDateInTst != null && !editDateInTst.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateInTst.trim()); testInfo.setDInTst(new Timestamp(date.getTime())); } if(editQtyOutTst != null && !editQtyOutTst.trim().equals("")) { testInfo.setQtyOutTst(new Integer(editQtyOutTst.trim())); } if(editDateOutTst != null && !editDateOutTst.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateOutTst.trim()); testInfo.setDOutTst(new Timestamp(date.getTime())); } if(editRej != null && !editRej.trim().equals("")) { testInfo.setRej(new Integer(editRej.trim())); } if(editFA != null && !editFA.trim().equals("")) { testInfo.setFa(editFA.trim()); } if(editDateInFA != null && !editDateInFA.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateInFA.trim()); testInfo.setDInFa(new Timestamp(date.getTime())); } if(editDateOutFA != null && !editDateOutFA.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateOutFA.trim()); testInfo.setDOutFa(new Timestamp(date.getTime())); } if(editComment != null && !editComment.trim().equals("")) { testInfo.setComments(editComment.trim()); } // Date Validation if(!isDateValid(editDateIn, editDateOut)) { errors.addElement("<B>Date In</B> should not come after <B>Date Out</B>"); } if(!isDateValid(editDateInTst, editDateOutTst)) { errors.addElement("<B>Date In Test</B> should not come after <B>Date Out Test</B>"); } if(errors.size() > 0) { inputErrors.addAll(errors); failedSave++; } else { saveSuccess = testInfo.put(connection, schema); if(saveSuccess.booleanValue()) { String userID = (String)request.getAttribute("userID"); RelTestInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), testInfo.getTestDataID(), RelConstants.ACTION_SAVE); } else { failedSave++; } } } if(failedSave > 0) { saveSuccess = new Boolean(false); } } // refresh stress info and tests list from db String editStressInfoNum = (String) request.getAttribute("editStressInfoNum"); RelStressInfo resultStressInfo = null; if(editStressInfoNum != null && !editStressInfoNum.trim().equals("")) { resultStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfoNum.trim()); resultTestList = RelTestInfo.getTests(connection, schema, editStressInfoNum.trim()); } request.setAttribute("resultStressInfo", resultStressInfo); if(session != null) { session.setAttribute("resultTestList", resultTestList); } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doEditQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editQtpNumber = (String) request.getAttribute("editQtpNumber"); RelQTPMainInfo editMainInfo = null; if(editQtpNumber != null && !editQtpNumber.trim().equals("")) { editMainInfo = RelQTPMainInfo.getInstance(connection, schema, editQtpNumber.trim()); } HttpSession session = request.getSession(true); if(session != null) { session.setAttribute("editMainInfo", editMainInfo); } setQTPDataLists(request, connection, schema); request.setAttribute("editMode", "edit"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doEditTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editTvNum = (String) request.getAttribute("editTvNum"); RelTVInfo editTvInfo = null; HttpSession session = request.getSession(true); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } if(editTvNum != null && !editTvNum.trim().equals("")) { editTvInfo = RelTVInfo.getInstance(connection, schema, editTvNum.trim(), evalNum); } if(session != null) { session.setAttribute("editTvInfo", editTvInfo); } setTVDataLists(request, connection, schema); request.setAttribute("editMode", "edit"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpTVDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doEditStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editStressInfoNum = (String) request.getAttribute("editStressInfoNum"); RelStressInfo editStressInfo = null; if(editStressInfoNum != null && !editStressInfoNum.trim().equals("")) { editStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfoNum.trim()); } HttpSession session = request.getSession(true); if(session != null) { session.setAttribute("editStressInfo", editStressInfo); } setStressDataLists(request, connection, schema); request.setAttribute("editMode", "edit"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doCancelQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); RelQTPMainInfo editMainInfo = (RelQTPMainInfo) session.getAttribute("editMainInfo"); if(editMainInfo != null && editMode != null && editMode.equals("edit")) { RelQTPMainInfo resultMainInfo = RelQTPMainInfo.getInstance(connection, schema, editMainInfo.getEvalNum()); ArrayList resultTVList = RelTVInfo.getTVs(connection, schema, editMainInfo.getEvalNum()); request.setAttribute("resultMainInfo", resultMainInfo); request.setAttribute("resultTVList", resultTVList); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doCancelTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } RelTVInfo editTvInfo = (RelTVInfo) session.getAttribute("editTvInfo"); if(editTvInfo != null) { if(editMode != null && editMode.equals("edit")) { RelTVInfo resultTvInfo = RelTVInfo.getInstance(connection, schema, editTvInfo.getTvNum(), evalNum); ArrayList resultStressList = RelStressInfo.getStresses(connection, schema, editTvInfo.getTvNum(), resultTvInfo.getEvalNum()); request.setAttribute("resultTvInfo", resultTvInfo); request.setAttribute("resultStressList", resultStressList); request.setAttribute("MAIN_SECTION", "qtpTVDataView.jsp"); } else if(editMode != null && editMode.equals("add")) { RelQTPMainInfo resultMainInfo = RelQTPMainInfo.getInstance(connection, schema, editTvInfo.getEvalNum()); ArrayList resultTVList = RelTVInfo.getTVs(connection, schema, editTvInfo.getEvalNum()); request.setAttribute("resultMainInfo", resultMainInfo); request.setAttribute("resultTVList", resultTVList); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); } } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doCancelStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editMode = (String) request.getAttribute("editMode"); HttpSession session = request.getSession(); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } RelStressInfo editStressInfo = (RelStressInfo) session.getAttribute("editStressInfo"); if(editStressInfo != null) { if(editMode != null && editMode.equals("edit")) { RelStressInfo resultStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfo.getStressInfoNum()); ArrayList resultTestList = RelTestInfo.getTests(connection, schema, editStressInfo.getStressInfoNum()); request.setAttribute("resultStressInfo", resultStressInfo); request.setAttribute("resultTestList", resultTestList); request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); } else if(editMode != null && editMode.equals("add")) { RelTVInfo resultTvInfo = RelTVInfo.getInstance(connection, schema, editStressInfo.getTvNum(), evalNum); ArrayList resultStressList = RelStressInfo.getStresses(connection, schema, editStressInfo.getTvNum(), resultTvInfo.getEvalNum()); request.setAttribute("resultTvInfo", resultTvInfo); request.setAttribute("resultStressList", resultStressList); request.setAttribute("MAIN_SECTION", "qtpTVDataView.jsp"); } } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doCancelTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editStressInfoNum = (String) request.getAttribute("editStressInfoNum"); RelStressInfo resultStressInfo = null; ArrayList resultTestList = null; if(editStressInfoNum != null && !editStressInfoNum.trim().equals("")) { resultStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfoNum.trim()); resultTestList = RelTestInfo.getTests(connection, schema, editStressInfoNum.trim()); } request.setAttribute("resultStressInfo", resultStressInfo); HttpSession session = request.getSession(true); if(session != null) { session.setAttribute("resultTestList", resultTestList); } request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doSetStressInfo( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ HttpSession session = request.getSession(); RelStressInfo editStressInfo = null; if(session != null) { editStressInfo = (RelStressInfo) session.getAttribute("editStressInfo"); if(editStressInfo != null) { String editStressCode = (String) request.getAttribute("editStressCode"); String editStressLevel = (String) request.getAttribute("editStressLevel"); String editDCommitted = (String) request.getAttribute("editDCommitted"); String editDReceived = (String) request.getAttribute("editDReceived"); String editStressClass = (String) request.getAttribute("editStressClass"); String editQty0Hr = (String) request.getAttribute("editQty0Hr"); String editProgRej = (String) request.getAttribute("editProgRej"); String editRej0Hr = (String) request.getAttribute("editRej0Hr"); String editDTest0Hr = (String) request.getAttribute("editDTest0Hr"); String editMrb = (String) request.getAttribute("editMrb"); String editEngr = (String) request.getAttribute("editEngr"); String editComment0 = (String) request.getAttribute("editComment0"); String editMethodCond = (String) request.getAttribute("editMethodCond"); String editTemp = (String) request.getAttribute("editTemp"); String editVolt = (String) request.getAttribute("editVolt"); String editVendor = (String) request.getAttribute("editVendor"); String editSpares = (String) request.getAttribute("editSpares"); String editDCompleted = (String) request.getAttribute("editDCompleted"); String editComments = (String) request.getAttribute("editComments"); String editCCode = (String) request.getAttribute("editCCode"); String editCost = (String) request.getAttribute("editCost"); if(editStressCode != null && !editStressCode.trim().equals("")) { editStressInfo.setStressCode(editStressCode.trim()); } if(editStressLevel != null && !editStressLevel.trim().equals("")) { editStressInfo.setStressLevel(new Double(editStressLevel.trim())); } if(editDCommitted != null && !editDCommitted.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDCommitted.trim()); editStressInfo.setDCommitted(new Timestamp(date.getTime())); } if(editDReceived != null && !editDReceived.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDReceived.trim()); editStressInfo.setDReceived(new Timestamp(date.getTime())); } if(editStressClass != null && !editStressClass.trim().equals("")) { editStressInfo.setStressClass(editStressClass.trim()); } if(editQty0Hr != null && !editQty0Hr.trim().equals("")) { editStressInfo.setQty0Hr(new Integer(editQty0Hr.trim())); } if(editProgRej != null && !editProgRej.trim().equals("")) { editStressInfo.setProgRej(new Integer(editProgRej.trim())); } if(editRej0Hr != null && !editRej0Hr.trim().equals("")) { editStressInfo.setRej0Hr(new Integer(editRej0Hr.trim())); } if(editDTest0Hr != null && !editDTest0Hr.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDTest0Hr.trim()); editStressInfo.setDTest0Hr(new Timestamp(date.getTime())); } if(editMrb != null && !editMrb.trim().equals("")) { editStressInfo.setMrb(editMrb.trim()); } if(editEngr != null && !editEngr.trim().equals("")) { editStressInfo.setEngr(editEngr.trim()); } if(editComment0 != null && !editComment0.trim().equals("")) { editStressInfo.setComment0(editComment0.trim()); } if(editMethodCond != null && !editMethodCond.trim().equals("")) { editStressInfo.setMethodCond(editMethodCond.trim()); } if(editTemp != null && !editTemp.trim().equals("")) { editStressInfo.setTemp(new Integer(editTemp.trim())); } if(editVolt != null && !editVolt.trim().equals("")) { editStressInfo.setVolt(new Double(editVolt.trim())); } if(editVendor != null && !editVendor.trim().equals("")) { editStressInfo.setVendor(editVendor.trim()); } if(editSpares != null && !editSpares.trim().equals("")) { editStressInfo.setSpares(new Integer(editSpares.trim())); } if(editDCompleted != null && !editDCompleted.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDCompleted.trim()); editStressInfo.setDCompleted(new Timestamp(date.getTime())); } if(editComments != null && !editComments.trim().equals("")) { editStressInfo.setComments(editComments.trim()); } if(editCCode != null && !editCCode.trim().equals("")) { editStressInfo.setCCode(editCCode.trim()); } if(editCost != null && !editCost.trim().equals("")) { editStressInfo.setCost(new Double(editCost.trim())); } // set applicable stress info based on stress code if(editStressCode != null && !editStressCode.trim().equals("")) { RelStress stress = RelStress.getInstance(connection, schema, editStressCode.trim()); if(stress != null) { editStressInfo.setTemp(stress.getTemp()); editStressInfo.setVolt(stress.getVolt()); editStressInfo.setCost(stress.getCost()); } } } session.setAttribute("editStressInfo", editStressInfo); } setStressDataLists(request, connection, schema); request.setAttribute("editMode", "add"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddNewTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ HttpSession session = request.getSession(true); if(session != null) { String editQtpNumber = (String) request.getAttribute("editQtpNumber"); if(editQtpNumber != null && !editQtpNumber.trim().equals("")) { RelTVInfo editTvInfo = new RelTVInfo(); editTvInfo.setEvalNum(editQtpNumber.trim()); session.setAttribute("editTvInfo", editTvInfo); } } setTVDataLists(request, connection, schema); request.setAttribute("editMode", "add"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpTVDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddNewStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ HttpSession session = request.getSession(true); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } if(session != null) { String editTvNum = (String) request.getAttribute("editTvNum"); if(editTvNum != null && !editTvNum.trim().equals("")) { RelStressInfo editStressInfo = new RelStressInfo(); editStressInfo.setTvNum(editTvNum.trim()); editStressInfo.setEvalNum(evalNum.trim()); editStressInfo.setStressInfoNum(RelStressInfo.getNewStressInfoNum(connection, schema).toString()); session.setAttribute("editStressInfo", editStressInfo); } } setStressDataLists(request, connection, schema); request.setAttribute("editMode", "add"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataEdit.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doAddNewTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editStressInfoNum = (String) request.getAttribute("editStressInfoNum"); RelStressInfo resultStressInfo = null; ArrayList resultTestList = null; ArrayList updatedList = new ArrayList(); // refresh stress info if(editStressInfoNum != null && !editStressInfoNum.trim().equals("")) { resultStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfoNum.trim()); } request.setAttribute("resultStressInfo", resultStressInfo); // update current list HttpSession session = request.getSession(); if(session != null) { resultTestList = (ArrayList) session.getAttribute("resultTestList"); } if(resultTestList != null) { Iterator iter = resultTestList.iterator(); while(iter.hasNext()) { RelTestInfo testInfo = (RelTestInfo) iter.next(); Integer testID = testInfo.getTestID(); String editReadpt = (String) request.getAttribute("editReadpt_" + testID); String editQtyIn = (String) request.getAttribute("editQtyIn_" + testID); String editDateIn = (String) request.getAttribute("editDateIn_" + testID); String editQtyOut = (String) request.getAttribute("editQtyOut_" + testID); String editDateOut = (String) request.getAttribute("editDateOut_" + testID); String editQtyInTst = (String) request.getAttribute("editQtyInTst_" + testID); String editDateInTst = (String) request.getAttribute("editDateInTst_" + testID); String editQtyOutTst = (String) request.getAttribute("editQtyOutTst_" + testID); String editDateOutTst = (String) request.getAttribute("editDateOutTst_" + testID); String editRej = (String) request.getAttribute("editRej_" + testID); String editFA = (String) request.getAttribute("editFA_" + testID); String editDateInFA = (String) request.getAttribute("editDateInFA_" + testID); String editDateOutFA = (String) request.getAttribute("editDateOutFA_" + testID); String editComment = (String) request.getAttribute("editComment_" + testID); if(editReadpt != null && !editReadpt.trim().equals("")) { testInfo.setReadpoint(editReadpt.trim()); } if(editQtyIn != null && !editQtyIn.trim().equals("")) { testInfo.setQtyIn(new Integer(editQtyIn.trim())); } if(editDateIn != null && !editDateIn.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateIn.trim()); testInfo.setDIn(new Timestamp(date.getTime())); } if(editQtyOut != null && !editQtyOut.trim().equals("")) { testInfo.setQtyOut(new Integer(editQtyOut.trim())); } if(editDateOut != null && !editDateOut.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateOut.trim()); testInfo.setDOut(new Timestamp(date.getTime())); } if(editQtyInTst != null && !editQtyInTst.trim().equals("")) { testInfo.setQtyInTst(new Integer(editQtyInTst.trim())); } if(editDateInTst != null && !editDateInTst.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateInTst.trim()); testInfo.setDInTst(new Timestamp(date.getTime())); } if(editQtyOutTst != null && !editQtyOutTst.trim().equals("")) { testInfo.setQtyOutTst(new Integer(editQtyOutTst.trim())); } if(editDateOutTst != null && !editDateOutTst.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateOutTst.trim()); testInfo.setDOutTst(new Timestamp(date.getTime())); } if(editRej != null && !editRej.trim().equals("")) { testInfo.setRej(new Integer(editRej.trim())); } if(editFA != null && !editFA.trim().equals("")) { testInfo.setFa(editFA.trim()); } if(editDateInFA != null && !editDateInFA.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateInFA.trim()); testInfo.setDInFa(new Timestamp(date.getTime())); } if(editDateOutFA != null && !editDateOutFA.trim().equals("")) { SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); java.util.Date date = df.parse(editDateOutFA.trim()); testInfo.setDOutFa(new Timestamp(date.getTime())); } if(editComment != null && !editComment.trim().equals("")) { testInfo.setComments(editComment.trim()); } updatedList.add(testInfo); } resultTestList = updatedList; } // add new test to list if(resultTestList == null) { resultTestList = new ArrayList(); } RelTestInfo newTest = new RelTestInfo(); newTest.setTestID(RelTestInfo.getNewTestID(connection, schema)); newTest.setStressInfoNum(editStressInfoNum.trim()); resultTestList.add(newTest); if(session != null) { session.setAttribute("resultTestList", resultTestList); } request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doDeleteQTP( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String editQtpNumber = (String) request.getAttribute("editQtpNumber"); Boolean deleteSuccess = null; if(editQtpNumber != null && !editQtpNumber.trim().equals("")) { RelQTPMainInfo editMainInfo = RelQTPMainInfo.getInstance(connection, schema, editQtpNumber.trim()); if(editMainInfo != null) { deleteSuccess = RelQTPMainInfo.deleteQTPMainInfo(connection, schema, editQtpNumber.trim()); if(deleteSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelQTPMainInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), editMainInfo.getRelQtpDataID(), RelConstants.ACTION_DELETE); } } } request.setAttribute("deleteSuccess", deleteSuccess); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doDeleteTV( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String[] deleteTVNums = (String[]) request.getParameterValues("removeTvNum"); Boolean deleteSuccess = null; int failedDelete = 0; HttpSession session = request.getSession(); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } if(deleteTVNums != null && deleteTVNums.length > 0) { deleteSuccess = new Boolean(true); for(int x = 0; x < deleteTVNums.length; x++) { if(!deleteTVNums[x].trim().equals("")) { String tvNum = deleteTVNums[x].trim(); RelTVInfo tvInfo = RelTVInfo.getInstance(connection, schema, tvNum, evalNum); if(tvInfo != null) { deleteSuccess = RelTVInfo.deleteTVInfo(connection, schema, tvNum, tvInfo.getEvalNum()); if(deleteSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelTVInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), tvInfo.getTvDataID(), RelConstants.ACTION_DELETE); } else { failedDelete++; } } } } if(failedDelete > 0) { deleteSuccess = new Boolean(false); } } request.setAttribute("deleteSuccess", deleteSuccess); // refresh qtp info and tv list from db String editQtpNumber = (String) request.getAttribute("editQtpNumber"); RelQTPMainInfo resultMainInfo = null; ArrayList resultTVList = null; if(editQtpNumber != null && !editQtpNumber.trim().equals("")) { resultMainInfo = RelQTPMainInfo.getInstance(connection, schema, editQtpNumber.trim()); resultTVList = RelTVInfo.getTVs(connection, schema, editQtpNumber.trim()); } request.setAttribute("resultMainInfo", resultMainInfo); request.setAttribute("resultTVList", resultTVList); request.setAttribute("MAIN_SECTION", "qtpDataView.jsp"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doDeleteStress( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String[] deleteStressInfoNums = (String[]) request.getParameterValues("removeStressInfoNum"); Boolean deleteSuccess = null; int failedDelete = 0; if(deleteStressInfoNums != null && deleteStressInfoNums.length > 0) { deleteSuccess = new Boolean(true); for(int x = 0; x < deleteStressInfoNums.length; x++) { if(!deleteStressInfoNums[x].trim().equals("")) { String stressInfoNum = deleteStressInfoNums[x].trim(); RelStressInfo editStressInfo = RelStressInfo.getInstance(connection, schema, stressInfoNum); if(editStressInfo != null) { deleteSuccess = RelStressInfo.deleteStressInfo(connection, schema, stressInfoNum); if(deleteSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelStressInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), editStressInfo.getStressDataID(), RelConstants.ACTION_DELETE); } else { failedDelete++; } } } } if(failedDelete > 0) { deleteSuccess = new Boolean(false); } } request.setAttribute("deleteSuccess", deleteSuccess); // refresh tv info and stress list from DB String editTvNum = (String) request.getAttribute("editTvNum"); RelTVInfo resultTvInfo = null; ArrayList resultStressList = null; HttpSession session = request.getSession(); String evalNum = null; if(session != null) { evalNum = (String) session.getAttribute("evalNum"); } if(editTvNum != null && !editTvNum.trim().equals("")) { resultTvInfo = RelTVInfo.getInstance(connection, schema, editTvNum.trim(), evalNum); resultStressList = RelStressInfo.getStresses(connection, schema, editTvNum.trim(), resultTvInfo.getEvalNum()); } request.setAttribute("resultTvInfo", resultTvInfo); request.setAttribute("resultStressList", resultStressList); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); request.setAttribute("MAIN_SECTION", "qtpTVDataView.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } protected void doDeleteTest( HttpServletRequest request, HttpServletResponse response, Connection connection, String schema) throws Exception{ String[] deleteTestIDs = (String[]) request.getParameterValues("removeTestID"); Boolean deleteSuccess = null; int failedDelete = 0; if(deleteTestIDs != null && deleteTestIDs.length > 0) { deleteSuccess = new Boolean(true); for(int x = 0; x < deleteTestIDs.length; x++) { if(!deleteTestIDs[x].trim().equals("")) { Integer testID = new Integer(deleteTestIDs[x].trim()); RelTestInfo editTestInfo = RelTestInfo.getInstance(connection, schema, testID); if(editTestInfo != null) { deleteSuccess = RelTestInfo.deleteTestInfo(connection, schema, testID); if(deleteSuccess.booleanValue()) { String userID = (String) request.getAttribute("userID"); RelTestInfo.logDBTransaction(connection, schema, userID, SQLUtil.sqlGetTimestamp(), editTestInfo.getTestDataID(), RelConstants.ACTION_DELETE); } else { failedDelete++; } } } } if(failedDelete > 0) { deleteSuccess = new Boolean(false); } } request.setAttribute("deleteSuccess", deleteSuccess); // refresh stress info and tests list from db String editStressInfoNum = (String) request.getAttribute("editStressInfoNum"); RelStressInfo resultStressInfo = null; ArrayList resultTestList = null; if(editStressInfoNum != null && !editStressInfoNum.trim().equals("")) { resultStressInfo = RelStressInfo.getInstance(connection, schema, editStressInfoNum.trim()); resultTestList = RelTestInfo.getTests(connection, schema, editStressInfoNum.trim()); } request.setAttribute("resultStressInfo", resultStressInfo); HttpSession session = request.getSession(true); if(session != null) { session.setAttribute("resultTestList", resultTestList); } request.setAttribute("MAIN_SECTION", "qtpStressDataView.jsp"); request.setAttribute("TOP_SECTION", "qtpSearch.jsp"); showPage(request, connection, schema, "admin/rel/qtpTemplate.jsp"); } private void setQTPDataLists( HttpServletRequest request, Connection connection, String schema) throws Exception{ ArrayList allRelSitesList = RelSite.getAllSites(connection, schema); ArrayList allDivisionsList = RelDivision.getAllDivisions(connection, schema); ArrayList allBizUnitsList = RelBizUnit.getAllBizUnits(connection, schema); ArrayList allFabSitesList = RelFabSite.getAllFabSites(connection, schema); ArrayList allStatusList = RelStatus.getAllStatus(connection, schema); ArrayList allQTPCategoriesList = RelQTPCategory.getAllQTPCategories(connection, schema); ArrayList allMoistureLevelsList = RelMoistureLevel.getAllMoistureLevels(connection, schema); ArrayList allAssySitesList = RelAssySite.getAllAssySites(connection, schema); ArrayList allSolderReflowTempsList = RelSolderReflowTemp.getAllSolderReflowTemps(connection, schema); request.setAttribute("allRelSitesList", allRelSitesList); request.setAttribute("allDivisionsList", allDivisionsList); request.setAttribute("allBizUnitsList", allBizUnitsList); request.setAttribute("allFabSitesList", allFabSitesList); request.setAttribute("allStatusList", allStatusList); request.setAttribute("allQTPCategoriesList", allQTPCategoriesList); request.setAttribute("allMoistureLevelsList", allMoistureLevelsList); request.setAttribute("allAssySitesList", allAssySitesList); request.setAttribute("allSolderReflowTempsList", allSolderReflowTempsList); } private void setTVDataLists( HttpServletRequest request, Connection connection, String schema) throws Exception{ ArrayList allTechnologiesList = RelTechnology.getAllTechnologies(connection, schema); ArrayList allFamiliesList = RelFamily.getAllFamilies(connection, schema); request.setAttribute("allFamiliesList", allFamiliesList); request.setAttribute("allTechnologiesList", allTechnologiesList); } private void setStressDataLists( HttpServletRequest request, Connection connection, String schema) throws Exception{ ArrayList allStressCodesList = RelStress.getAllRelStressCodes(connection, schema); request.setAttribute("allStressCodesList", allStressCodesList); } private void setCustomSearchLists( HttpServletRequest request, Connection connection, String schema) throws Exception{ String[] searchFields = RelQTPMainInfo.SEARCH_FIELDS; String[] types = RelQTPMainInfo.FIELD_TYPES; request.setAttribute("searchFields", searchFields); request.setAttribute("types", types); String[] searchFieldsTV = RelTVInfo.SEARCH_FIELDS; String[] typesTV = RelTVInfo.FIELD_TYPES; request.setAttribute("searchFieldsTV", searchFieldsTV); request.setAttribute("typesTV", typesTV); String[] searchFieldsStress = RelStressInfo.SEARCH_FIELDS; String[] typesStress = RelStressInfo.FIELD_TYPES; request.setAttribute("searchFieldsStress", searchFieldsStress); request.setAttribute("typesStress", typesStress); String[] searchFieldsTest = RelTestInfo.SEARCH_FIELDS; String[] typesTest = RelTestInfo.FIELD_TYPES; request.setAttribute("searchFieldsTest", searchFieldsTest); request.setAttribute("typesTest", typesTest); } private void setSearchLists( HttpServletRequest request, Connection connection, String schema) throws Exception{ ArrayList allRelSitesList = RelSite.getAllSites(connection, schema); ArrayList allDivisionsList = RelDivision.getAllDivisions(connection, schema); ArrayList allBizUnitsList = RelBizUnit.getAllBizUnits(connection, schema); ArrayList allStatusList = RelStatus.getAllStatus(connection, schema); ArrayList allQTPCategoriesList = RelQTPCategory.getAllQTPCategories(connection, schema); request.setAttribute("allRelSitesList", allRelSitesList); request.setAttribute("allDivisionsList", allDivisionsList); request.setAttribute("allBizUnitsList", allBizUnitsList); request.setAttribute("allStatusList", allStatusList); request.setAttribute("allQTPCategoriesList", allQTPCategoriesList); } private void updateCustomSearchInputs( HttpServletRequest request, Connection connection, String schema) throws Exception{ HttpSession session = request.getSession(); ArrayList rulesList = null; String equation = null; ArrayList orderList = null; ArrayList rulesListTV = null; String equationTV = null; ArrayList orderListTV = null; ArrayList rulesListStress = null; String equationStress = null; ArrayList orderListStress = null; ArrayList rulesListTest = null; String equationTest = null; ArrayList orderListTest = null; if(session != null) { // Main info filters rulesList = (ArrayList) session.getAttribute("rulesList"); if(rulesList != null) { Iterator iter = rulesList.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String field = (String) request.getAttribute("field_" + ruleNum); String operator = (String) request.getAttribute("operator_" + ruleNum); String value = (String) request.getAttribute("value_" + ruleNum); rule.setField(field); rule.setOperator(operator); rule.setValue(value); ruleNum++; } } equation = (String) request.getAttribute("equation"); orderList = (ArrayList) session.getAttribute("orderList"); ArrayList updatedOrderList = new ArrayList(); if(orderList != null) { Iterator iter = orderList.iterator(); int orderNum = 0; while(iter.hasNext()) { String order = (String) request.getAttribute("order_" + orderNum); updatedOrderList.add(order); orderNum++; iter.next(); } } session.setAttribute("rulesList", rulesList); session.setAttribute("equation", equation); session.setAttribute("orderList", updatedOrderList); // tv filters rulesListTV = (ArrayList) session.getAttribute("rulesListTV"); if(rulesListTV != null) { Iterator iter = rulesListTV.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldTV = (String) request.getAttribute("fieldTV_" + ruleNum); String operatorTV = (String) request.getAttribute("operatorTV_" + ruleNum); String valueTV = (String) request.getAttribute("valueTV_" + ruleNum); rule.setField(fieldTV); rule.setOperator(operatorTV); rule.setValue(valueTV); ruleNum++; } } equationTV = (String) request.getAttribute("equationTV"); orderListTV = (ArrayList) session.getAttribute("orderListTV"); ArrayList updatedOrderListTV = new ArrayList(); if(orderListTV != null) { Iterator iter = orderListTV.iterator(); int orderNum = 0; while(iter.hasNext()) { String orderTV = (String) request.getAttribute("orderTV_" + orderNum); updatedOrderListTV.add(orderTV); orderNum++; iter.next(); } } session.setAttribute("rulesListTV", rulesListTV); session.setAttribute("equationTV", equationTV); session.setAttribute("orderListTV", updatedOrderListTV); // stress info rulesListStress = (ArrayList) session.getAttribute("rulesListStress"); if(rulesListStress != null) { Iterator iter = rulesListStress.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldStress = (String) request.getAttribute("fieldStress_" + ruleNum); String operatorStress = (String) request.getAttribute("operatorStress_" + ruleNum); String valueStress = (String) request.getAttribute("valueStress_" + ruleNum); rule.setField(fieldStress); rule.setOperator(operatorStress); rule.setValue(valueStress); ruleNum++; } } equationStress = (String) request.getAttribute("equationStress"); orderListStress = (ArrayList) session.getAttribute("orderListStress"); ArrayList updatedOrderListStress = new ArrayList(); if(orderListStress != null) { Iterator iter = orderListStress.iterator(); int orderNum = 0; while(iter.hasNext()) { String orderStress = (String) request.getAttribute("orderStress_" + orderNum); updatedOrderListStress.add(orderStress); orderNum++; iter.next(); } } session.setAttribute("rulesListStress", rulesListStress); session.setAttribute("equationStress", equationStress); session.setAttribute("orderListStress", updatedOrderListStress); // test info rulesListTest = (ArrayList) session.getAttribute("rulesListTest"); if(rulesListTest != null) { Iterator iter = rulesListTest.iterator(); int ruleNum = 0; while(iter.hasNext()) { RelCustomSearchRule rule = (RelCustomSearchRule) iter.next(); String fieldTest = (String) request.getAttribute("fieldTest_" + ruleNum); String operatorTest = (String) request.getAttribute("operatorTest_" + ruleNum); String valueTest = (String) request.getAttribute("valueTest_" + ruleNum); rule.setField(fieldTest); rule.setOperator(operatorTest); rule.setValue(valueTest); ruleNum++; } } equationTest = (String) request.getAttribute("equationTest"); orderListTest = (ArrayList) session.getAttribute("orderListTest"); ArrayList updatedOrderListTest = new ArrayList(); if(orderListTest != null) { Iterator iter = orderListTest.iterator(); int orderNum = 0; while(iter.hasNext()) { String orderTest = (String) request.getAttribute("orderTest_" + orderNum); updatedOrderListTest.add(orderTest); orderNum++; iter.next(); } } session.setAttribute("rulesListTest", rulesListTest); session.setAttribute("equationTest", equationTest); session.setAttribute("orderListTest", updatedOrderListTest); } } }