private static String getCommaseparatedStringFromList(List controllIdList) { StringBuilder result = new StringBuilder(); for (int i = 0; i < controllIdList.size(); i++) { Map map = (Map) controllIdList.get(i); if (map.get("control_ids") != null) { result.append(map.get("control_ids")); result.append(","); } } return result.length() > 0 ? result.substring(0, result.length() - 1) : ""; }
/** * Controller to get control list of transaction type * * @param request * @param model * @return */ @RequestMapping(value = "/icga/InternalCtrlGapAnalysisAC.html", method = RequestMethod.GET) public String getInternalControlGapAC(HttpServletRequest request, Model model) { List thirdPartyTransactionControlList = new ArrayList(); List generalLedgerTransactionControlList = new ArrayList(); List customerTransactionControlList = new ArrayList(); logger.debug("Existing controls start."); try { thirdPartyTransactionControlList = adminService.getControlListByTransactionType( TransactionType.THIRD_PARTY_TRANSACTION.getValue()); logger.debug( "Third Party Transaction Control list size = " + thirdPartyTransactionControlList.size()); generalLedgerTransactionControlList = adminService.getControlListByTransactionType(TransactionType.GENERAL_LEDGER.getValue()); logger.debug( "General Ledger Transaction Control list size = " + generalLedgerTransactionControlList.size()); customerTransactionControlList = adminService.getControlListByTransactionType( TransactionType.CUSTOMER_TRANSACTION.getValue()); logger.debug( "Customer Transaction Control list size = " + customerTransactionControlList.size()); } catch (Exception ex) { logger.debug("CERROR:: Internal Control Gap Analysis " + ex); } model.addAttribute("thirdPartyTransactionControlList", thirdPartyTransactionControlList); model.addAttribute("generalLedgerTransactionControlList", generalLedgerTransactionControlList); model.addAttribute("customerTransactionControlList", customerTransactionControlList); model.addAttribute("mainTabId", Utils.getMessageBundlePropertyValue("mainTab.icga")); model.addAttribute( "subTabId", Utils.getMessageBundlePropertyValue("subTabId.analyzeByControls")); adminService.addNode( Utils.getMessageBundlePropertyValue("landingPage.analyzeByControls"), 2, request); return "common/InternalCtrlGapAnalysisAC"; }
private List getHederAndValueOfPersonInfo(List infoList) throws ParseException { List headerAndValueList = new ArrayList(); for (int i = 0; i < infoList.size(); i++) { Map map = (Map) infoList.get(i); Set set = map.keySet(); for (Object s : set) { if (map.get(s) != null && !Utils.isEmpty(map.get(s).toString().trim()) && !("id").equals(s)) { Map header = new HashMap(); header.put("header", WordUtils.capitalize(s.toString().replace("_", " "))); // if(Utils.isValidXlsStrToDate(map.get(s).toString())) // header.put("value",Utils.getXlsDateToString(map.get(s).toString())); // else header.put("value", map.get(s).toString()); headerAndValueList.add(header); } } } return headerAndValueList; }
/** * control list with applied in no of transaction * * @param request * @return */ @RequestMapping(value = "/icga/getJASONforExistingControlList.html", method = RequestMethod.POST) public @ResponseBody JasonBean getAssignmentList(HttpServletRequest request) { logger.debug("Control List Controller "); String page = request.getParameter("page") != null ? request.getParameter("page") : "1"; String rp = request.getParameter("rp") != null ? request.getParameter("rp") : "10"; String sortname = request.getParameter("sortname") != null ? request.getParameter("sortname") : "projectName"; String sortorder = request.getParameter("sortorder") != null ? request.getParameter("sortorder") : "desc"; String query = request.getParameter("query") != null ? request.getParameter("query") : "false"; String qtype = request.getParameter("qtype") != null ? request.getParameter("qtype") : "false"; String controlIds = request.getParameter("controlIds") != null ? request.getParameter("controlIds") : "0"; String tableName = request.getParameter("tableName") != null ? request.getParameter("tableName") : ""; String controlIdsListAsString = ""; JasonBean jasonData = new JasonBean(); List dbColumnHeaderList = new ArrayList(); int totalControl = 0; List controlList = new ArrayList(); List<Cell> entry = new ArrayList<Cell>(); List allControlList = new ArrayList<Cell>(); Map<String, Integer> countMap = new TreeMap<String, Integer>(); try { String partSql = !"0".equals(controlIds) ? InternalControlGapAnalysisController.getStringForComparingControls(controlIds) : ""; allControlList = adminJdbcService.getControlIdList(controlIds, partSql); controlIdsListAsString = getCommaseparatedStringFromList(allControlList); String[] controllIdsArray = !"0".equals(controlIds) ? getUsedControlsByControlIds(controlIds, controlIdsListAsString.split(",")) : controlIdsListAsString.split(","); countMap = countStringOccurences(controllIdsArray, adminJdbcService); if (countMap != null && countMap.size() > 0) { logger.debug("AMLOG:: countMap size: " + countMap.size()); jasonData.setPage(Utils.parseInteger(page)); for (String string : countMap.keySet()) { Map map = new HashMap(); Long controlId = !Utils.isEmpty(string) ? Long.parseLong(string) : 0; logger.debug("AMLOG:: controlId: " + controlId); // Control control = new Control(); Cell cell = new Cell(); Control control = controlId > 0 ? (Control) adminService.loadEntityById(controlId, Constants.CONTROL) : new Control(); /*control.setId(controlId); control.setName(controlName);*/ control.setTotalUsed(countMap.get(string)); cell.setCell(control); entry.add(cell); map.put("control_name", control.getName()); map.put("transaction_type", control.getTransactionType()); map.put("total", countMap.get(string)); controlList.add(map); } int totalItem = controlList != null ? controlList.size() : 0; Map mapForHeader = new HashMap(); mapForHeader.put( "name", "control_name"); // key=flexigrid parameter name, value = dbField Name mapForHeader.put("transactionType", "transaction_type"); mapForHeader.put("totalUsed", "total"); dbColumnHeaderList.add(mapForHeader); request.getSession().setAttribute(tableName, dbColumnHeaderList); jasonData.setRows(entry); jasonData.setTotal(totalItem); jasonData.setDbColumnHeader(dbColumnHeaderList); if ("max".equals(rp)) { logger.debug("SMN LOG: custom controlList size=" + controlList.size()); TransactionSearchController.setTotalListSizeAndListInSession( totalItem, controlList, request); } } } catch (Exception ex) { logger.debug("CERROR: Real Time Project exception : " + ex); } return jasonData; }
/** * control list with applied in no of Project * * @param request * @return */ @RequestMapping( value = "/icga/getJASONforProjectWiseControlList.html", method = RequestMethod.POST) public @ResponseBody JasonBean getProjectWiseControlCountList(HttpServletRequest request) { logger.debug("Project Wise Control List Controller "); String page = request.getParameter("page") != null ? request.getParameter("page") : "1"; String rp = request.getParameter("rp") != null ? request.getParameter("rp") : "10"; String sortname = request.getParameter("sortname") != null ? request.getParameter("sortname") : "projectName"; String sortorder = request.getParameter("sortorder") != null ? request.getParameter("sortorder") : "desc"; String query = request.getParameter("query") != null ? request.getParameter("query") : "false"; String qtype = request.getParameter("qtype") != null ? request.getParameter("qtype") : "false"; String controlIdsListAsString = request.getParameter("controlId") != null ? request.getParameter("controlId") : ""; String tableName = request.getParameter("tableName") != null ? request.getParameter("tableName") : ""; List dbColumnList = TransactionSearchController.getDbColumnHeaderList(request, tableName); sortname = dbColumnList != null ? RealTimeMonitoringController.getDbColumnNameByRef(dbColumnList, sortname) : null; logger.debug("SMN: controlIdsListAsString=" + controlIdsListAsString); List dbColumnHeaderList = new ArrayList(); JasonBean jasonData = new JasonBean(); int totalItems = 0; List<Cell> entry = new ArrayList<Cell>(); List trxSearchList = new ArrayList<Control>(); GlobalTransactionSearch globalTransactionSearch = new GlobalTransactionSearch(); try { totalItems = adminJdbcService.getProjectWiseCountByControlIds( controlIdsListAsString, getStringForComparingControls(controlIdsListAsString), qtype, query, sortname, sortorder); trxSearchList = adminJdbcService.getProjectWiseCountListByControlIds( controlIdsListAsString, getStringForComparingControls(controlIdsListAsString), Utils.parseInteger(page), "max".equals(rp) ? totalItems : Utils.parseInteger(rp), qtype, query, sortname, sortorder); logger.debug("TOTAL count---" + totalItems + " page=" + page + " rp=" + rp); if ("max".equals(rp)) { TransactionSearchController.setTotalListSizeAndListInSession( totalItems, trxSearchList, request); jasonData.setTotal(totalItems); } else { if (trxSearchList != null) { int count = 0; logger.debug("trxSearchList size=" + trxSearchList.size()); jasonData.setPage(Utils.parseInteger(page)); for (Object obj : trxSearchList) { RealTimeProject realTimeProject = new RealTimeProject(); Cell cell = new Cell(); Map map = (Map) obj; realTimeProject.setProjectName( map.get("project") != null ? map.get("project").toString() : ""); realTimeProject.setTransactionIds( map.get("transaction_ids") != null ? map.get("transaction_ids").toString() : ""); realTimeProject.setTotal(map.get("total") != null ? map.get("total").toString() : ""); realTimeProject.setProjectType( map.get("projectType") != null ? map.get("projectType").toString() : ""); realTimeProject.setProjectId( map.get("projectId") != null ? map.get("projectId").toString() : ""); cell.setId(count++); cell.setCell(realTimeProject); entry.add(cell); } Map mapForHeader = new HashMap(); mapForHeader.put( "projectName", "project"); // key=flexigrid parameter name, value = dbField Name mapForHeader.put("transactionIds", "transaction_ids"); mapForHeader.put("total", "total"); mapForHeader.put("projectId", "projectId"); mapForHeader.put("projectType", "projectType"); dbColumnHeaderList.add(mapForHeader); request.getSession().setAttribute(tableName, dbColumnHeaderList); jasonData.setRows(entry); jasonData.setTotal(totalItems); jasonData.setDbColumnHeader(dbColumnHeaderList); } else { logger.debug("No Transaction Search List Found"); } } } catch (Exception ex) { logger.debug("CERROR:Project Wise Control Exception : " + ex); } return jasonData; }
private Map getFirstProjectTransactionMap(List proactiveTransactionList) { return (proactiveTransactionList != null && proactiveTransactionList.size() > 0) ? (Map) proactiveTransactionList.get(0) : new HashMap(); }