代码1:
jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>非产品模板详情配置</title>
<link href="css/default.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="easyui/easyui/themes/default/easyui.css" />
<link rel="stylesheet" type="text/css" href="easyui/easyui/themes/icon.css" />
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="easyui/js/jquery.easyui.min.js"></script>
<script type="text/javascript" src="easyui/js/easyui-lang-zh_CN.js"></script>
<script type="text/javascript" src="config_js/logUtil.js"></script>
<script type="text/javascript" src="config_js/exportFile.js"></script>
<script type="text/javascript" src="report_js/nonTeamTemplateDetails.js"></script>
<style type="text/css">
.servertable select{width:240px}
.servertable tr td:first-child{text-align:right;}
.servertable {height: 300px;}
.fast_search{margin-bottom: 6px;height:auto;width:100%}
.fast_textbox{width: 300px;float:left;}
.fast_button{width: 500px;float:left;}
.advanced_search{margin-bottom:6px;height:auto;width:100%;float:right;margin-top:6px;display:none;}
.advanced_parent{float:left;margin-bottom: 6px;}
.explain{width:40px;text-align:right;float:left;margin-top: 3px;}
.explain60{width:70px;text-align:right;float:left;margin-top: 3px;}
.content{width: 150px;float:left;}
.content select {width:140px}
.floatsort{float:left;width: 130px;}
.batchServer{width: 100%;float: left;margin-top: 10px;}
.textbox{width: 140px;}
</style>
</head>
<body style="overflow-y: hidden;">
<div id="tb">
<div style="padding-top: 10px;margin-left: 10px;margin-bottom: 10px">
<a href="javascript:void(0)" class="easyui-linkbutton" style="margin-right:6px;" id="addButton" iconCls="icon-add" >添加</a>
</div>
</div>
<table id="roleList">
<thead>
<tr>
<th data-options="field:'ck',checkbox:true"></th>
<th data-options="field:'monitor_item_code',width:70,align:'center'">监控项</th>
<th data-options="field:'gap_value',width:70,align:'center'">监控频率(s)</th>
<th data-options="field:'remark',width:70,align:'center'">描述</th>
<th data-options="field:'alarm_role',width:70,align:'center',formatter:alarmRole">触发条件</th>
<th data-options="field:'flag',width:70,align:'center',formatter:flag,styler:flagColor">状态</th>
<th data-options="field:'operate',width:80,align:'center',formatter:formatOper">操作</th>
</tr>
</thead>
</table>
<div id="processWindow" class="easyui-window" closed="true" modal="true" title="提示消息"
style="width: 300px; height: 60px;">
<div id="windowContent" class="general-font">
<img src="images/loading.gif" />
操作进行中,请稍后...
</div>
</div>
<div id="titledialogs" class="easyui-dialog" style="width:550px;height:480pxpadding:10px;">
<form id="addForm" method="post" style="text-align:-webkit-center;">
<table class="servertable">
<tr>
<td>监控项:</td>
<td><input id="monitorItem" class="easyui-textbox" name="nonTeamTemplateDetails.monitorItem" type="text" style="width:240px" data-options="required:true"></input></td>
</tr>
<tr>
<td>监控频率(s):</td>
<td><input id="gapValue" class="easyui-textbox" name="nonTeamTemplateDetails.gapValue" type="text" style="width:240px" data-options="required:true"></input></td>
</tr>
<tr>
<td>触发报警条件:</td>
<td><select id="alarmRole" class="easyui-combobox" name="nonTeamTemplateDetails.alarmRole" style="width:120px" editable="false" data-options="panelHeight:'auto'">
<option value="-1">请选择</option>
<option value="0">等于</option>
<option value="1">大于</option>
<option value="1">小于</option>
<option value="2">大于等于</option>
<option value="4">小于等于</option>
<option value="5">不等于</option>
<option value="6">包含</option>
<option value="7">不包含</option>
<option value="8">存在</option>
<option value="9">不存在</option>
</select>
<input id="alarmValue" class="easyui-textbox" name="nonTeamTemplateDetails.alarmValue" type="text" style="width:116px" data-options="required:true"></input></td>
</tr>
<tr>
<td>描述:</td>
<td>
<input id="remark" class="easyui-textbox" name="nonTeamTemplateDetails.remark" type="text" style="width:300px;height:100px" data-options="multiline:true"></input>
</td>
</tr>
<input type=hidden name="id"/>
</table>
</form>
</div>
</body>
</html>
js:
$(function() {
// 关闭弹窗
$('#titledialogs').dialog('close');
// 加载表格数据
loaddata();
// 添加按钮
$("#addButton").click(function() {
addServer();
});
})
// 加载表格数据
function loaddata() {
$('#roleList').datagrid({
iconCls : 'icon-ok',
width : '100%',
pageSize : 15, //默认选择的分页是每页5行数据
pageList : [ 15, 50, 100, 150 ], //可以选择的分页集合
nowrap : true, //设置为true,当数据长度超出列宽时将会自动截取
striped : true, //设置为true将交替显示行背景。
collapsible : true, //显示可折叠按钮
toolbar : "#tb", //在添加 增添、删除、修改操作的按钮要用到这个
url : 'report/getNonTeamTemplateDetailsList.action', //url调用Action方法
loadMsg : '数据装载中......',
fit : true, //页面自适应
singleSelect : true, //为true时只能选择单行
fitColumns : true, //允许表格自动缩放,以适应父容器
//sortName : 'xh',//当数据表格初始化时以哪一列来排序
//sortOrder : 'desc',//定义排序顺序,可以是'asc'或者'desc'(正序或者倒序)。
remoteSort : false,
pagination : true, //分页
rownumbers : true, //行数
// queryParams: {},
onLoadSuccess : function(data) {
$(".editCabinet").linkbutton({
text : '修改',
plain : true,
iconCls : 'icon-edit'
});
$(".delCabinet").linkbutton({
text : '删除',
plain : true,
iconCls : 'icon-remove'
});
$(".start").linkbutton({
text : '启用',
plain : true,
iconCls : 'icon-reload'
});
$(".stop").linkbutton({
text : '停止',
plain : true,
iconCls : 'icon-reload'
});
$('#roleList').datagrid('fixRowHeight');
}
});
};
function flagColor(val, row, index) {
if (val == '1') {
return 'background:#B9F3B9';
} else if (val == 0) {
return 'background:#FFCCCC';
}
}
function flag(val, row, index) {
return '<a href="javascript:void(0)" class="start" onclick="changeFlag(' + index + ',1)"></a><a href="javascript:void(0)" class="stop" onclick="changeFlag(' + index + ',0)"></a>';
}
function changeFlag(index,flag) {
$('#roleList').datagrid('selectRow',index);// 关键在这里
var row = $('#roleList').datagrid('getSelected');
$.messager.confirm('系统提示', '您确定要修改吗?', function(r) {
if (r) {
$.ajax({
url:"report/updateNonTeamTemplateDetailsFlag.action",
type:"POST",
data:{"id":row.id,"flag":flag},
timeout:180000,
success:function(data){
$.messager.alert('系统提示', data, 'info');
loaddata();
}
});
}
});
}
function alarmRole(val, row, index) {
if (val == 0) {
return '=' + row.alarm_value;
}else if (val == 1) {
return '>' + row.alarm_value;
}else if (val == 2) {
return '<' + row.alarm_value;
}else if (val == 3) {
return '≥' + row.alarm_value;
}else if (val == 4) {
return '≤' + row.alarm_value;
}else if (val == 5) {
return '≠' + row.alarm_value;
}else if (val == 6) {
return '包含' + row.alarm_value;
}else if (val == 7) {
return '不包含' + row.alarm_value;
}else if (val == 8) {
return '存在' + row.alarm_value;
}else if (val == 9) {
return '不存在' + row.alarm_value;
}
}
function formatOper(val, row, index) {
return '<a href="javascript:void(0)" class="editCabinet" onclick="editInfo(' + index + ')"></a><a href="javascript:void(0)" class="delCabinet" onclick="deleteInfo(' + index + ')"></a>';
};
//添加
function addServer() {
$('#titledialogs').dialog('open').dialog({
title : '添加模板详情配置',
iconCls : 'icon-save',
buttons : [ {
text : '保存',
iconCls : 'icon-ok',
handler : function() {
$.messager.confirm('系统提示', '您确定要添加吗?', function(r) {
if (r) {
$('#addForm').form('submit', {
url : 'report/addNonTeamTemplateDetails.action',
onSubmit : function() {
var isValid = $(this).form('validate');
if (!isValid) {
$.messager.progress('close');
}
return isValid;
},
success : function(data) {
$.messager.progress('close');
$.messager.alert('系统提示', data, 'info');
var ip = $('#ip').val();
if (data.indexOf('成功') >= 0) {
$('#titledialogs').dialog('close');
loaddata();
}
}
});
}
});
}
}, {
text : '取消',
iconCls : 'icon-cancel',
handler : function() {
$('#titledialogs').dialog('close');
}
} ]
});
}
//修改
function editInfo(index){
$('#roleList').datagrid('selectRow',index);// 关键在这里
var row = $('#roleList').datagrid('getSelected');
$('#addForm').form('load',{'nonTeamTemplateDetails.monitorItem':row.monitor_item_code,
"nonTeamTemplateDetails.gapValue":row.gap_value,
"nonTeamTemplateDetails.alarmRole":row.alarm_role,
"nonTeamTemplateDetails.alarmValue":row.alarm_value,
"nonTeamTemplateDetails.remark":row.remark,
"id":row.id});
$('#titledialogs').dialog('open').dialog({
title:'修改模板详情配置',
iconCls: 'icon-save',
buttons: [
{
text: '保存',
iconCls:'icon-ok',
handler: function(){
$.messager.confirm('系统提示', '您确定要修改吗?', function(r){
if (r) {
$('#addForm').form('submit', {
url: 'report/updateNonTeamTemplateDetails.action',
onSubmit: function(){
var isValid = $(this).form('validate');
if (!isValid){
$.messager.progress('close');
}
return isValid;
},
success: function(data){
$.messager.progress('close');
$.messager.alert('系统提示', data, 'info');
var ip = $('#ip').val();
if(data.indexOf('成功') >= 0){
$('#titledialogs').dialog('close');
loaddata();
}
}
});
}
});
}
},
{
text: '取消',
iconCls:'icon-cancel',
handler: function(){
$('#titledialogs').dialog('close');
}
}
]
});
}
//删除
function deleteInfo(index){
$('#roleList').datagrid('selectRow',index);// 关键在这里
var row = $('#roleList').datagrid('getSelected');
if (row){
$.messager.confirm('系统提示', "您确定要删除该条信息吗?", function(r){
if (r) {
$.ajax({
url:"report/delNonTeamTemplateDetails.action",
type:"POST",
data:{"id":row.id},
timeout:180000,
success:function(data){
$.messager.alert('系统提示', data, 'info');
loaddata();
}
});
}
});
}
}
代码2:
jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>例外邮件暂停</title>
<link href="css/default.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="easyui/easyui/themes/default/easyui.css" />
<link rel="stylesheet" type="text/css" href="easyui/easyui/themes/icon.css" />
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="easyui/js/jquery.easyui.min.js"></script>
<script type="text/javascript" src="easyui/js/easyui-lang-zh_CN.js"></script>
<script type="text/javascript" src="config_js/ipConfig.js"></script>
<script type="text/javascript" src="report_js/gainet.js"></script>
<script type="text/javascript" src="config_js/logUtil.js"></script>
</head>
<body>
<div id='tb'>
<div style="padding-top: 10px;margin-left: 10px;margin-bottom: 10px">
<table>
<td >IP:</td>
<td style="width: 150px;"><input id="ip" class="easyui-textbox" type="text" data-options="prompt:'可模糊查询'" value='${ip}'/></td>
<td><a href="javascript:void(0)" class="easyui-linkbutton" id="searchbutton" iconCls="icon-search">搜索</a>
<a href="javascript:void(0)" class="easyui-linkbutton" style="margin-left:10px;" id="addButton" iconCls="icon-add" >添加</a>
<a href="javascript:void(0)" class="easyui-linkbutton" style="margin-left:10px;" id="deleteList" iconCls="icon-remove" onclick="delList()">批量删除</a> </td>
</table>
</div>
</div>
<table id="roleList">
<thead>
<tr>
<th data-options="field:'ck',checkbox:true"></th>
<th data-options="field:'ip',width:100,align:'center'">IP</th>
<th data-options="field:'ip_add',width:70,align:'center'">详细</th>
<th data-options="field:'dtname',width:70,align:'center'">监控类型</th>
<th data-options="field:'dname',width:70,align:'center'">监控项</th>
<%-- <th data-options="field:'flag',width:40,align:'center',formatter:flaginfo">状态</th>--%>
<th data-options="field:'is_monitor',width:70,align:'center',formatter:monitorinfo">监控状态</th>
<th data-options="field:'remark',width:100,align:'center'">备注</th>
<th data-options="field:'begin_time',width:110,align:'center'">开始时间</th>
<th data-options="field:'end_time',width:110,align:'center'">结束时间</th>
<th data-options="field:'interval_after',width:80,align:'center',formatter:intervalAfter">邮件间隔</th>
<th data-options="field:'times',width:100,align:'center'">时间段</th>
<th data-options="field:'m_time',width:110,align:'center',sortable:'true'">添加时间</th>
<th data-options="field:'operate',width:50,align:'center',formatter:formatOper">操作</th>
</tr>
</thead>
</table>
<div id="processWindow" class="easyui-window" closed="true" modal="true" title="提示消息"
style="width: 300px; height: 60px;">
<div id="windowContent" class="general-font">
<img src="images/loading.gif" />
操作进行中,请稍后...
</div>
</div>
<div id="titledialos" class="easyui-dialog" title="添加例外邮件暂停"
data-options="closed:true,iconCls: 'icon-save',buttons: [
{
text: '保存',
iconCls:'icon-ok',
handler: function(){
$.messager.confirm('系统提示', '您确定要添加吗?', function(r){
if (r) {
$('#addForm').form('submit', {
url: 'config/addIpConfig.action',
onSubmit: function(){
var isValid = $(this).form('validate');
if (!isValid){
$.messager.progress('close');
}
if($('#times').prop('checked')){
var p = /^(1?[0-9]|2[0-3])$/;
var stimes = $('#stimes').val().trim();
var etimes = $('#etimes').val().trim();
if(!p.test(stimes) || !p.test(etimes)){
$.messager.alert('提示','发送时间段请输入0-23');
isValid = false;
}
}
return isValid;
},
success: function(data){
$.messager.progress('close');
$.messager.alert('系统提示', data, 'info');
var ip = $('#ip').val().trim();
loaddata(ip);
$('#titledialos').dialog('close');
}
});
}
});
}
},
{
text: '取消',
iconCls:'icon-cancel',
handler: function(){
$('#titledialos').dialog('close');
}
}
]"
style="width:550px;height:480px;padding:20px;">
<form id="addForm" method="post">
<table class='servertable'>
<tr>
<td style="text-align: right;font-size: 16px">IP是否监控:</td>
<td>
<select id="monitor" name="ipConfig.monitor" style="width: 220px;" class="easyui-combobox" editable="false" data-options="panelHeight:60">
<option value="0">监控</option>
<option value="1">不监控</option>
</select>
</td>
</tr>
<tr>
<td style="text-align: right;font-size: 15px">IP:</td>
<td> <input class="easyui-textbox" id="add_ip" style="width: 158px;" type="text" name="ipConfig.ip" data-options="required:true"></input>
<a href="javascript:void(0)" class="easyui-linkbutton" id="getConfig" iconCls="icon-search">查询</a></td>
</tr>
<tr>
<td style="text-align: right;font-size: 15px">不发邮件项:</td>
<td class="config" style="font-size: 15px"> 请输入IP后点击查询</td>
</tr>
<tr>
<td style="text-align: right;font-size: 16px">IP邮件发送间隔:</td>
<td> <input class="easyui-textbox" type="text" style="width: 220px;" name='ipConfig.intervalTime' id="intervalTime"/>(分)</td>
</tr>
<tr>
<td style="text-align: right;font-size: 16px"><input id="times" type="checkbox" onclick="fssjd()" name="ipConfig.timesSwitch" value="1">不发送邮件(每天):</td>
<td> <input class="easyui-textbox" type="text" data-options="disabled:true" style="width: 83px;" name='ipConfig.stimes' id="stimes"/>点 至<input class="easyui-textbox" type="text" data-options="disabled:true" style="width: 83px;" name='ipConfig.etimes' id="etimes"/>点(输入0-23)</td>
</tr>
<tr>
<td style="text-align: right;font-size: 15px">不发送邮件(一段时间):</td>
<td> <input class="easyui-datetimebox" style="width: 220px;" name='ipConfig.stime' validType="date" invalidMessage="请填写正确的日期" id="stime"/></td>
</tr>
<tr>
<td style="text-align: right;font-size: 15px"></td>
<td> 至<input class="easyui-datetimebox" style="width: 204px;" name='ipConfig.etime' id="etime"/></td>
</tr>
<tr>
<td style="text-align: right;font-size: 15px">备注:</td>
<td>
<input id="bz" name="ipConfig.remark" class="easyui-textbox" type="text" style="width:220px;height:100px" required="true" data-options="multiline:true"></input>
</td>
</tr>
</table>
<input id="index" name="ipConfig.ip_add" type="hidden"/>
</form>
</div>
</body>
</html>
js:
$(function(){
// $('#titledialos').dialog('close');
$("#titledialos").dialog({
onClose: function () {
$('#add_ip').textbox('setValue','');
$('#stime').datetimebox('setValue', '');
$('#etime').datetimebox('setValue', '');
$('.config').html(' 请输入IP查询');
$('#bz').textbox('setValue','');
$("#times").attr("checked",false);
$("#stimes").textbox({disabled:true});
$("#etimes").textbox({disabled:true});
$("#stimes").textbox('setValue','');
$("#etimes").textbox('setValue','');
$("#intervalTime").textbox('setValue','');
$('#monitor').combobox('select', '1');
}
});
//搜索
$("#searchbutton").click(function(){
var ip = $("#ip").val().trim();
if(ip.length == 0){
ip = '';
}
console.log(ip);
loaddata(ip);
});
//初始 页面跳转设置自动搜索
var selectIp= $("#ip").val().trim();
if(selectIp){
loaddata(selectIp);
}else{
loaddata("");
}
})
//弹框 发送时间段复选框点击时间
function fssjd() {
if($('#times').prop("checked")){// 判断checkbox是否选中
// 选中状态
$("#stimes").textbox({disabled:false});
$("#etimes").textbox({disabled:false});
}else{
// 未选中状态
$("#stimes").textbox({disabled:true});
$("#etimes").textbox({disabled:true});
}
}
function loaddata(ip) {
$('#roleList').datagrid({
// title: '特殊IP配置',
iconCls : 'icon-ok',
fit:true,
// height:($(window).height())-120,
width:'100%',
pageSize : 15,//默认选择的分页是每页5行数据
pageList : [ 15,50,100,150 ],//可以选择的分页集合
nowrap : true,//设置为true,当数据长度超出列宽时将会自动截取
striped : true,//设置为true将交替显示行背景。
collapsible : true,//显示可折叠按钮
toolbar:"#tb",//在添加 增添、删除、修改操作的按钮要用到这个
url:'config/getIpConfigList.action',//url调用Action方法
loadMsg : '数据装载中......',
// singleSelect:true,//为true时只能选择单行
fitColumns:true,//允许表格自动缩放,以适应父容器
sortName : 'm_time',//当数据表格初始化时以哪一列来排序
sortOrder : 'desc',//定义排序顺序,可以是'asc'或者'desc'(正序或者倒序)。
remoteSort : false,
pagination : true,//分页
rownumbers : true,//行数
queryParams:{'ip':ip},
onLoadSuccess:function(data){
$(".delCabinet").linkbutton({ text:'删除', plain:true, iconCls:'icon-remove' });
$('#roleList').datagrid('fixRowHeight');
$(".datagrid-row td div").each(function(){
$(this).attr("title",$(this).text());
});
}
});
//新增
$("#addButton").click(function(){
$('#titledialos').dialog('open');
});
//获取配置
$("#getConfig").click(function(){
var ip = $("#add_ip").val().trim();
$.ajax({
url:"config/getConfig.action",
type:"POST",
data:{"ip":ip},
timeout:180000,
success:function(data){
var data = eval(data);
if(data !=null && data != false){
var config = "";
for(var i = 0 ; i<data.length; i++){
if(i%2 == 0 && i != 0){
config += "<br>";
}
if(data[i].flag !=null && data[i].flag == 1){
config += "<input name = 'ipConfig.config' type='checkbox' checked='checked' value = "+data[i].dtchar+">"+data[i].dtname;
}else{
config += "<input name = 'ipConfig.config' type='checkbox' value = "+data[i].dtchar+">"+data[i].dtname;
}
}
$(".config").html(config);
}else{
$('.config').html(' 没有查询到,请输入其他IP查询');
}
}
});
});
}
function formatOper(val,row,index){
return '<a href="javascript:void(0)" class="delCabinet" onclick="deleteInfo('+index+')"></a>';
}
function flaginfo(val,row,index){
if(row.flag == 0){
return "无效";
}else if(row.flag == 1 ){
return "有效";
}
}
function monitorinfo(val,row,index){
if(row.is_monitor == 1 ){
return "不监控";
}else{
return "监控";
}
}
//删除
function deleteInfo(index){
$('#roleList').datagrid('selectRow',index);// 关键在这里
var row = $('#roleList').datagrid('getSelected');
if (row){
$.messager.confirm('系统提示', "您确定要删除信息吗?", function(r){
if (r) {
$.ajax({
url:"config/delIpConfig.action",
type:"POST",
data:{"ids":row.id},
timeout:180000,
success:function(data){
$.messager.alert('系统提示', data, 'info');
var ip = $('#ip').val();
loaddata(ip);
}
});
}
});
}
}
//批量删除
function delList(){
//获取表格选择行
var rows = $('#roleList').datagrid('getSelections');
//判断是否选择行
if (!rows || rows.length == 0) {
$.messager.alert('系统提示', '请选择删除的信息', 'info');
return;
}
var ids;
//循环ID,添加到idList中
$.each(rows, function (i, n) {
if (i == 0) {
ids = n.id;
} else {
ids += "," + n.id;
}
});
$.messager.confirm('系统提示', "您确定要删除信息吗?", function(r){
if (r) {
$.ajax({
url:"config/delIpConfig.action",
type:"POST",
data:{"ids":ids},
timeout:180000,
success:function(data){
$.messager.alert('系统提示', data, 'info');
var ip = $('#ip').val();
loaddata(ip);
}
});
}
});
};
function rowDir(val,row){
if (val){
return '<span style="font-size:15px" title="' + val + '">' + val + '</span>';
} else {
return val;
}
}
function intervalAfter(val,row){
return val+"分";
}