init
This commit is contained in:
@@ -0,0 +1,329 @@
|
||||
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
||||
<%@ page import="java.io.*"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%
|
||||
response.setHeader("Pragma", "No-cache");
|
||||
response.setHeader("Cache-Control", "no-cache");
|
||||
response.setHeader("Expires", "0");
|
||||
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<jsp:include page="/jsp/common/include/css.jsp"/>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="<c:url value="/css/w2ui-1.4.3.css"/>" />
|
||||
<jsp:include page="/jsp/common/include/script.jsp"/>
|
||||
<script language="javascript" src="<c:url value="/js/w2ui-1.4.3.js"/>"></script>
|
||||
|
||||
<jsp:include page="/jsp/common/include/jqplotCss.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/jqplotScript.jsp"/>
|
||||
|
||||
|
||||
<script language="javascript" >
|
||||
var url ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailyMan.json" />';
|
||||
var url_view ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailyMan.view" />';
|
||||
|
||||
var plotChart1; // jqplot 저장 (chart1).
|
||||
var plotChart2; // jqplot 저장 (chart2).
|
||||
|
||||
function detail(){
|
||||
w2ui['myGrid'].clear();
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
postData['totalCount']=0;
|
||||
postData['page']=1;
|
||||
postData['rows']=1;
|
||||
|
||||
$.ajax({
|
||||
type : "POST",
|
||||
url:url,
|
||||
dataType:"JSON",
|
||||
data:postData,
|
||||
success:function(json){
|
||||
var data = json;
|
||||
var records = data.rows;
|
||||
|
||||
var summary = new Object();
|
||||
summary.recid ="";
|
||||
for(var i=1;i<=31;i++){
|
||||
summary["DDTRSMTNOITM"+i] =0;
|
||||
summary["DDERRNOITM"+i] =0;
|
||||
}
|
||||
|
||||
for(var idx in records){
|
||||
//insert recid
|
||||
records[idx]['recid'] = parseInt(idx)+1;
|
||||
for(var i=1;i<=31;i++){
|
||||
summary["DDTRSMTNOITM"+i] = summary["DDTRSMTNOITM"+i] + records[idx]["DDTRSMTNOITM"+i] ;
|
||||
summary["DDERRNOITM"+i] = summary["DDERRNOITM"+i] + records[idx]["DDERRNOITM"+i];
|
||||
}
|
||||
|
||||
}
|
||||
w2ui['myGrid'].total = data.records;
|
||||
w2ui['myGrid'].records = records;
|
||||
|
||||
w2ui['myGrid'].summary.push(summary);
|
||||
// End 합계 셋팅.
|
||||
w2ui['myGrid'].refresh();
|
||||
|
||||
if(plotChart1 == undefined || plotChart1 == null)
|
||||
{
|
||||
var rowsData = data.rows;
|
||||
// 차트 생성.
|
||||
plotChart1 = jqLineChart('chart1',rowsData, 31, 'DDTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqLineChart('chart2',rowsData, 31, 'DDERRNOITM', "오류건수");
|
||||
|
||||
// Summary CSS 설정.
|
||||
$(".ui-jqgrid-ftable tr:first").children("td").css("background-color", "#D4F4FA"); // td 배경색
|
||||
$(".ui-jqgrid-ftable tr:first").css("height", "30px"); // tr 높이
|
||||
$(".ui-jqgrid-ftable tr:first").css("font-size", "10pt"); // tr 글자 크기
|
||||
$(".ui-jqgrid-ftable td:eq(2)").css("text-align", "center"); // td 글자 정렬
|
||||
}
|
||||
|
||||
},
|
||||
error:function(xhr,status,error){
|
||||
alert(JSON.parse(xhr.responseText).errorMsg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("input[name=searchStart],input[name=searchEnd]").inputmask("9999-99",{'autoUnmask':true});
|
||||
$("input[name=searchStart],input[name=searchEnd]").each(function(){
|
||||
if ($(this).val() == undefined || $(this).val() == null || $(this).val() == ""){
|
||||
$(this).val(getToday());
|
||||
}
|
||||
});
|
||||
function thousandsSeparator(record, ind, col_ind){
|
||||
var n = record[this.columns[col_ind].field];
|
||||
n = n.toString();
|
||||
while(true){
|
||||
var n2= n.replace(/(\d)(\d{3})($|,|\.)/g,'$1,$2$3');
|
||||
if (n==n2) break;
|
||||
n=n2;
|
||||
}
|
||||
return n;
|
||||
};
|
||||
$('#myGrid').w2grid({
|
||||
name : 'myGrid',
|
||||
datatype:'JSON',
|
||||
method:'POST',
|
||||
multiSelect : false,
|
||||
autoLoad:false,
|
||||
show :{
|
||||
emptyRecords:false
|
||||
},
|
||||
columnGroups : [
|
||||
{span : 1, master:true},
|
||||
{span : 1, master:true},
|
||||
{span : 1, master:true},
|
||||
{span : 2, caption:'1'},{span : 2, caption:'2'},{span : 2, caption:'3'},{span : 2, caption:'4'},{span : 2, caption:'5'},
|
||||
{span : 2, caption:'6'},{span : 2, caption:'7'},{span : 2, caption:'8'},{span : 2, caption:'9'},{span : 2, caption:'10'},
|
||||
{span : 2, caption:'11'},{span : 2, caption:'12'},{span : 2, caption:'13'},{span : 2, caption:'14'},{span : 2, caption:'15'},
|
||||
{span : 2, caption:'16'},{span : 2, caption:'17'},{span : 2, caption:'18'},{span : 2, caption:'19'},{span : 2, caption:'20'},
|
||||
{span : 2, caption:'21'},{span : 2, caption:'22'},{span : 2, caption:'23'},{span : 2, caption:'24'},{span : 2, caption:'25'},
|
||||
{span : 2, caption:'26'},{span : 2, caption:'27'},{span : 2, caption:'28'},{span : 2, caption:'29'},{span : 2, caption:'30'},
|
||||
{span : 2, caption:'31'}
|
||||
],
|
||||
columns:[
|
||||
{ field : 'recid' , type:'number' ,size:'50px' ,caption:"" ,style :'text-align:right' },
|
||||
{ field : 'EAISVCNAME' , type:'text' ,size:'200px' ,caption:"업무코드"},
|
||||
{ field : 'EAISVCDESC' , type:'text' ,size:'200px' ,caption:"업무명"},
|
||||
{ field : 'DDTRSMTNOITM1' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM1' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM2' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM2' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM3' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM3' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM4' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM4' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM5' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM5' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM6' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM6' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM7' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM7' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM8' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM8' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM9' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM9' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM10' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM10' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM11' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM11' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM12' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM12' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM13' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM13' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM14' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM14' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM15' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM15' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM16' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM16' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM17' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM17' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM18' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM18' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM19' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM19' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM20' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM20' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM21' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM21' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM22' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM22' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM23' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM23' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM24' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM24' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM25' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM25' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM26' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM26' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM27' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM27' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM28' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM28' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM29' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM29' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM30' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM30' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM31' , type:'number' ,size:'60px' ,caption:"전송" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM31' , type:'number' ,size:'60px' ,caption:"오류" ,style :'text-align:right' , render:thousandsSeparator }
|
||||
],
|
||||
summary:[
|
||||
{ recid : "", EAISVCNAME:"합 계", EAISVCDESC:"",
|
||||
DDTRSMTNOITM1:"0", DDERRNOITM1:"0", DDTRSMTNOITM2:"0", DDERRNOITM2:"0", DDTRSMTNOITM3:"0", DDERRNOITM3:"0", DDTRSMTNOITM4:"0", DDERRNOITM4:"0", DDTRSMTNOITM5:"0", DDERRNOITM5:"0",
|
||||
DDTRSMTNOITM6:"0", DDERRNOITM6:"0", DDTRSMTNOITM7:"0", DDERRNOITM7:"0", DDTRSMTNOITM8:"0", DDERRNOITM8:"0", DDTRSMTNOITM9:"0", DDERRNOITM9:"0", DDTRSMTNOITM10:"0", DDERRNOITM10:"0",
|
||||
DDTRSMTNOITM11:"0", DDERRNOITM11:"0", DDTRSMTNOITM12:"0", DDERRNOITM12:"0", DDTRSMTNOITM13:"0", DDERRNOITM13:"0", DDTRSMTNOITM14:"0", DDERRNOITM14:"0", DDTRSMTNOITM15:"0", DDERRNOITM15:"0",
|
||||
DDTRSMTNOITM16:"0", DDERRNOITM16:"0", DDTRSMTNOITM17:"0", DDERRNOITM17:"0", DDTRSMTNOITM18:"0", DDERRNOITM18:"0", DDTRSMTNOITM19:"0", DDERRNOITM19:"0", DDTRSMTNOITM20:"0", DDERRNOITM20:"0",
|
||||
DDTRSMTNOITM21:"0", DDERRNOITM21:"0", DDTRSMTNOITM22:"0", DDERRNOITM22:"0", DDTRSMTNOITM23:"0", DDERRNOITM23:"0", DDTRSMTNOITM24:"0", DDERRNOITM24:"0", DDTRSMTNOITM25:"0", DDERRNOITM25:"0",
|
||||
DDTRSMTNOITM26:"0", DDERRNOITM26:"0", DDTRSMTNOITM27:"0", DDERRNOITM27:"0", DDTRSMTNOITM28:"0", DDERRNOITM28:"0", DDTRSMTNOITM29:"0", DDERRNOITM29:"0", DDTRSMTNOITM30:"0", DDERRNOITM30:"0",
|
||||
DDTRSMTNOITM31:"0", DDERRNOITM31:"0"
|
||||
}
|
||||
],
|
||||
|
||||
onDblClick: function(event) {
|
||||
var recid = event.recid;
|
||||
|
||||
var records = this.get(recid);
|
||||
var data =[];
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
// 차트 삭제
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
// 차트 생성.
|
||||
data[0]=records;
|
||||
plotChart1 = jqLineChart('chart1', data, 31, 'DDTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqLineChart('chart2', data, 31, 'DDERRNOITM', "오류건수");
|
||||
}
|
||||
});
|
||||
detail();
|
||||
|
||||
|
||||
$("#btn_search").click(function(){
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
if(!isFromToDate(postData.searchStart, postData.searchEnd, "yymm"))
|
||||
{
|
||||
alert("입력한 날짜를 확인하여주십시요.\n"
|
||||
+ "시작일 : " + setDateFormat(postData.searchStart) + "\n"
|
||||
+ "종료일 : " + setDateFormat(postData.searchEnd));
|
||||
return;
|
||||
}
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
// 차트 삭제
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
plotChart1 = null;
|
||||
plotChart2 = null;
|
||||
|
||||
// grid 조회
|
||||
detail();
|
||||
});
|
||||
|
||||
$("input[name^=search]").keydown(function(key){
|
||||
if (key.keyCode == 13){
|
||||
$("#btn_search").click();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
buttonControl();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- path -->
|
||||
<div class="container">
|
||||
<div class="right full">
|
||||
<p class="nav">${rmsMenuPath}</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- title -->
|
||||
<div class="container" id="title">
|
||||
<div class="left full ">
|
||||
<p class="title"><img class="title_image" src="<c:url value="/images/title_bullet.gif"/>">서비스별 일별 거래현황</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- line -->
|
||||
<div class="container">
|
||||
<div class="left full title_line "> </div>
|
||||
</div>
|
||||
|
||||
<!-- button -->
|
||||
<table width="100%" height="35px" >
|
||||
<tr>
|
||||
<td align="left">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td class="search_td_title" width="120px">업무명</td>
|
||||
<td>
|
||||
<input type='text' name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}" style="width:100%"/>
|
||||
</td>
|
||||
<td class="search_td_title" width="120px">기간</td>
|
||||
<td>
|
||||
<input type='text' name="searchStart" value="${param.searchStart}" style="width:80px">~
|
||||
<input type='text' name="searchEnd" value="${param.searchEnd}" style="width:80px">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td align="right" width="120px">
|
||||
<img id="btn_search" src="<c:url value="/images/bt/bt_search.gif"/>" level="R"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<br>
|
||||
<table width="100%">
|
||||
<tr width="100%">
|
||||
<td width="2%"> </td>
|
||||
<td width="47%"><div id="chart1"></div></td>
|
||||
<td width="4%"> </td>
|
||||
<td width="47%"><div id="chart2"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- grid -->
|
||||
<div id="myGrid" style="width:100%;height:260px"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,409 @@
|
||||
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
||||
<%@ page import="java.io.*"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%@ include file="/jsp/common/include/localemessage.jsp" %>
|
||||
<%
|
||||
response.setHeader("Pragma", "No-cache");
|
||||
response.setHeader("Cache-Control", "no-cache");
|
||||
response.setHeader("Expires", "0");
|
||||
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<jsp:include page="/jsp/common/include/css.jsp"/>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="<c:url value="/css/w2ui-1.4.3.css"/>" />
|
||||
<jsp:include page="/jsp/common/include/script.jsp"/>
|
||||
<script language="javascript" src="<c:url value="/js/w2ui-1.4.3.js"/>"></script>
|
||||
|
||||
<jsp:include page="/jsp/common/include/jqplotCss.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/jqplotScript.jsp"/>
|
||||
|
||||
|
||||
|
||||
<script language="javascript" >
|
||||
var url ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailyMan.json" />';
|
||||
var url_view ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailyMan.view" />';
|
||||
var url_excel = '<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailyMan.excel" />';
|
||||
|
||||
var plotChart1; // jqplot 저장 (chart1).
|
||||
var plotChart2; // jqplot 저장 (chart2).
|
||||
|
||||
function detail(){
|
||||
|
||||
w2ui['myGrid'].clear();
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
postData['totalCount']=0;
|
||||
postData['page']=1;
|
||||
postData['rows']=1;
|
||||
|
||||
$.ajax({
|
||||
type : "POST",
|
||||
url:url,
|
||||
dataType:"JSON",
|
||||
data:postData,
|
||||
success:function(json){
|
||||
var data = json;
|
||||
var records = data.rows;
|
||||
|
||||
var summary = new Object();
|
||||
summary.recid ="";
|
||||
for(var i=1;i<=31;i++){
|
||||
summary["DDTRSMTNOITM"+i] =0;
|
||||
summary["DDERRNOITM"+i] =0;
|
||||
}
|
||||
|
||||
for(var idx in records){
|
||||
//insert recid
|
||||
records[idx]['recid'] = parseInt(idx)+1;
|
||||
for(var i=1;i<=31;i++){
|
||||
summary["DDTRSMTNOITM"+i] = summary["DDTRSMTNOITM"+i] + records[idx]["DDTRSMTNOITM"+i] ;
|
||||
summary["DDERRNOITM"+i] = summary["DDERRNOITM"+i] + records[idx]["DDERRNOITM"+i];
|
||||
}
|
||||
|
||||
}
|
||||
w2ui['myGrid'].total = data.records;
|
||||
w2ui['myGrid'].records = records;
|
||||
|
||||
w2ui['myGrid'].summary.push(summary);
|
||||
// End 합계 셋팅.
|
||||
w2ui['myGrid'].refresh();
|
||||
|
||||
if(plotChart1 == undefined || plotChart1 == null)
|
||||
{
|
||||
var rowsData = data.rows;
|
||||
// 차트 생성.
|
||||
plotChart1 = jqLineChart('chart1',rowsData, 31, 'DDTRSMTNOITM', "<%= localeMessage.getString("eaiSvcDaily.transCnt") %>");
|
||||
plotChart2 = jqLineChart('chart2',rowsData, 31, 'DDERRNOITM', "<%= localeMessage.getString("eaiSvcDaily.errCnt") %>");
|
||||
|
||||
// Summary CSS 설정.
|
||||
$("#grid_myGrid_rec_").css("background-color", "#D4F4FA"); // td 배경색
|
||||
$("#grid_myGrid_rec_").children("td:eq(2)").text("<%= localeMessage.getString("eaiSvcDaily.sum") %>");
|
||||
$("#grid_myGrid_rec_").css("height", "30px"); // tr 높이
|
||||
$("#grid_myGrid_rec_").css("font-size", "10pt"); // tr 글자 크기
|
||||
$("#grid_myGrid_rec_").css("text-align", "center"); // td 글자 정렬
|
||||
}
|
||||
|
||||
},
|
||||
error:function(xhr,status,error){
|
||||
alert(JSON.parse(xhr.responseText).errorMsg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function w2GridToExcelSubmit(url_excel,cmd,gridObj,formObject,fileName){
|
||||
|
||||
var postData = formObject.serializeArray();
|
||||
postData.push({
|
||||
name : "cmd",
|
||||
value : cmd
|
||||
});
|
||||
//fileName 필수값 아님
|
||||
if (fileName != undefined){
|
||||
postData.push({
|
||||
name : "fileName",
|
||||
value : fileName
|
||||
});
|
||||
}
|
||||
|
||||
//grid data
|
||||
var data = gridObj.records;
|
||||
|
||||
for(var idx in data){
|
||||
for(var i=1;i<=31;i++){
|
||||
data[idx]["DDTRSMTNOITM"+i] = String(data[idx]["DDTRSMTNOITM"+i]);
|
||||
data[idx]["DDERRNOITM"+i] = String(data[idx]["DDERRNOITM"+i]);
|
||||
data[idx]["DDRSPNSAVGVAL"+i] = String(data[idx]["DDRSPNSAVGVAL"+i]);
|
||||
data[idx]["recid"] = String(data[idx]["recid"]);
|
||||
}
|
||||
}
|
||||
|
||||
var gridData = new Array();
|
||||
for ( var i = 0; i < data.length; i++) {
|
||||
gridData.push(data[i]);
|
||||
}
|
||||
postData.push({
|
||||
name : "gridData",
|
||||
value : JSON.stringify(gridData)
|
||||
});
|
||||
|
||||
//grid titles
|
||||
|
||||
var colM = gridObj.columns;
|
||||
var headers = new Array();
|
||||
var headerTitles = new Array();
|
||||
for(var i=0;i<colM.length;i++){
|
||||
if (colM[i].hidden){
|
||||
}else{
|
||||
headers.push(colM[i].field);
|
||||
headerTitles.push(colM[i].caption);
|
||||
}
|
||||
}
|
||||
postData.push({
|
||||
name : "header",
|
||||
value : JSON.stringify(headers)
|
||||
});
|
||||
postData.push({
|
||||
name : "headerTitle",
|
||||
value : JSON.stringify(headerTitles)
|
||||
});
|
||||
|
||||
|
||||
// var form="<form action='"+url_excel+"' method='post' target='excelDown' accept-charset='utf-8' >";
|
||||
var form="<form action='"+url_excel+"' method='post' target='excelDown'>";
|
||||
$.each(postData,function(_,obj){
|
||||
debugger;
|
||||
form +="<input type='hidden' name='"+obj.name+"' value='"+obj.value+"'/>";
|
||||
});
|
||||
form += "</form>";
|
||||
$(form).appendTo("body").submit().remove();
|
||||
}
|
||||
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("input[name=searchStart],input[name=searchEnd]").inputmask("9999-99",{'autoUnmask':true});
|
||||
$("input[name=searchStart],input[name=searchEnd]").each(function(){
|
||||
if ($(this).val() == undefined || $(this).val() == null || $(this).val() == ""){
|
||||
$(this).val(getBeforeMonth());
|
||||
}
|
||||
});
|
||||
function thousandsSeparator(record, ind, col_ind){
|
||||
var n = record[this.columns[col_ind].field];
|
||||
n = n.toString();
|
||||
while(true){
|
||||
var n2= n.replace(/(\d)(\d{3})($|,|\.)/g,'$1,$2$3');
|
||||
if (n==n2) break;
|
||||
n=n2;
|
||||
}
|
||||
return n;
|
||||
};
|
||||
$('#myGrid').w2grid({
|
||||
name : 'myGrid',
|
||||
datatype:'JSON',
|
||||
method:'POST',
|
||||
multiSelect : false,
|
||||
autoLoad:false,
|
||||
show :{
|
||||
emptyRecords:false
|
||||
},
|
||||
columnGroups : [
|
||||
// {span : 1, master:true},
|
||||
// {span : 1, master:true},
|
||||
// {span : 1, master:true},
|
||||
{span : 3, caption:'IF'},
|
||||
{span : 2, caption:'1'},{span : 2, caption:'2'},{span : 2, caption:'3'},{span : 2, caption:'4'},{span : 2, caption:'5'},
|
||||
{span : 2, caption:'6'},{span : 2, caption:'7'},{span : 2, caption:'8'},{span : 2, caption:'9'},{span : 2, caption:'10'},
|
||||
{span : 2, caption:'11'},{span : 2, caption:'12'},{span : 2, caption:'13'},{span : 2, caption:'14'},{span : 2, caption:'15'},
|
||||
{span : 2, caption:'16'},{span : 2, caption:'17'},{span : 2, caption:'18'},{span : 2, caption:'19'},{span : 2, caption:'20'},
|
||||
{span : 2, caption:'21'},{span : 2, caption:'22'},{span : 2, caption:'23'},{span : 2, caption:'24'},{span : 2, caption:'25'},
|
||||
{span : 2, caption:'26'},{span : 2, caption:'27'},{span : 2, caption:'28'},{span : 2, caption:'29'},{span : 2, caption:'30'},
|
||||
{span : 2, caption:'31'}
|
||||
],
|
||||
columns:[
|
||||
{ field : 'recid' , type:'number' ,size:'40px' ,caption:"" ,style :'text-align:right' },
|
||||
{ field : 'EAISVCNAME' , type:'text' ,size:'170px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.bizCode") %>"},
|
||||
{ field : 'EAISVCDESC' , type:'text' ,size:'190px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.bizName") %>"},
|
||||
{ field : 'DDTRSMTNOITM1' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM1' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM2' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM2' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM3' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM3' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM4' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM4' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM5' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM5' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM6' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM6' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM7' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM7' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM8' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM8' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM9' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM9' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM10' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM10' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM11' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM11' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM12' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM12' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM13' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM13' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM14' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM14' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM15' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM15' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM16' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM16' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM17' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM17' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM18' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM18' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM19' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM19' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM20' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM20' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM21' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM21' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM22' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM22' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM23' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM23' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM24' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM24' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM25' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM25' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM26' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM26' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM27' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM27' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM28' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM28' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM29' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM29' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM30' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM30' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM31' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM31' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator }
|
||||
],
|
||||
summary:[
|
||||
{ recid : "", EAISVCNAME:"", EAISVCDESC:"합 계",
|
||||
DDTRSMTNOITM1:"0", DDERRNOITM1:"0", DDTRSMTNOITM2:"0", DDERRNOITM2:"0", DDTRSMTNOITM3:"0", DDERRNOITM3:"0", DDTRSMTNOITM4:"0", DDERRNOITM4:"0", DDTRSMTNOITM5:"0", DDERRNOITM5:"0",
|
||||
DDTRSMTNOITM6:"0", DDERRNOITM6:"0", DDTRSMTNOITM7:"0", DDERRNOITM7:"0", DDTRSMTNOITM8:"0", DDERRNOITM8:"0", DDTRSMTNOITM9:"0", DDERRNOITM9:"0", DDTRSMTNOITM10:"0", DDERRNOITM10:"0",
|
||||
DDTRSMTNOITM11:"0", DDERRNOITM11:"0", DDTRSMTNOITM12:"0", DDERRNOITM12:"0", DDTRSMTNOITM13:"0", DDERRNOITM13:"0", DDTRSMTNOITM14:"0", DDERRNOITM14:"0", DDTRSMTNOITM15:"0", DDERRNOITM15:"0",
|
||||
DDTRSMTNOITM16:"0", DDERRNOITM16:"0", DDTRSMTNOITM17:"0", DDERRNOITM17:"0", DDTRSMTNOITM18:"0", DDERRNOITM18:"0", DDTRSMTNOITM19:"0", DDERRNOITM19:"0", DDTRSMTNOITM20:"0", DDERRNOITM20:"0",
|
||||
DDTRSMTNOITM21:"0", DDERRNOITM21:"0", DDTRSMTNOITM22:"0", DDERRNOITM22:"0", DDTRSMTNOITM23:"0", DDERRNOITM23:"0", DDTRSMTNOITM24:"0", DDERRNOITM24:"0", DDTRSMTNOITM25:"0", DDERRNOITM25:"0",
|
||||
DDTRSMTNOITM26:"0", DDERRNOITM26:"0", DDTRSMTNOITM27:"0", DDERRNOITM27:"0", DDTRSMTNOITM28:"0", DDERRNOITM28:"0", DDTRSMTNOITM29:"0", DDERRNOITM29:"0", DDTRSMTNOITM30:"0", DDERRNOITM30:"0",
|
||||
DDTRSMTNOITM31:"0", DDERRNOITM31:"0"
|
||||
}
|
||||
],
|
||||
|
||||
onDblClick: function(event) {
|
||||
var recid = event.recid;
|
||||
|
||||
var records = this.get(recid);
|
||||
var data =[];
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
// 차트 삭제
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
// 차트 생성.
|
||||
data[0]=records;
|
||||
plotChart1 = jqLineChart('chart1', data, 31, 'DDTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqLineChart('chart2', data, 31, 'DDERRNOITM', "오류건수");
|
||||
}
|
||||
});
|
||||
|
||||
detail();
|
||||
|
||||
|
||||
$("#btn_search").click(function(){
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
if(!isFromToDate(postData.searchStart, postData.searchEnd, "yymm"))
|
||||
{
|
||||
alert("입력한 날짜를 확인하여주십시요.\n"
|
||||
+ "시작일 : " + setDateFormat(postData.searchStart) + "\n"
|
||||
+ "종료일 : " + setDateFormat(postData.searchEnd));
|
||||
return;
|
||||
}
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
// 차트 삭제
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
plotChart1 = null;
|
||||
plotChart2 = null;
|
||||
|
||||
// grid 조회
|
||||
detail();
|
||||
});
|
||||
|
||||
$("input[name^=search]").keydown(function(key){
|
||||
if (key.keyCode == 13){
|
||||
$("#btn_search").click();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$("#btn_excel").click(function(event) {
|
||||
event.stopPropagation(); // Do not propagate the event.
|
||||
// Create an object that will manage to download the file.
|
||||
var target = "excelDown" ; // iframe의 name
|
||||
//(url,cmd,gridObj,formObject,fileName,merge)
|
||||
//gridJsonToExcelSubmit2(url_excel,"LIST_GRID_TO_EXCEL",w2ui['myGrid'],$("#ajaxForm"),'서비스별 일별거래현황');
|
||||
w2GridToExcelSubmit(url_excel,"LIST_GRID_TO_EXCEL",w2ui['myGrid'],$("#ajaxForm"),"서비스별 일별거래현황");
|
||||
return false;
|
||||
});
|
||||
|
||||
buttonControl();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="right_box">
|
||||
<div class="content_top">
|
||||
<ul class="path">
|
||||
<li><a href="#">${rmsMenuPath}</a></li>
|
||||
</ul>
|
||||
</div><!-- end content_top -->
|
||||
<div class="content_middle">
|
||||
<div class="search_wrap">
|
||||
<button type="button" class="cssbtn" id="btn_excel" level="W" ><i class="material-icons">table_view</i> <%= localeMessage.getString("button.excel") %></button>
|
||||
<button type="button" class="cssbtn" id="btn_search" level="R" ><i class="material-icons">search</i> <%= localeMessage.getString("button.search") %></button>
|
||||
<%-- <img src="<c:url value="/img/btn_excel.png"/>" id="btn_excel" level="W"/> --%>
|
||||
<%-- <img src="<c:url value="/img/btn_search.png"/>" alt="" id="btn_search" level="R" /> --%>
|
||||
</div>
|
||||
<div class="title"><%= localeMessage.getString("eaiSvcDaily.title") %></div>
|
||||
|
||||
<form id="ajaxForm" onsubmit="return false;">
|
||||
<table class="search_condition" cellspacing=0;>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th style="width:120px;"><%= localeMessage.getString("eaiSvcDaily.bizName") %></th>
|
||||
<td>
|
||||
<input type="text" name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}">
|
||||
</td>
|
||||
<th style="width:120px;"><%= localeMessage.getString("eaiSvcDaily.period") %></th>
|
||||
<td>
|
||||
<input type="text" name="searchStart" value="${param.searchStart}" style="width:100px"> ~
|
||||
<input type="text" name="searchEnd" value="${param.searchEnd}" style="width:100px">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<table width="100%">
|
||||
<tr width="100%">
|
||||
<td width="2%"> </td>
|
||||
<td width="47%"><div id="chart1"></div></td>
|
||||
<td width="4%"> </td>
|
||||
<td width="47%"><div id="chart2"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<!-- grid -->
|
||||
<div id="myGrid" style="width:100%;height:260px"></div>
|
||||
</body>
|
||||
<!-- grid -->
|
||||
<!-- <div id="myGrid" style="width:100%;height:260px"></div> -->
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,350 @@
|
||||
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
||||
<%@ page import="java.io.*"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
|
||||
<%@ include file="/jsp/common/include/localemessage.jsp" %>
|
||||
<%
|
||||
response.setHeader("Pragma", "No-cache");
|
||||
response.setHeader("Cache-Control", "no-cache");
|
||||
response.setHeader("Expires", "0");
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<jsp:include page="/jsp/common/include/css.jsp"/>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="<c:url value="/css/w2ui-1.4.3.css"/>" />
|
||||
<jsp:include page="/jsp/common/include/script.jsp"/>
|
||||
<script language="javascript" src="<c:url value="/js/w2ui-1.4.3.js"/>"></script>
|
||||
|
||||
<jsp:include page="/jsp/common/include/jqplotCss.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/jqplotScript.jsp"/>
|
||||
|
||||
<script language="javascript" >
|
||||
|
||||
var url = '<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailySituation.json" />';
|
||||
var url_view = '<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailySituation.view" />';
|
||||
|
||||
function detail(){
|
||||
|
||||
w2ui['myGrid'].clear();
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
postData['totalCount']=0;
|
||||
postData['page']=1;
|
||||
postData['rows']=1;
|
||||
|
||||
$.ajax({
|
||||
type : "POST",
|
||||
url:url,
|
||||
dataType:"JSON",
|
||||
data:postData,
|
||||
success:function(json){
|
||||
var data = json;
|
||||
var records = data.rows;
|
||||
|
||||
var summary = new Object();
|
||||
summary.recid ="";
|
||||
for(var i=1;i<=31;i++){
|
||||
summary["DDTRSMTNOITM"+i] =0;
|
||||
summary["DDERRNOITM"+i] =0;
|
||||
}
|
||||
|
||||
for(var idx in records){
|
||||
//insert recid
|
||||
records[idx]['recid'] = parseInt(idx)+1;
|
||||
for(var i=1;i<=31;i++){
|
||||
summary["DDTRSMTNOITM"+i] = summary["DDTRSMTNOITM"+i] + records[idx]["DDTRSMTNOITM"+i] ;
|
||||
summary["DDERRNOITM"+i] = summary["DDERRNOITM"+i] + records[idx]["DDERRNOITM"+i];
|
||||
}
|
||||
|
||||
}
|
||||
w2ui['myGrid'].total = data.records;
|
||||
w2ui['myGrid'].records = records;
|
||||
|
||||
w2ui['myGrid'].summary.push(summary);
|
||||
// End 합계 셋팅.
|
||||
w2ui['myGrid'].refresh();
|
||||
|
||||
// Summary CSS 설정.
|
||||
$("#grid_myGrid_rec_").css("background-color", "#D4F4FA"); // td 배경색
|
||||
$("#grid_myGrid_rec_").children("td:eq(2)").text("<%= localeMessage.getString("eaiSvcDaily.sum") %>");
|
||||
$("#grid_myGrid_rec_").css("height", "30px"); // tr 높이
|
||||
$("#grid_myGrid_rec_").css("font-size", "10pt"); // tr 글자 크기
|
||||
$("#grid_myGrid_rec_").css("text-align", "center"); // td 글자 정렬
|
||||
|
||||
|
||||
},
|
||||
error:function(xhr,status,error){
|
||||
alert(JSON.parse(xhr.responseText).errorMsg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function w2GridToExcelSubmit(url_excel,cmd,gridObj,formObject,fileName){
|
||||
|
||||
var postData = formObject.serializeArray();
|
||||
postData.push({
|
||||
name : "cmd",
|
||||
value : cmd
|
||||
});
|
||||
//fileName 필수값 아님
|
||||
if (fileName != undefined){
|
||||
postData.push({
|
||||
name : "fileName",
|
||||
value : fileName
|
||||
});
|
||||
}
|
||||
|
||||
//grid data
|
||||
var data = gridObj.records;
|
||||
|
||||
for(var idx in data){
|
||||
for(var i=1;i<=31;i++){
|
||||
data[idx]["DDTRSMTNOITM"+i] = String(data[idx]["DDTRSMTNOITM"+i]);
|
||||
data[idx]["DDERRNOITM"+i] = String(data[idx]["DDERRNOITM"+i]);
|
||||
data[idx]["DDRSPNSAVGVAL"+i] = String(data[idx]["DDRSPNSAVGVAL"+i]);
|
||||
data[idx]["recid"] = String(data[idx]["recid"]);
|
||||
}
|
||||
}
|
||||
|
||||
var gridData = new Array();
|
||||
for ( var i = 0; i < data.length; i++) {
|
||||
gridData.push(data[i]);
|
||||
}
|
||||
postData.push({
|
||||
name : "gridData",
|
||||
value : JSON.stringify(gridData)
|
||||
});
|
||||
|
||||
//grid titles
|
||||
var colM = gridObj.columns;
|
||||
var headers = new Array();
|
||||
var headerTitles = new Array();
|
||||
for(var i=0;i<colM.length;i++){
|
||||
if (colM[i].hidden){
|
||||
}else{
|
||||
headers.push(colM[i].field);
|
||||
headerTitles.push(colM[i].caption);
|
||||
}
|
||||
}
|
||||
postData.push({
|
||||
name : "header",
|
||||
value : JSON.stringify(headers)
|
||||
});
|
||||
postData.push({
|
||||
name : "headerTitle",
|
||||
value : JSON.stringify(headerTitles)
|
||||
});
|
||||
|
||||
// var form="<form action='"+url_excel+"' method='post' target='excelDown' accept-charset='utf-8' >";
|
||||
var form="<form action='"+url_excel+"' method='post' target='excelDown'>";
|
||||
$.each(postData,function(_,obj){
|
||||
debugger;
|
||||
form +="<input type='hidden' name='"+obj.name+"' value='"+obj.value+"'/>";
|
||||
});
|
||||
form += "</form>";
|
||||
$(form).appendTo("body").submit().remove();
|
||||
}
|
||||
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("input[name=searchStart],input[name=searchEnd]").inputmask("9999-99-99",{'autoUnmask':true});
|
||||
$("input[name=searchStart],input[name=searchEnd]").each(function(){
|
||||
if ($(this).val() == undefined || $(this).val() == null || $(this).val() == ""){
|
||||
$(this).val(getToday());
|
||||
}
|
||||
});
|
||||
function thousandsSeparator(record, ind, col_ind){
|
||||
var n = record[this.columns[col_ind].field];
|
||||
n = n.toString();
|
||||
while(true){
|
||||
var n2= n.replace(/(\d)(\d{3})($|,|\.)/g,'$1,$2$3');
|
||||
if (n==n2) break;
|
||||
n=n2;
|
||||
}
|
||||
return n;
|
||||
};
|
||||
$('#myGrid').w2grid({
|
||||
name : 'myGrid',
|
||||
datatype:'JSON',
|
||||
method:'POST',
|
||||
multiSelect : false,
|
||||
autoLoad:false,
|
||||
show :{
|
||||
emptyRecords:false
|
||||
},
|
||||
columnGroups : [
|
||||
// {span : 1, master:true},
|
||||
// {span : 1, master:true},
|
||||
// {span : 1, master:true},
|
||||
{span : 3, caption:'IF'},
|
||||
{span : 2, caption:'1'},{span : 2, caption:'2'},{span : 2, caption:'3'},{span : 2, caption:'4'},{span : 2, caption:'5'},
|
||||
{span : 2, caption:'6'},{span : 2, caption:'7'},{span : 2, caption:'8'},{span : 2, caption:'9'},{span : 2, caption:'10'},
|
||||
{span : 2, caption:'11'},{span : 2, caption:'12'},{span : 2, caption:'13'},{span : 2, caption:'14'},{span : 2, caption:'15'},
|
||||
{span : 2, caption:'16'},{span : 2, caption:'17'},{span : 2, caption:'18'},{span : 2, caption:'19'},{span : 2, caption:'20'},
|
||||
{span : 2, caption:'21'},{span : 2, caption:'22'},{span : 2, caption:'23'},{span : 2, caption:'24'},{span : 2, caption:'25'},
|
||||
{span : 2, caption:'26'},{span : 2, caption:'27'},{span : 2, caption:'28'},{span : 2, caption:'29'},{span : 2, caption:'30'},
|
||||
{span : 2, caption:'31'}
|
||||
],
|
||||
columns:[
|
||||
{ field : 'recid' , type:'number' ,size:'40px' ,caption:"" ,style :'text-align:right' },
|
||||
{ field : 'EAISVCNAME' , type:'text' ,size:'170px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.bizCode") %>"},
|
||||
{ field : 'EAISVCDESC' , type:'text' ,size:'190px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.bizName") %>"},
|
||||
{ field : 'DDTRSMTNOITM1' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM1' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM2' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM2' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM3' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM3' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM4' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM4' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM5' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM5' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM6' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM6' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM7' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM7' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM8' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM8' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM9' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM9' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM10' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM10' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM11' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM11' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM12' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM12' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM13' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM13' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM14' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM14' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM15' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM15' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM16' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM16' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM17' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM17' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM18' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM18' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM19' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM19' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM20' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM20' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM21' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM21' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM22' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM22' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM23' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM23' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM24' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM24' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM25' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM25' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM26' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM26' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM27' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM27' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM28' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM28' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM29' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM29' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM30' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM30' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDTRSMTNOITM31' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.trans") %>" ,style :'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'DDERRNOITM31' , type:'number' ,size:'85px' ,caption:"<%= localeMessage.getString("eaiSvcDaily.err") %>" ,style :'text-align:right' , render:thousandsSeparator }
|
||||
],
|
||||
summary:[
|
||||
{ recid : "", EAISVCNAME:"", EAISVCDESC:"합 계",
|
||||
DDTRSMTNOITM1:"0", DDERRNOITM1:"0", DDTRSMTNOITM2:"0", DDERRNOITM2:"0", DDTRSMTNOITM3:"0", DDERRNOITM3:"0", DDTRSMTNOITM4:"0", DDERRNOITM4:"0", DDTRSMTNOITM5:"0", DDERRNOITM5:"0",
|
||||
DDTRSMTNOITM6:"0", DDERRNOITM6:"0", DDTRSMTNOITM7:"0", DDERRNOITM7:"0", DDTRSMTNOITM8:"0", DDERRNOITM8:"0", DDTRSMTNOITM9:"0", DDERRNOITM9:"0", DDTRSMTNOITM10:"0", DDERRNOITM10:"0",
|
||||
DDTRSMTNOITM11:"0", DDERRNOITM11:"0", DDTRSMTNOITM12:"0", DDERRNOITM12:"0", DDTRSMTNOITM13:"0", DDERRNOITM13:"0", DDTRSMTNOITM14:"0", DDERRNOITM14:"0", DDTRSMTNOITM15:"0", DDERRNOITM15:"0",
|
||||
DDTRSMTNOITM16:"0", DDERRNOITM16:"0", DDTRSMTNOITM17:"0", DDERRNOITM17:"0", DDTRSMTNOITM18:"0", DDERRNOITM18:"0", DDTRSMTNOITM19:"0", DDERRNOITM19:"0", DDTRSMTNOITM20:"0", DDERRNOITM20:"0",
|
||||
DDTRSMTNOITM21:"0", DDERRNOITM21:"0", DDTRSMTNOITM22:"0", DDERRNOITM22:"0", DDTRSMTNOITM23:"0", DDERRNOITM23:"0", DDTRSMTNOITM24:"0", DDERRNOITM24:"0", DDTRSMTNOITM25:"0", DDERRNOITM25:"0",
|
||||
DDTRSMTNOITM26:"0", DDERRNOITM26:"0", DDTRSMTNOITM27:"0", DDERRNOITM27:"0", DDTRSMTNOITM28:"0", DDERRNOITM28:"0", DDTRSMTNOITM29:"0", DDERRNOITM29:"0", DDTRSMTNOITM30:"0", DDERRNOITM30:"0",
|
||||
DDTRSMTNOITM31:"0", DDERRNOITM31:"0"
|
||||
}
|
||||
],
|
||||
|
||||
});
|
||||
|
||||
detail();
|
||||
|
||||
$("#btn_search").click(function(){
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
if(!isFromToDate(postData.searchStart, postData.searchEnd, "yyyymmdd"))
|
||||
{
|
||||
alert("입력한 날짜를 확인하여주십시요.\n"
|
||||
+ "시작일 : " + setDateFormat(postData.searchStart) + "\n"
|
||||
+ "종료일 : " + setDateFormat(postData.searchEnd));
|
||||
return;
|
||||
}
|
||||
|
||||
// grid 조회
|
||||
detail();
|
||||
});
|
||||
|
||||
$("input[name^=search]").keydown(function(key){
|
||||
if (key.keyCode == 13){
|
||||
$("#btn_search").click();
|
||||
}
|
||||
});
|
||||
|
||||
buttonControl();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="right_box">
|
||||
<div class="content_top">
|
||||
<ul class="path">
|
||||
<li><a href="#">${rmsMenuPath}</a></li>
|
||||
</ul>
|
||||
</div><!-- end content_top -->
|
||||
<div class="content_middle">
|
||||
<div class="search_wrap">
|
||||
<button type="button" class="cssbtn" id="btn_search" level="R" ><i class="material-icons">search</i> <%= localeMessage.getString("button.search") %></button>
|
||||
</div>
|
||||
<div class="title"><%= localeMessage.getString("eaiSvcDaily.title") %></div>
|
||||
|
||||
<form id="ajaxForm" onsubmit="return false;">
|
||||
<table class="search_condition" cellspacing=0;>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th style="width:120px;"><%= localeMessage.getString("eaiSvcDaily.bizName") %></th>
|
||||
<td>
|
||||
<input type="text" name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}">
|
||||
</td>
|
||||
<th style="width:120px;"><%= localeMessage.getString("eaiSvcDaily.period") %></th>
|
||||
<td>
|
||||
<input type="text" name="searchStart" value="${param.searchStart}" style="width:100px"> ~
|
||||
<input type="text" name="searchEnd" value="${param.searchEnd}" style="width:100px">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
<table width="100%">
|
||||
<tr width="100%">
|
||||
<td width="2%"> </td>
|
||||
<td width="47%"><div id="chart1"></div></td>
|
||||
<td width="4%"> </td>
|
||||
<td width="47%"><div id="chart2"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<!-- grid -->
|
||||
<div id="myGrid" style="width:100%;height:520px"></div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,278 @@
|
||||
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
||||
<%@ page import="java.io.*"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%
|
||||
response.setHeader("Pragma", "No-cache");
|
||||
response.setHeader("Cache-Control", "no-cache");
|
||||
response.setHeader("Expires", "0");
|
||||
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<jsp:include page="/jsp/common/include/css.jsp"/>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="<c:url value="/css/w2ui-1.4.3.css"/>" />
|
||||
<jsp:include page="/jsp/common/include/script.jsp"/>
|
||||
<script language="javascript" src="<c:url value="/js/w2ui-1.4.3.js"/>"></script>
|
||||
|
||||
<jsp:include page="/jsp/common/include/jqplotScript.jsp"/>
|
||||
|
||||
|
||||
<script language="javascript" >
|
||||
var url ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameMonthlyMan.json" />';
|
||||
var url_view ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameMonthlyMan.view" />';
|
||||
|
||||
var plotChart1; // jqplot 저장 (chart1)
|
||||
var plotChart2; // jqplot 저장 (chart2)
|
||||
|
||||
function detail(){
|
||||
w2ui['myGrid'].clear();
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
postData['totalCount']=0;
|
||||
postData['page']=1;
|
||||
postData['rows']=1;
|
||||
|
||||
$.ajax({
|
||||
type : "POST",
|
||||
url:url,
|
||||
dataType:"JSON",
|
||||
data:postData,
|
||||
success:function(json){
|
||||
var data = json;
|
||||
var records = data.rows;
|
||||
|
||||
var summary = new Object();
|
||||
summary.recid ="";
|
||||
for(var i=1;i<=12;i++){
|
||||
summary["MNTRSMTNOITM"+i] =0;
|
||||
summary["MNERRNOITM"+i] =0;
|
||||
}
|
||||
|
||||
for(var idx in records){
|
||||
//insert recid
|
||||
records[idx]['recid'] = parseInt(idx)+1;
|
||||
for(var i=1;i<=12;i++){
|
||||
summary["MNTRSMTNOITM"+i] = summary["MNTRSMTNOITM"+i] + records[idx]["MNTRSMTNOITM"+i] ;
|
||||
summary["MNERRNOITM"+i] = summary["MNERRNOITM"+i] + records[idx]["MNERRNOITM"+i];
|
||||
}
|
||||
|
||||
}
|
||||
w2ui['myGrid'].total = data.records;
|
||||
w2ui['myGrid'].records = records;
|
||||
|
||||
w2ui['myGrid'].summary.push(summary);
|
||||
// End 합계 셋팅.
|
||||
w2ui['myGrid'].refresh();
|
||||
|
||||
if(plotChart1 == undefined || plotChart1 == null)
|
||||
{
|
||||
var rowsData = data.rows;
|
||||
// 차트 생성.
|
||||
plotChart1 = jqLineChart('chart1',rowsData, 12, 'MNTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqLineChart('chart2',rowsData, 12, 'MNERRNOITM', "오류건수");
|
||||
|
||||
// Summary CSS 설정.
|
||||
$(".ui-jqgrid-ftable tr:first").children("td").css("background-color", "#D4F4FA"); // td 배경색
|
||||
$(".ui-jqgrid-ftable tr:first").css("height", "30px"); // tr 높이
|
||||
$(".ui-jqgrid-ftable tr:first").css("font-size", "10pt"); // tr 글자 크기
|
||||
$(".ui-jqgrid-ftable td:eq(2)").css("text-align", "center"); // td 글자 정렬
|
||||
}
|
||||
|
||||
},
|
||||
error:function(xhr,status,error){
|
||||
alert(JSON.parse(xhr.responseText).errorMsg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("input[name=searchStart],input[name=searchEnd]").inputmask("9999",{'autoUnmask':true});
|
||||
$("input[name=searchStart],input[name=searchEnd]").each(function(){
|
||||
if ($(this).val() == undefined || $(this).val() == null || $(this).val() == ""){
|
||||
$(this).val(getToday());
|
||||
}
|
||||
});
|
||||
function thousandsSeparator(record, ind, col_ind){
|
||||
var n = record[this.columns[col_ind].field];
|
||||
n = n.toString();
|
||||
while(true){
|
||||
var n2= n.replace(/(\d)(\d{3})($|,|\.)/g,'$1,$2$3');
|
||||
if (n==n2) break;
|
||||
n=n2;
|
||||
}
|
||||
return n;
|
||||
};
|
||||
|
||||
$('#myGrid').w2grid({
|
||||
name : 'myGrid',
|
||||
datatype:'JSON',
|
||||
method:'POST',
|
||||
multiSelect : false,
|
||||
autoLoad:false,
|
||||
show :{
|
||||
emptyRecords:false
|
||||
},
|
||||
columnGroups : [
|
||||
{span : 1, master:true},
|
||||
{span : 1, master:true},
|
||||
{span : 1, master:true},
|
||||
{span : 2, caption:'1'},{span : 2, caption:'2'},{span : 2, caption:'3'},{span : 2, caption:'4'},{span : 2, caption:'5'},
|
||||
{span : 2, caption:'6'},{span : 2, caption:'7'},{span : 2, caption:'8'},{span : 2, caption:'9'},{span : 2, caption:'10'},
|
||||
{span : 2, caption:'11'},{span : 2, caption:'12'}
|
||||
],
|
||||
columns:[
|
||||
{ field : 'recid' , type:'number' ,size:'50px' , caption:"" , style:'text-align:right'},
|
||||
{ field : 'EAISVCNAME' , type:'text' ,size:'150px' , caption:"업무코드" },
|
||||
{ field : 'EAISVCDESC' , type:'text' ,size:'190px' , caption:"업무명" },
|
||||
{ field : 'MNTRSMTNOITM1' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM1' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM2' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM2' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM3' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM3' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM4' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM4' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM5' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM5' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM6' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM6' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM7' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM7' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM8' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM8' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM9' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM9' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM10' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM10' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM11' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM11' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM12' , type:'number' ,size:'60px' , caption:"전송" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM12' , type:'number' ,size:'60px' , caption:"오류" , style:'text-align:right' , render:thousandsSeparator }
|
||||
],
|
||||
summary:[
|
||||
{ recid : "", EAISVCNAME:"합 계", EAISVCDESC:"",
|
||||
MNTRSMTNOITM1:"0", MNERRNOITM1:"0", MNTRSMTNOITM2:"0", MNERRNOITM2:"0", MNTRSMTNOITM3:"0", MNERRNOITM3:"0", MNTRSMTNOITM4:"0", MNERRNOITM4:"0", MNTRSMTNOITM5:"0", MNERRNOITM5:"0",
|
||||
MNTRSMTNOITM6:"0", MNERRNOITM6:"0", MNTRSMTNOITM7:"0", MNERRNOITM7:"0", MNTRSMTNOITM8:"0", MNERRNOITM8:"0", MNTRSMTNOITM9:"0", MNERRNOITM9:"0", MNTRSMTNOITM10:"0", MNERRNOITM10:"0",
|
||||
MNTRSMTNOITM11:"0", MNERRNOITM11:"0", MNTRSMTNOITM12:"0", MNERRNOITM12:"0"
|
||||
}
|
||||
],
|
||||
onDblClick: function(event) {
|
||||
var recid = event.recid;
|
||||
|
||||
var records = this.get(recid);
|
||||
var data =[];
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
// 차트 삭제
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
// 차트 생성.
|
||||
data[0]=records;
|
||||
plotChart1 = jqLineChart('chart1',data, 12,'MNTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqLineChart('chart2',data, 12,'MNERRNOITM', "오류건수");
|
||||
}
|
||||
});
|
||||
detail();
|
||||
|
||||
$("#btn_search").click(function(){
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
if(!isFromToDate(postData.searchStart, postData.searchEnd))
|
||||
{
|
||||
alert("입력한 날짜를 확인하여주십시요.\n"
|
||||
+ "시작일 : " + setDateFormat(postData.searchStart) + "\n"
|
||||
+ "종료일 : " + setDateFormat(postData.searchEnd));
|
||||
return;
|
||||
}
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
plotChart1 = null;
|
||||
plotChart2 = null;
|
||||
|
||||
detail();
|
||||
});
|
||||
|
||||
$("input[name^=search]").keydown(function(key){
|
||||
if (key.keyCode == 13){
|
||||
$("#btn_search").click();
|
||||
}
|
||||
});
|
||||
|
||||
buttonControl();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- path -->
|
||||
<div class="container">
|
||||
<div class="right full">
|
||||
<p class="nav">${rmsMenuPath}</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- title -->
|
||||
<div class="container" id="title">
|
||||
<div class="left full ">
|
||||
<p class="title"><img class="title_image" src="<c:url value="/images/title_bullet.gif"/>">서비스별 월별 거래현황</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- line -->
|
||||
<div class="container">
|
||||
<div class="left full title_line "> </div>
|
||||
</div>
|
||||
|
||||
<!-- button -->
|
||||
<table width="100%" height="35px" >
|
||||
<tr>
|
||||
<td align="left">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td class="search_td_title" width="120px">업무명</td>
|
||||
<td>
|
||||
<input type='text' name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}" style="width:100%"/>
|
||||
</td>
|
||||
<td class="search_td_title" width="120px">기간</td>
|
||||
<td>
|
||||
<input type='text' name="searchStart" value="${param.searchStart}" style="width:80px">~
|
||||
<input type='text' name="searchEnd" value="${param.searchEnd}" style="width:80px">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td align="right" width="120px">
|
||||
<img id="btn_search" src="<c:url value="/images/bt/bt_search.gif"/>" level="R"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<br>
|
||||
<table width="100%">
|
||||
<tr width="100%">
|
||||
<td width="2%"> </td>
|
||||
<td width="47%"><div id="chart1"></div></td>
|
||||
<td width="4%"> </td>
|
||||
<td width="47%"><div id="chart2"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- grid -->
|
||||
<div id="myGrid" style="width:100%;height:260px"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,353 @@
|
||||
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
||||
<%@ page import="java.io.*"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%@ include file="/jsp/common/include/localemessage.jsp" %>
|
||||
<%
|
||||
response.setHeader("Pragma", "No-cache");
|
||||
response.setHeader("Cache-Control", "no-cache");
|
||||
response.setHeader("Expires", "0");
|
||||
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<jsp:include page="/jsp/common/include/css.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/script.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/jqplotScript.jsp"/>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="<c:url value="/css/w2ui-1.4.3.css"/>" />
|
||||
<script language="javascript" src="<c:url value="/js/w2ui-1.4.3.js"/>"></script>
|
||||
|
||||
|
||||
<script language="javascript" >
|
||||
var url ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameMonthlyMan.json" />';
|
||||
var url_view ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameMonthlyMan.view" />';
|
||||
var url_excel = '<c:url value="/onl/statistics/eaisvcname/eaiSvcNameDailyMan.excel" />';
|
||||
|
||||
var plotChart1; // jqplot 저장 (chart1)
|
||||
var plotChart2; // jqplot 저장 (chart2)
|
||||
|
||||
function detail(){
|
||||
w2ui['myGrid'].clear();
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
postData['totalCount']=0;
|
||||
postData['page']=1;
|
||||
postData['rows']=1;
|
||||
|
||||
$.ajax({
|
||||
type : "POST",
|
||||
url:url,
|
||||
dataType:"JSON",
|
||||
data:postData,
|
||||
success:function(json){
|
||||
var data = json;
|
||||
var records = data.rows;
|
||||
|
||||
var summary = new Object();
|
||||
summary.recid ="";
|
||||
for(var i=1;i<=12;i++){
|
||||
summary["MNTRSMTNOITM"+i] =0;
|
||||
summary["MNERRNOITM"+i] =0;
|
||||
}
|
||||
|
||||
for(var idx in records){
|
||||
//insert recid
|
||||
records[idx]['recid'] = parseInt(idx)+1;
|
||||
for(var i=1;i<=12;i++){
|
||||
summary["MNTRSMTNOITM"+i] = summary["MNTRSMTNOITM"+i] + records[idx]["MNTRSMTNOITM"+i] ;
|
||||
summary["MNERRNOITM"+i] = summary["MNERRNOITM"+i] + records[idx]["MNERRNOITM"+i];
|
||||
}
|
||||
|
||||
}
|
||||
w2ui['myGrid'].total = data.records;
|
||||
w2ui['myGrid'].records = records;
|
||||
|
||||
w2ui['myGrid'].summary.push(summary);
|
||||
// End 합계 셋팅.
|
||||
w2ui['myGrid'].refresh();
|
||||
|
||||
if(plotChart1 == undefined || plotChart1 == null)
|
||||
{
|
||||
var rowsData = data.rows;
|
||||
// 차트 생성.
|
||||
plotChart1 = jqLineChart('chart1',rowsData, 12, 'MNTRSMTNOITM', "<%= localeMessage.getString("eaiSvcMonthly.transCnt") %>");
|
||||
plotChart2 = jqLineChart('chart2',rowsData, 12, 'MNERRNOITM', "<%= localeMessage.getString("eaiSvcMonthly.errCnt") %>");
|
||||
|
||||
// Summary CSS 설정.
|
||||
$("#grid_myGrid_rec_").css("background-color", "#D4F4FA"); // td 배경색
|
||||
$("#grid_myGrid_rec_").children("td:eq(2)").text("<%= localeMessage.getString("eaiSvcMonthly.sum") %>");
|
||||
$("#grid_myGrid_rec_").css("height", "30px"); // tr 높이
|
||||
$("#grid_myGrid_rec_").css("font-size", "10pt"); // tr 글자 크기
|
||||
$("#grid_myGrid_rec_").css("text-align", "center"); // td 글자 정렬
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
error:function(xhr,status,error){
|
||||
alert(JSON.parse(xhr.responseText).errorMsg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
function w2GridToExcelSubmit(url_excel,cmd,gridObj,formObject,fileName){
|
||||
|
||||
var postData = formObject.serializeArray();
|
||||
postData.push({
|
||||
name : "cmd",
|
||||
value : cmd
|
||||
});
|
||||
//fileName 필수값 아님
|
||||
if (fileName != undefined){
|
||||
postData.push({
|
||||
name : "fileName",
|
||||
value : fileName
|
||||
});
|
||||
}
|
||||
|
||||
//grid data
|
||||
var data = gridObj.records;
|
||||
|
||||
for(var idx in data){
|
||||
for(var i=1;i<=31;i++){
|
||||
data[idx]["MNTRSMTNOITM"+i] = String(data[idx]["MNTRSMTNOITM"+i]);
|
||||
data[idx]["MNERRNOITM"+i] = String(data[idx]["MNERRNOITM"+i]);
|
||||
data[idx]["recid"] = String(data[idx]["recid"]);
|
||||
}
|
||||
}
|
||||
|
||||
var gridData = new Array();
|
||||
for ( var i = 0; i < data.length; i++) {
|
||||
gridData.push(data[i]);
|
||||
}
|
||||
postData.push({
|
||||
name : "gridData",
|
||||
value : JSON.stringify(gridData)
|
||||
});
|
||||
|
||||
//grid titles
|
||||
|
||||
var colM = gridObj.columns;
|
||||
var headers = new Array();
|
||||
var headerTitles = new Array();
|
||||
for(var i=0;i<colM.length;i++){
|
||||
if (colM[i].hidden){
|
||||
}else{
|
||||
headers.push(colM[i].field);
|
||||
headerTitles.push(colM[i].caption);
|
||||
}
|
||||
}
|
||||
postData.push({
|
||||
name : "header",
|
||||
value : JSON.stringify(headers)
|
||||
});
|
||||
postData.push({
|
||||
name : "headerTitle",
|
||||
value : JSON.stringify(headerTitles)
|
||||
});
|
||||
|
||||
|
||||
// var form="<form action='"+url_excel+"' method='post' target='excelDown' accept-charset='utf-8' >";
|
||||
var form="<form action='"+url_excel+"' method='post' target='excelDown'>";
|
||||
$.each(postData,function(_,obj){
|
||||
form +="<input type='hidden' name='"+obj.name+"' value='"+obj.value+"'/>";
|
||||
});
|
||||
form += "</form>";
|
||||
$(form).appendTo("body").submit().remove();
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("input[name=searchStart],input[name=searchEnd]").inputmask("9999",{'autoUnmask':true});
|
||||
$("input[name=searchStart],input[name=searchEnd]").each(function(){
|
||||
if ($(this).val() == undefined || $(this).val() == null || $(this).val() == ""){
|
||||
$(this).val(getToday());
|
||||
}
|
||||
});
|
||||
function thousandsSeparator(record, ind, col_ind){
|
||||
var n = record[this.columns[col_ind].field];
|
||||
n = n.toString();
|
||||
while(true){
|
||||
var n2= n.replace(/(\d)(\d{3})($|,|\.)/g,'$1,$2$3');
|
||||
if (n==n2) break;
|
||||
n=n2;
|
||||
}
|
||||
return n;
|
||||
};
|
||||
|
||||
$('#myGrid').w2grid({
|
||||
name : 'myGrid',
|
||||
datatype:'JSON',
|
||||
method:'POST',
|
||||
multiSelect : false,
|
||||
autoLoad:false,
|
||||
show :{
|
||||
emptyRecords:false
|
||||
},
|
||||
columnGroups : [
|
||||
// {span : 1, master:true},
|
||||
// {span : 1, master:true},
|
||||
// {span : 1, master:true},
|
||||
{span : 3, caption:'IF'},
|
||||
{span : 2, caption:'1'},{span : 2, caption:'2'},{span : 2, caption:'3'},{span : 2, caption:'4'},{span : 2, caption:'5'},
|
||||
{span : 2, caption:'6'},{span : 2, caption:'7'},{span : 2, caption:'8'},{span : 2, caption:'9'},{span : 2, caption:'10'},
|
||||
{span : 2, caption:'11'},{span : 2, caption:'12'}
|
||||
],
|
||||
columns:[
|
||||
{ field : 'recid' , type:'number' ,size:'40px' , caption:"" , style:'text-align:right'},
|
||||
{ field : 'EAISVCNAME' , type:'text' ,size:'170px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.bizCode") %>" },
|
||||
{ field : 'EAISVCDESC' , type:'text' ,size:'190px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.bizName") %>" },
|
||||
{ field : 'MNTRSMTNOITM1' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM1' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM2' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM2' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM3' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM3' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM4' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM4' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM5' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM5' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM6' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM6' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM7' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM7' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM8' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM8' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM9' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM9' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM10' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM10' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM11' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM11' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNTRSMTNOITM12' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.trans") %>" , style:'text-align:right' , render:thousandsSeparator },
|
||||
{ field : 'MNERRNOITM12' , type:'number' ,size:'85px' , caption:"<%= localeMessage.getString("eaiSvcMonthly.err") %>" , style:'text-align:right' , render:thousandsSeparator }
|
||||
],
|
||||
summary:[
|
||||
{ recid : "", EAISVCNAME:"", EAISVCDESC:"합 계",
|
||||
MNTRSMTNOITM1:"0", MNERRNOITM1:"0", MNTRSMTNOITM2:"0", MNERRNOITM2:"0", MNTRSMTNOITM3:"0", MNERRNOITM3:"0", MNTRSMTNOITM4:"0", MNERRNOITM4:"0", MNTRSMTNOITM5:"0", MNERRNOITM5:"0",
|
||||
MNTRSMTNOITM6:"0", MNERRNOITM6:"0", MNTRSMTNOITM7:"0", MNERRNOITM7:"0", MNTRSMTNOITM8:"0", MNERRNOITM8:"0", MNTRSMTNOITM9:"0", MNERRNOITM9:"0", MNTRSMTNOITM10:"0", MNERRNOITM10:"0",
|
||||
MNTRSMTNOITM11:"0", MNERRNOITM11:"0", MNTRSMTNOITM12:"0", MNERRNOITM12:"0"
|
||||
}
|
||||
],
|
||||
onDblClick: function(event) {
|
||||
var recid = event.recid;
|
||||
|
||||
var records = this.get(recid);
|
||||
var data =[];
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
// 차트 삭제
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
// 차트 생성.
|
||||
data[0]=records;
|
||||
plotChart1 = jqLineChart('chart1',data, 12,'MNTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqLineChart('chart2',data, 12,'MNERRNOITM', "오류건수");
|
||||
}
|
||||
});
|
||||
|
||||
detail();
|
||||
|
||||
|
||||
$("#btn_search").click(function(){
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
if(!isFromToDate(postData.searchStart, postData.searchEnd))
|
||||
{
|
||||
alert("입력한 날짜를 확인하여주십시요.\n"
|
||||
+ "시작일 : " + setDateFormat(postData.searchStart) + "\n"
|
||||
+ "종료일 : " + setDateFormat(postData.searchEnd));
|
||||
return;
|
||||
}
|
||||
|
||||
if(plotChart1 != undefined)
|
||||
{
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
}
|
||||
|
||||
plotChart1 = null;
|
||||
plotChart2 = null;
|
||||
|
||||
detail();
|
||||
});
|
||||
|
||||
$("input[name^=search]").keydown(function(key){
|
||||
if (key.keyCode == 13){
|
||||
$("#btn_search").click();
|
||||
}
|
||||
});
|
||||
|
||||
$("#btn_excel").click(function(event) {
|
||||
event.stopPropagation(); // Do not propagate the event.
|
||||
// Create an object that will manage to download the file.
|
||||
var target = "excelDown" ; // iframe의 name
|
||||
//(url,cmd,gridObj,formObject,fileName,merge)
|
||||
//gridJsonToExcelSubmit2(url_excel,"LIST_GRID_TO_EXCEL",w2ui['myGrid'],$("#ajaxForm"),'서비스별 일별거래현황');
|
||||
w2GridToExcelSubmit(url_excel,"LIST_GRID_TO_EXCEL",w2ui['myGrid'],$("#ajaxForm"),"서비스별 월별거래현황");
|
||||
return false;
|
||||
});
|
||||
|
||||
|
||||
buttonControl();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="right_box">
|
||||
<div class="content_top">
|
||||
<ul class="path">
|
||||
<li><a href="#">${rmsMenuPath}</a></li>
|
||||
</ul>
|
||||
</div><!-- end content_top -->
|
||||
<div class="content_middle">
|
||||
<div class="search_wrap">
|
||||
<button type="button" class="cssbtn" id="btn_excel" level="W" ><i class="material-icons">table_view</i> <%= localeMessage.getString("button.excel") %></button>
|
||||
<button type="button" class="cssbtn" id="btn_search" level="R" ><i class="material-icons">search</i> <%= localeMessage.getString("button.search") %></button>
|
||||
<%-- <img src="<c:url value="/img/btn_excel.png"/>" id="btn_excel" level="W"/> --%>
|
||||
<%-- <img src="<c:url value="/img/btn_search.png"/>" alt="" id="btn_search" level="R" /> --%>
|
||||
</div>
|
||||
<div class="title"><%= localeMessage.getString("eaiSvcMonthly.title") %></div>
|
||||
<table class="search_condition" cellspacing=0;>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th style="width:120px;"><%= localeMessage.getString("eaiSvcMonthly.bizName") %></th>
|
||||
<td>
|
||||
<input type="text" name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}">
|
||||
</td>
|
||||
<th style="width:120px;"><%= localeMessage.getString("eaiSvcMonthly.period") %></th>
|
||||
<td>
|
||||
<input type="text" name="searchStart" value="${param.searchStart}" style="width:100px"> ~
|
||||
<input type="text" name="searchEnd" value="${param.searchEnd}" style="width:100px">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br>
|
||||
<table width="100%">
|
||||
<tr width="100%">
|
||||
<td width="2%"> </td>
|
||||
<td width="47%"><div id="chart1"></div></td>
|
||||
<td width="4%"> </td>
|
||||
<td width="47%"><div id="chart2"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=4> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- grid -->
|
||||
<div id="myGrid" style="width:100%;height:260px"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,209 @@
|
||||
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
||||
<%@ page import="java.io.*"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
||||
<%
|
||||
response.setHeader("Pragma", "No-cache");
|
||||
response.setHeader("Cache-Control", "no-cache");
|
||||
response.setHeader("Expires", "0");
|
||||
|
||||
%>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<jsp:include page="/jsp/common/include/css.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/script.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/jqplotScript.jsp"/>
|
||||
<jsp:include page="/jsp/common/include/jqplotCss.jsp"/>
|
||||
|
||||
|
||||
<script language="javascript" >
|
||||
var url ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameYearlyMan.view" />';
|
||||
var url_view ='<c:url value="/onl/statistics/eaisvcname/eaiSvcNameYearlyMan.json" />';
|
||||
|
||||
var plotChart1; // jqplot 저장 (chart1).
|
||||
var plotChart2; // jqplot 저장 (chart2).
|
||||
|
||||
function detail(){
|
||||
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
$("#grid").setGridParam({ url:url,postData: postData ,page:1 }).trigger("reloadGrid");
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("input[name=searchStart],input[name=searchEnd]").inputmask("9999",{'autoUnmask':true});
|
||||
$("input[name=searchStart],input[name=searchEnd]").each(function(){
|
||||
if ($(this).val() == undefined || $(this).val() == null || $(this).val() == ""){
|
||||
$(this).val(getToday());
|
||||
}
|
||||
});
|
||||
|
||||
// Grid 조회.
|
||||
var gridPostData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
$('#grid').jqGrid({
|
||||
datatype:"json",
|
||||
mtype: 'POST',
|
||||
url: url,
|
||||
postData : gridPostData,
|
||||
colNames:['년도', '업무코드'
|
||||
,'업무명','전송','오류'
|
||||
],
|
||||
colModel:[
|
||||
{ name : 'STATCY' , align:'left' ,width:'60px'},
|
||||
{ name : 'EAIBZWKDSTCD' , hidden: true ,sortable:false},
|
||||
{ name : 'EAISVCDESC' , align:'left' ,width:'200px' },
|
||||
{ name : 'YNTRSMTNOITM' , align:'right' ,width:'60px' , index:'YNTRSMTNOITM', formatter: 'integer', formatoptions:{thousandsSeparator:","}, summaryType:"sum"},
|
||||
{ name : 'YNERRNOITM' , align:'right' ,width:'60px' , index:'YNERRNOITM', formatter: 'integer', formatoptions:{thousandsSeparator:","}, summaryType:"sum"}
|
||||
],
|
||||
jsonReader: {
|
||||
repeatitems:false
|
||||
},
|
||||
|
||||
autoheight: true,
|
||||
height: 260,
|
||||
|
||||
rowNum : 10000, // Grid에 표시될 레코드 수 설정.
|
||||
gridview: true, // jqGrid의 성능 향상 - treeGrid, subGrid, afterInsertRow event의 경우 제외.
|
||||
|
||||
footerrow:true, // 하단에 summary row 출력여부.(default: false)
|
||||
userDataOnFooter:true,
|
||||
rownumbers:true, // Grid의 행번호 출력여부.(default: false)
|
||||
|
||||
gridComplete:function (d){
|
||||
var colModel = $(this).getGridParam("colModel");
|
||||
for(var i = 0 ; i< colModel.length; i++){
|
||||
$(this).setColProp(colModel[i].name, {sortable : false}); //그리드 헤더 화살표 삭제(정렬X)
|
||||
}
|
||||
},
|
||||
loadComplete:function (d){
|
||||
|
||||
if(plotChart1 == undefined || plotChart1 == null)
|
||||
{
|
||||
var data = d.rows;
|
||||
|
||||
// 차트 생성.
|
||||
plotChart1 = jqBarchart('chart1', data, "EAISVCDESC",'YNTRSMTNOITM', "전송건수");
|
||||
plotChart2 = jqBarchart('chart2', data, "EAISVCDESC",'YNERRNOITM', "오류건수");
|
||||
|
||||
// Summary CSS 설정.
|
||||
$(".ui-jqgrid-ftable tr:first").children("td").css("background-color", "#D4F4FA"); // td 배경색
|
||||
$(".ui-jqgrid-ftable tr:first").css("height", "30px"); // tr 높이
|
||||
$(".ui-jqgrid-ftable tr:first").css("font-size", "10pt"); // tr 글자 크기
|
||||
$(".ui-jqgrid-ftable td:eq(1)").css("text-align", "center"); // td 글자 정렬
|
||||
|
||||
var yntrsmtnoitm_sum = $("#grid").jqGrid("getCol", "YNTRSMTNOITM", false, 'sum');
|
||||
var ynerrnoitm_sum = $("#grid").jqGrid("getCol", "YNERRNOITM", false, 'sum');
|
||||
|
||||
$("#grid").jqGrid("footerData", "set", {STATCY:"합계", YNTRSMTNOITM:yntrsmtnoitm_sum
|
||||
, YNERRNOITM:ynerrnoitm_sum
|
||||
});
|
||||
}
|
||||
},
|
||||
loadError: function (jqXHR, textStatus, errorThrown) {
|
||||
|
||||
var location ='<%=request.getContextPath()%>/';
|
||||
comloadError(jqXHR, textStatus, errorThrown ,location);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
$("#btn_search").click(function(){
|
||||
// var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
|
||||
|
||||
// if(!isFromToDate(postData.searchStart, postData.searchEnd))
|
||||
// {
|
||||
// alert("입력한 날짜를 확인하여주십시요.\n"
|
||||
// + "시작일 : " + setDateFormat(postData.searchStart) + "\n"
|
||||
// + "종료일 : " + setDateFormat(postData.searchEnd));
|
||||
// return;
|
||||
// }
|
||||
|
||||
plotChart1.destroy();
|
||||
plotChart2.destroy();
|
||||
|
||||
plotChart1 = null;
|
||||
plotChart2 = null;
|
||||
|
||||
detail();
|
||||
});
|
||||
|
||||
$("input[name^=search]").keydown(function(key){
|
||||
if (key.keyCode == 13){
|
||||
$("#btn_search").click();
|
||||
}
|
||||
});
|
||||
|
||||
buttonControl();
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- path -->
|
||||
<div class="container">
|
||||
<div class="right full">
|
||||
<p class="nav">${rmsMenuPath}</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- title -->
|
||||
<div class="container" id="title">
|
||||
<div class="left full ">
|
||||
<p class="title"><img class="title_image" src="<c:url value="/images/title_bullet.gif"/>">서비스별 년간 거래현황</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- line -->
|
||||
<div class="container">
|
||||
<div class="left full title_line "> </div>
|
||||
</div>
|
||||
|
||||
<!-- button -->
|
||||
<table width="100%" height="35px" >
|
||||
<tr>
|
||||
<td align="left">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td class="search_td_title" width="120px">업무명</td>
|
||||
<td>
|
||||
<input type='text' name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}" style="width:100%"/>
|
||||
</td>
|
||||
<!-- <td class="search_td_title" width="120px">기간</td> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type='text' name="searchStart" value="${param.searchStart}" style="width:80px">~ --%>
|
||||
<%-- <input type='text' name="searchEnd" value="${param.searchEnd}" style="width:80px"> --%>
|
||||
<!-- </td> -->
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td align="right" width="120px">
|
||||
<img id="btn_search" src="<c:url value="/images/bt/bt_search.gif"/>" level="R"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- chart -->
|
||||
<br>
|
||||
<table width="99%">
|
||||
<tr width="100%">
|
||||
<td width="1%"> </td>
|
||||
<td width="43%"><div id="chart1"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=2 height=40px> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="1%"> </td>
|
||||
<td width="43%"><div id="chart2"></div></td>
|
||||
</tr>
|
||||
<tr width="100%">
|
||||
<td colspan=2> </td>
|
||||
</tr>
|
||||
</table>
|
||||
<br>
|
||||
|
||||
<!-- grid -->
|
||||
<table id="grid"></table>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user