<%-- Document : report_list.jsp Created on : 2014. 8. 19, 오후 5:12:19 Author : choyoungjun * 업무포탈 연계포틀릿 설정방법 1. 업무포탈에 관리자로 로그인 2. 우측 상단 [관리자] 클릭 -> [포털빌더] 클릭 3. 좌측 메뉴 [포틀릿] 클릭 4. 포틀릿 찾기 (2014.08.20 기준 포틀릿명이 "자료집계목록" 으로 저장되어있음) --%> <%@page import="java.util.Date"%> <%@page import="java.util.Calendar"%> <%@page import="java.util.List"%> <%@page import="java.util.Map"%> <%@page import="java.util.HashMap"%> <%@page import="java.text.SimpleDateFormat"%> <%@page import="javax.jdo.Transaction"%> <%@page import="kr.co.kihyun.moumi.Moumi"%> <%@page import="kr.co.kihyun.lang.Encoder"%> <%@page import="kr.co.kihyun.lang.MInteger"%> <%@page import="kr.co.kihyun.lang.MString"%> <%@page import="kr.co.kihyun.beans.entity.MUser"%> <%@page import="kr.co.kihyun.beans.entity.*"%> <%@page import="kr.co.kihyun.beans.entity.TotReportProcess"%> <%@page import="kr.co.kihyun.beans.entity.util.PMF"%> <%@page import="kr.co.kihyun.beans.entity.util.MPersistenceManager"%> <%@page import="kr.co.kihyun.beans.user.HttpSSOLogin"%> <%@page import="kr.co.kihyun.service.vo.TotReportVO"%> <%@page import="kr.co.kihyun.service.TotReportService"%> <%@page contentType="text/html" pageEncoding="UTF-8"%> <%@ include file="/totsys/common/inc/sec/secure.inc.jsp"%> <% String currentServerName = request.getServerName(); //System.out.println("=====> currentServerName : " + currentServerName); String usID = (String) session.getAttribute("SSO_USER_ID"); String dpID = HttpSSOLogin.getDeptID(request); if (MString.isNull(usID)) { if (MString.isNull(HttpSSOLogin.getLoginID(request))) { out.println("
※ 통합로그인(SSO)이 되지 않아 내용을 표시할 수 없습니다.
"); return; } else { usID = HttpSSOLogin.getLoginID(request); } } //System.out.println("=====> usID : " + usID); MPersistenceManager pm = new MPersistenceManager(PMF.get().getPersistenceManager()); Transaction tx = pm.currentTransaction(); try { /********** Parameter **********/ String strPage = clearXSS(request.getParameter("strPage"),""); String findOption = clearXSS(request.getParameter("findOption"),null); String findWord = clearXSS(Encoder.toJava(request.getParameter("findWord")),null); //String method = clearXSS(request.getParameter("method"),""); //if(method.equals("GET")) findWord = URLDecoder.decode(MString.checkNull(request.getParameter("findWord")), "UTF-8"); //String uri = URLEncoder.encode("report_list.jsp?findOption="+MString.checkNull(findOption),"UTF-8")+"&method=GET"; int docNameLengthLimit = 30; // 제목(자료명) 길이 제한 tx.begin(); String tmpMagam; int pageSize=0; int currentPage=0; int currentPageSetUp=0; int recordSize=7; // 출력 레코드 갯수 if(strPage == null || strPage.length()<=0) { currentPage = 1; } else if(strPage.equals("null")) { currentPage = 1; } else { try { currentPage=Integer.parseInt(strPage); } catch(NumberFormatException ex) { System.out.println(ex); } } //====================================================================== MUser mUser = pm.getObjectById(MUser.class, usID); SysAuth sysAuth = mUser.getSysAuth(); TotReportService reportService = new TotReportService(pm); //검색조건파라미터(연계포틀릿에서는 검색 기능이 제외된다.) Map params = new HashMap(); params.put("findOption", findOption); params.put("filterValue", findWord); params.put("userId", usID); params.put("deptId", dpID); params.put("sysAuth", mUser.getSysAuth()); //검색메인쿼리와 레코드갯수조회쿼리를 생성 후 멤버변수로 저장 reportService.createAcceptReportListSearchQuery(params); //레코드갯수조회쿼리를 실행하여 레코드갯수를 구함 int count = reportService.getCountFromMainQuery(); if((count%recordSize) == 0) { pageSize = (int)(count/recordSize); } else { pageSize = (int)(count/recordSize)+1; } if( currentPage > pageSize ) currentPage = pageSize; currentPageSetUp = (int)(currentPage/10)*10; if (currentPage%10 == 0) { currentPageSetUp-=10; } int startNo = (currentPage - 1) * recordSize + 1; int endNo = currentPage * recordSize; List list = null; //검색목록조회쿼리 실행 if( count > 0 ) { //페이징처리를 위한 추가파라미터 설정 reportService.getParams().put("startNo", startNo); reportService.getParams().put("endNo", endNo); //검색메인쿼리를 페이징처리를 위한 쿼리로 변환 reportService.convertToPagenatingQuery(); //만족하는 레코드가 존재하면 조회 list = reportService.executeQuery(TotReportVO.class); } //====================================================================== tx.rollback(); SimpleDateFormat ymdFormat = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Calendar cal = Calendar.getInstance(); String nowTime = ""; nowTime = sdf.format(cal.getTime()); Date nowDate = sdf.parse(nowTime); %> 업무포탈 메인페이지 연계포틀릿
<% if( count > 0 ) { int listCount = list.size(); for(int i = 0; i < listCount; i++){ TotReportVO reportVO = (TotReportVO)list.get(i); String tmpMoumiAcptLimitStrategy = Integer.toString(reportVO.getSubmitLimitCnt()); String tmp2= null; String tstr = "시 종료"; String tcnt; tcnt = "("+Integer.toString(reportVO.getSubmitLimitCnt())+"개 기관)"; if(tmpMoumiAcptLimitStrategy.equals("0")){ tmp2 = new SimpleDateFormat("yyyy-MM-dd HH").format(reportVO.getEndDate()); tcnt = ""; }else{ tmp2 = Moumi.getMessageBundle().getString("moumi.message.tot_doc.endBySubmitTotal"); tstr = ""; } if(tmp2.contains("9999-12-30")) tmp2=Moumi.getMessageBundle().getString("moumi.message.tot_doc.endManually"); if(tmp2.equals(Moumi.getMessageBundle().getString("moumi.message.tot_doc.endManually"))) tstr = ""; tmpMagam = tmp2; %> <%-- --%> <%if(reportVO.getPrss() == 3){%> <%}else if(reportVO.getPrss() == 0){%> <%}%> <% } //end of for list } //end of if( count > 0) else { %> <% } %>
자료명 요청 기관/부서 집계요청자 시작일 마감일 비고
<%=MString.checkNull(reportVO.getExecCode())%> [자료집계] <%= MString.getEllipsis(reportVO.getDocName(), docNameLengthLimit) %> [자료집계] <%= MString.getEllipsis(reportVO.getDocName(), docNameLengthLimit) %> <%= MString.checkNull(reportVO.getDeptName()) %> <%= MString.checkNull(reportVO.getDocOwnerName()) %> <%=ymdFormat.format(reportVO.getStartDate())%> <% out.write(tmp2+tstr+tcnt); %> <%if(reportVO.getDownDocId() == 0){%> <%if(reportVO.getPrss() == 3){%> <%=TotReportProcess.RETURN %> <%}%> <%}else{%> <%if(reportVO.getPrss() == 3){%> <%=TotReportProcess.RETURN %> <%}%> <%}%>
접수된 자료가 없습니다.
<% } catch(Exception ex) { ex.printStackTrace(); out.println(kr.co.kihyun.text.html.ServletUtil.getJavaScript("location='/servlet/kr.co.kihyun.beans.user.HttpSSOLogin?mode=logout';")); } finally { if(tx.isActive()) { tx.rollback(); } pm.close(); } %>