306 lines
14 KiB
Plaintext
306 lines
14 KiB
Plaintext
<%--
|
|
Class Name : EgovConectStats.jsp
|
|
Description : 접근로그 통계화면
|
|
Modification Information
|
|
|
|
수정일 수정자 수정내용
|
|
------- -------- ---------------------------
|
|
2009.03.23 박지욱 최초 생성
|
|
2011.08.31 JJY 경량환경 버전 생성
|
|
|
|
author : 공통서비스 개발팀 박지욱
|
|
since : 2009.03.23
|
|
--%>
|
|
<%@ page contentType="text/html; charset=utf-8"%>
|
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
|
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Language" content="ko" >
|
|
<title>접속통계 조회</title>
|
|
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js' />"></script>
|
|
<script type="text/javaScript" language="javascript">
|
|
$(document).ready(function() {
|
|
fnInitAll();
|
|
});
|
|
/* ********************************************************
|
|
* 기간구분 변경
|
|
******************************************************** */
|
|
function fnChangePdKind(){
|
|
var v_pdKind = document.getElementById("PD");
|
|
document.listForm.pdKind.value = v_pdKind.options[v_pdKind.selectedIndex].value;
|
|
}
|
|
/* ********************************************************
|
|
* 통계구분 변경
|
|
******************************************************** */
|
|
function fnChangeStsKind(){
|
|
var v_statsKind = document.getElementById("STKIND");
|
|
document.listForm.statsKind.value = v_statsKind.options[v_statsKind.selectedIndex].value;
|
|
}
|
|
|
|
/* ********************************************************
|
|
* 개인별 검색어 변경
|
|
******************************************************** */
|
|
function fnChangePerson(){
|
|
document.listForm.detailStatsKind.value = document.listForm.person.value;
|
|
}
|
|
/*********************************************************
|
|
* 조회 처리
|
|
*********************************************************/
|
|
function fnSearch(){
|
|
var fromDate = document.listForm.fromDate.value;
|
|
var toDate = document.listForm.toDate.value;
|
|
var pdKind = document.listForm.pdKind.value;
|
|
var statsKind = document.listForm.statsKind.value;
|
|
var detailStatsKind = document.listForm.detailStatsKind.value;
|
|
|
|
if (fromDate == "") {
|
|
alert("기간 시작일자를 입력하세요");
|
|
return;
|
|
} else if (toDate == "") {
|
|
alert("기간 종료일자를 입력하세요");
|
|
return;
|
|
} else if (pdKind == "") {
|
|
alert("기간 구분을 선택하세요");
|
|
return;
|
|
} else if (statsKind == "") {
|
|
alert("통계 구분을 선택하세요");
|
|
return;
|
|
}
|
|
|
|
linkPage(1);
|
|
/* var searchForm =document.searchForm ;
|
|
searchForm.fromDate.value = fromDate ;
|
|
searchForm.toDate.value = toDate ;
|
|
searchForm.pdKind.value = pdKind ;
|
|
searchForm.statsKind.value = statsKind ;
|
|
searchForm.detailStatsKind.value = detailStatsKind ;
|
|
searchForm.submit(); */
|
|
//document.listForm.action = "<c:url value='/sts/cst/selectConectStats.do'/>";
|
|
//document.listForm.submit();
|
|
}
|
|
|
|
function linkPage(pageNo){
|
|
var searchForm =document.searchForm ;
|
|
searchForm.pageIndex.value = pageNo;
|
|
searchForm.fromDate.value = $('#fromDate').val() ;
|
|
searchForm.toDate.value = $('#toDate').val() ;
|
|
searchForm.pdKind.value = $('#pdKind').val() ;
|
|
searchForm.statsKind.value = $('#statsKind').val() ;
|
|
searchForm.detailStatsKind.value = $('#detailStatsKind').val() ;
|
|
searchForm.userAt.value = $('#userAt').val() ;
|
|
searchForm.submit();
|
|
}
|
|
|
|
|
|
/* ********************************************************
|
|
* 초기화
|
|
******************************************************** */
|
|
function fnInitAll(){
|
|
|
|
// 시작일자, 종료일자
|
|
if (document.listForm.fromDate.value == "" && document.listForm.toDate.value == "") {
|
|
var now = new Date();
|
|
var year= now.getFullYear();
|
|
var mon = (now.getMonth()+1)>9 ? ''+(now.getMonth()+1) : '0'+(now.getMonth()+1);
|
|
var day = now.getDate()>9 ? ''+now.getDate() : '0'+now.getDate();
|
|
var toDay = year + mon + day;
|
|
document.listForm.fromDate.value = toDay;
|
|
document.listForm.toDate.value = toDay;
|
|
toDay = year + "-" + mon + "-" + day;
|
|
document.listForm.fDate.value = toDay;
|
|
document.listForm.tDate.value = toDay;
|
|
} else if (document.listForm.fromDate.value != "" && document.listForm.toDate.value != "") {
|
|
var fromDate = document.listForm.fromDate.value;
|
|
var toDate = document.listForm.toDate.value;
|
|
document.listForm.fDate.value = fromDate.substring(0, 4) + "-" + fromDate.substring(4, 6) + "-" + fromDate.substring(6, 8);
|
|
document.listForm.tDate.value = toDate.substring(0, 4) + "-" + toDate.substring(4, 6) + "-" + toDate.substring(6, 8);
|
|
}
|
|
// 기간구분
|
|
var pdKind = document.listForm.pdKind.value;
|
|
var v_pdKind = document.getElementById("PD");
|
|
for(var i = 0; i < v_pdKind.options.length; i++) {
|
|
if (pdKind == v_pdKind.options[i].value) {
|
|
v_pdKind.selectedIndex = i;
|
|
}
|
|
}
|
|
if(pdKind=="") {document.listForm.pdKind.value= v_pdKind.options[v_pdKind.selectedIndex].value; }
|
|
// 통계구분
|
|
var statsKind = document.listForm.statsKind.value;
|
|
var v_statsKind = document.getElementById("STKIND");
|
|
for(var j = 0; j < v_statsKind.options.length; j++) {
|
|
if (statsKind == v_statsKind.options[j].value) {
|
|
v_statsKind.selectedIndex = j;
|
|
fnChangeStsKind();
|
|
}
|
|
}
|
|
if(statsKind=="") {document.listForm.statsKind.value= v_statsKind.options[v_statsKind.selectedIndex].value; }
|
|
}
|
|
|
|
function getNextWeek(v,t){
|
|
var str=new Array();
|
|
var b=v.split("-");
|
|
var c=new Date(b[0],b[1]-1,b[2]);
|
|
var d=c.valueOf()+1000*60*60*24*t;
|
|
var e=new Date(d);
|
|
|
|
str[str.length]=e.getYear();
|
|
str[str.length]=e.getMonth()+1;
|
|
str[str.length]=e.getDate();
|
|
return str.join("");
|
|
}
|
|
</script>
|
|
<style>
|
|
.board1_div1 input{width: 106px;}
|
|
.searchSpanBox {margin-left: 20px;}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<noscript class="noScriptTitle">자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
|
|
<form name="listForm" action="<c:url value='/sts/selectConectStats.do'/>" method="post">
|
|
<input type="hidden" name="pdKind" id="pdKind" value='<c:out value="${statsInfo.pdKind}"/>'/>
|
|
<input type="hidden" name="statsKind" id="statsKind" value='<c:out value="${statsInfo.statsKind}"/>'/>
|
|
<input type="hidden" name="detailStatsKind" id="detailStatsKind" value=""/>
|
|
<input type="hidden" name="cal_url" id="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>" />
|
|
<input type="hidden" name="fromDate" id="fromDate" value="${statsInfo.fromDate}" size="10"/>
|
|
<input type="hidden" name="toDate" id="toDate" value="${statsInfo.toDate}" size="10"/>
|
|
|
|
<div class="ad_content">
|
|
<div class="ad_con_head">
|
|
<div class="ad_head_text">
|
|
<p class="today_txt">접속통계 리스트</p>
|
|
<div class="ad_head_ment">
|
|
<p class="today_last_txt"><span id="cnt_cate_list"></span></p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ad_subcon">
|
|
<div class="ad_con_body">
|
|
<div class="ad_bo_h3">
|
|
<div class="board1_div1">
|
|
기간 :
|
|
<input type="text" name="fDate" value="" size="10" title="시작일자(새창)" id="fDate"/>
|
|
<a href="#noscript" onclick="fn_egov_NormalCalendar(document.listForm, document.listForm.fromDate, document.listForm.fDate,'','<c:url value='/sym/cmm/EgovselectNormalCalendar.do'/>'); return false;" style="selector-dummy:expression(this.hideFocus=false);"><img src="<c:url value='/images/calendar.gif' />" alt="달력(새창)"></a>
|
|
~ <input type="text" name="tDate" value="" size="10" title="종료일자(새창)" id="tDate" />
|
|
<a href="#noscript" onclick="fn_egov_NormalCalendar(document.listForm, document.listForm.toDate, document.listForm.tDate,'','<c:url value='/sym/cmm/EgovselectNormalCalendar.do'/>'); return false;" style="selector-dummy:expression(this.hideFocus=false);"><img src="<c:url value='/images/calendar.gif' />" alt="달력(새창)"></a>
|
|
<span class="searchSpanBox"> 기간구분 :</span>
|
|
<select id="PD" name="PD" class="select" onChange="javascript:fnChangePdKind();" title="기간구분">
|
|
<option value='D' selected>일별</option>
|
|
<option value='M'>월별</option>
|
|
<option value='Y'>연도별</option>
|
|
</select>
|
|
<div style="display:none;">
|
|
<span class="searchSpanBox">통계구분 :</span>
|
|
<select id="STKIND" name="STKIND" class="select" onChange="javascript:fnChangeStsKind();" title="통계구분">
|
|
<option value='SERVICE' >서비스별</option>
|
|
<option value='PRSONAL' selected>개인별</option>
|
|
</select>
|
|
</div>
|
|
|
|
<span class="searchSpanBox">사용자구분 :</span>
|
|
<select name="userAt" id="userAt" title="사용자구분" style="margin-left: 11px;">
|
|
<option value="" <c:if test="${empty statsVO.userAt }">selected="selected"</c:if> >-전체-</option>
|
|
<option value="A" <c:if test="${statsVO.userAt == 'A'}">selected="selected"</c:if> >관리자</option>
|
|
<option value="U" <c:if test="${statsVO.userAt == 'U'}">selected="selected"</c:if> >사용자</option>
|
|
</select>
|
|
|
|
<ul class="board1_div2_ul" style="margin-right: -140px;">
|
|
<li><button class="board1_list_btn" onclick="fnSearch(); return false;">검 색</button></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<p class="mem_count">총 <fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" />건</p>
|
|
<div class="ad_mem_list">
|
|
<c:if test='${statsInfo.statsKind != "PRSONAL" }'>
|
|
<table>
|
|
<tr>
|
|
<th>번호</th>
|
|
<th>일자</th>
|
|
<!-- <th>메소드명</th> -->
|
|
<th>생성(로그인)</th>
|
|
<!-- <th>수정(미사용)</th>
|
|
<th>조회(미사용)</th>
|
|
<th>삭제(미사용)</th>
|
|
<th>출력(미사용)</th>
|
|
<th>에러(미사용)</th> -->
|
|
</tr>
|
|
|
|
<c:forEach var="resultInfo" items="${conectStats}" varStatus="status">
|
|
<tr>
|
|
<td><c:out value="${(statsInfo.pageIndex - 1) * statsInfo.pageSize + status.count}"/></td>
|
|
<td>${resultInfo.statsDate}</td>
|
|
<%-- <td> ${resultInfo.conectMethod}</td> --%>
|
|
<td>${resultInfo.creatCo}</td>
|
|
<%-- <td>${resultInfo.updtCo}</td>
|
|
<td>${resultInfo.inqireCo}</td>
|
|
<td>${resultInfo.deleteCo}</td>
|
|
<td>${resultInfo.outptCo}</td>
|
|
<td>${resultInfo.errorCo}</td> --%>
|
|
</tr>
|
|
</c:forEach>
|
|
<c:if test="${empty conectStats}">
|
|
<tr><td colspan="9"><spring:message code="common.nodata.msg" /></td></tr>
|
|
</c:if>
|
|
</table>
|
|
<!-- 페이지 네비게이션 시작 -->
|
|
<c:if test="${!empty conectStats}">
|
|
<div class="board1_btn">
|
|
<ul>
|
|
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
|
</ul>
|
|
</div>
|
|
</c:if>
|
|
<!-- //페이지 네비게이션 끝 -->
|
|
</c:if>
|
|
|
|
|
|
<!-- 개인별 결과 -->
|
|
<c:if test='${statsInfo.statsKind == "PRSONAL" }'>
|
|
<div class="">
|
|
<!-- 막대그래프 시작 -->
|
|
<span style="float:unset;" ><b>그래프 (단위, 횟수)</b></span>
|
|
<table width="660" cellpadding="8" border="0" style="margin-top: 7px;">
|
|
<c:forEach items="${conectStats}" var="resultInfo" varStatus="status">
|
|
<tr>
|
|
<td style="width:150px; line-height: unset;">${resultInfo.statsDate}</td>
|
|
<td style="line-height: unset; align:left">
|
|
<img src="<c:url value='/images/left_bg.gif'/>"
|
|
width="<c:out value='${resultInfo.statsCo * statsInfo.maxUnit}'/>"
|
|
height="10" align="left" alt=""/> (${resultInfo.statsCo} 회)
|
|
</td>
|
|
</tr>
|
|
</c:forEach>
|
|
</table>
|
|
<!-- 막대그래프 끝 -->
|
|
</div>
|
|
<c:if test="${!empty conectStats}">
|
|
<div class="board1_btn">
|
|
<ul>
|
|
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
|
</ul>
|
|
</div>
|
|
</c:if>
|
|
</c:if>
|
|
<!-- 개인별 결과 -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<form name="searchForm" method="get" action="<c:url value='/sts/cst/selectConectStats.do'/>">
|
|
<input name="pageIndex" type="hidden" value="1" />
|
|
<input name="fromDate" type="hidden" />
|
|
<input name="toDate" type="hidden" />
|
|
<input name="pdKind" type="hidden" />
|
|
<input name="statsKind" type="hidden" />
|
|
<input name="userAt" type="hidden" />
|
|
<input name="detailStatsKind" type="hidden" />
|
|
</form>
|
|
|
|
</body>
|
|
</html> |