first commit

This commit is contained in:
2026-01-16 14:13:44 +08:00
commit 903ff8d495
34603 changed files with 8585054 additions and 0 deletions

View File

@ -0,0 +1,161 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<style type="text/css">
.select2-container .select2-selection--single {
height: 34px;
line-height: 34px;
}
.select2-selection__arrow {
margin-top: 3px;
}
</style>
<script type="text/javascript">
function dosave() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/schedule/scheduleJob/dosave.do", $("#subForm").serialize(), function (data) {
if (data.res == 1) {
closeModal('subModal')
$("#table").bootstrapTable('refresh');
} else if (data.res == 0) {
showAlert('d', '保存失败');
} else {
showAlert('d', data.res);
}
}, 'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
}
}
});
$(function () {
$("#unitId").val(unitId);
$.post(ext.contextPath + "/schedule/scheduleJobType/getJson.do", {}, function(data) {
var selelct =$("#jobGroup").select2({
data: data,
placeholder:'请选择',//默认文字提示
allowClear: false,//允许清空
escapeMarkup: function (markup) { return markup; }, // 自定义格式化防止xss注入
language: "zh-CN",
minimumInputLength: 0,
minimumResultsForSearch: -1,//禁用搜索框
formatResult: function formatRepo(repo){return repo.text;}, // 函数用来渲染结果
formatSelection: function formatRepoSelection(repo){return repo.text;} // 函数用于呈现当前的选择
});
if(data.length>=1){
selelct.val('${scheduleJobType.jobName}').trigger("change");
}else{
//selelct.val(data[0].id).trigger("change");
}
},'json');
})
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">新增</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm" enctype="multipart/form-data">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div class="form-group">
<label class="col-sm-2 control-label">任务名</label>
<div class="col-sm-4">
<input type="text" id="jobName" name="jobName" class="form-control" placeholder="任务名">
</div>
<label class="col-sm-2 control-label">所属模块</label>
<div class="col-sm-4">
<!-- <input type="text" id="jobGroup" name="jobGroup" class="form-control" placeholder="任务组"> -->
<select id="jobGroup" name="jobGroup" class="form-control select2" style="width: 100%">
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">定时频率</label>
<div class="col-sm-4">
<input type="text" id="cronExpression" name="cronExpression" class="form-control"
placeholder="时间表达式">
</div>
<label class="col-sm-2 control-label">是否启动</label>
<div class="col-sm-4">
<select type="text" id="status" class="form-control pull-right" name="status">
<option value="0">是</option>
<option value="1">否</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">所属类</label>
<div class="col-sm-4">
<input type="text" id="beanClass" name="beanClass" class="form-control"
placeholder="定时任务所在的类路径">
</div>
<label class="col-sm-2 control-label">所属方法</label>
<div class="col-sm-4">
<input type="text" id="methodName" name="methodName" class="form-control"
placeholder="要执行的方法">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">所属厂区</label>
<div class="col-sm-4">
<input type="text" id="unitId" name="unitId" class="form-control"
placeholder="所属厂区" value="">
</div>
</div>
<div class="form-group">
<!-- <label class="col-sm-2 control-label">参数</label>
<div class="col-sm-4">
<input type="text" id="params" name="params" class="form-control"
placeholder="参数">
</div> -->
<label class="col-sm-2 control-label">备注</label>
<div class="col-sm-10">
<input type="text" id="remark" name="remark" class="form-control"
placeholder="备注">
</div>
</div>
<%-- <div class="form-group">--%>
<%-- <label class="col-sm-2 control-label">备注</label>--%>
<%-- <div class="col-sm-10">--%>
<%-- <input type="text" id="unitId" name="unitId" class="form-control"--%>
<%-- placeholder="备注">--%>
<%-- </div>--%>
<%-- </div>--%>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,183 @@
<%@ page language="java" pageEncoding="UTF-8" %>
<%@page import="java.util.Date" %>
<%@page import="java.text.SimpleDateFormat" %>
<%@ page import="com.sipai.tools.SessionManager" %>
<%
SessionManager sessionManager = new SessionManager();
%>
<script type="text/javascript">
var checkedItem = "";
var $table;
function doselect() {
// if(checkedItem!= null && checkedItem!=""){
// //console.info(checkedItem);
// $('#taskid' ).val(checkedItem.id);
// $('#taskname').val(checkedItem.name);
// closeModal("subModal_detail");
// }
var pid = '${pid}';
var unitId = '${unitId}';
var checkedItems = $("#scheduleJobDetailTable").bootstrapTable('getSelections');
var dataIds = "";
var dataNames = "";
$.each(checkedItems, function (index, item) {
dataIds += item.id + ",";
dataNames += item.name + ",";
});
if (dataIds == "") {
swal('请先选择记录');
} else {
$.post(ext.contextPath + '/schedule/scheduleJobDetail/dosave.do', {
dataIds,
dataNames,
pid,
unitId
}, function (data) {
var arr = JSON.parse(data);
console.log(arr.res);
if (data.res != '0') {
$("#table_detail").bootstrapTable('refresh');
closeModal("subModal_detail");
} else {
swal('保存失败');
}
});
}
};
var dosearchprocess = function () {
$("#scheduleJobDetailTable").bootstrapTable('refresh');
};
//显示已经勾选的数据
function stateFormatter(value, row, index) {
var flag = false;
var scheduleJobDetails = '${scheduleJobDetailsIds}'
if (scheduleJobDetails.indexOf(row.id) != -1) {
flag = true;
checkedItem = row;
}
if (flag)
return {
checked: true//设置选中
};
return value;
// var scheduleJobDetails = '${scheduleJobDetails}'
// //TODO 循环
// console.log(scheduleJobDetails)
// for(var i=0;i<scheduleJobDetails.length;i++){
// if(row.id==scheduleJobDetails[i].taskid){
// flag=true;
// checkedItem = row;
// }
// if (flag)
// return {
// checked : true//设置选中
// };
// return value;
// }
}
$(function () {
var url = '${scheduleJobTypeInterfaceUrl}';
$table = $("#scheduleJobDetailTable").bootstrapTable({ // 对应table标签的id
//url: ext.contextPath + '/equipment/getList.do', // 获取表格数据的url
//url: ext.contextPath + '/equipment/equipmentBelong/getList.do', // 获取表格数据的url
url: ext.contextPath + url, // 获取表格数据的url
clickToSelect: true,
singleSelect: false,
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [100], // 设置页面可以显示的数据条数
pageSize: 100, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
//responseHandler:responseHandler, //在渲染页面数据之前执行的方法,此配置很重要!!!!!!!
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
unitId: unitId,
// search_code: '${companyId}',
// search_name: $('#search_processname').val()
}
},
queryParamsType: "limit",
sortName: 'morder', // 要排序的字段
sortOrder: 'asc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
formatter: stateFormatter
}, {
field: 'name', // 返回json数据中的name
title: '名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("scheduleJobDetailTable");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
})
});
//绑定选中事件、取消事件、全部选中、全部取消
// $table.on('check.bs.table check-all.bs.table uncheck.bs.table uncheck-all.bs.table', function (e,rows, obj) {
// if('check'==e.type){
// $('#scheduleJobDetailTable .checked').removeClass("checked");
// obj.parent().addClass("checked");
// checkedItem = rows;
// }else{
// obj.parent().removeClass("checked");
// checkedItem = "";
// }
// });
</script>
<div class="modal fade" id="subModal_detail">
<div class="modal-dialog modal-md">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">选择子任务</h4>
</div>
<div class="modal-body">
<div id="alertDiv_MaintainPlanSelect"></div>
<div id="mainAlertdiv"></div>
<div id="menu4SelectDiv"></div>
<div id="modal-body">
<!-- <div class="input-group input-group-sm" style="width: 250px;float: right;margin-bottom: 15px;">
<input type="text" id="search_processname" name="search_processname" class="form-control pull-right" placeholder="名称/编号">
<div class="input-group-btn">
<button class="btn btn-default" onclick="dosearchprocess();"><i class="fa fa-search"></i></button>
</div>
</div> -->
<div class="table-scrollable">
<table class="table table-bordered table-striped" style="overflow:auto;width:100%"
id="scheduleJobDetailTable"></table>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="doselect()" id="btn_save">确定</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,89 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<script type="text/javascript">
function doupdate() {
$("#subForm_detail").bootstrapValidator('validate');//提交验证
if ($("#subForm_detail").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/structure/structureCardPictureRoutePointdetail/doupdate.do", $("#subForm_detail").serialize(), function (data) {
if (data.res == 1) {
closeModal('subModal_detail');
$("#table_pointDetail").bootstrapTable('refresh');
} else if (data.res == 0) {
showAlert('d', '更新失败');
} else {
showAlert('d', data.res);
}
}, 'json');
}
}
$("#subForm_detail").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
contents: {
validators: {
notEmpty: {
message: '巡检不能为空'
}
}
}
}
});
$(function () {
})
</script>
<div class="modal fade" id="subModal_detail">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">编辑</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm_detail">
<div id="alertDiv"></div>
<input id="id" name="id" type="hidden" value="${structureCardPictureRoutePointdetail.id}" />
<!-- 界面提醒div强制id为alertdiv -->
<div class="form-group">
<label class="col-sm-3 control-label">*巡检内容</label>
<div class="col-sm-9">
<input type="text" id="contents" name="contents" class="form-control" placeholder="巡检内容" value="${structureCardPictureRoutePointdetail.contents}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">巡检要求</label>
<div class="col-sm-9">
<input type="text" id="requirement" name="requirement" class="form-control" placeholder="巡检要求" value="${structureCardPictureRoutePointdetail.requirement}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">台数(项数)</label>
<div class="col-sm-3">
<input type="number" id="num" name="num" class="form-control" placeholder="台数(项数)" value="${structureCardPictureRoutePointdetail.num}">
</div>
<label class="col-sm-3 control-label">顺序</label>
<div class="col-sm-3">
<input type="number" id="ord" name="ord" class="form-control" placeholder="顺序" value="${structureCardPictureRoutePointdetail.ord}">
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="doupdate()">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,248 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<script type="text/javascript">
function doupdate() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/schedule/scheduleJob/doupdate.do", $("#subForm").serialize(), function (data) {
if (data.res == 1) {
closeModal('subModal');
$("#table").bootstrapTable('refresh');
} else if (data.res == 0) {
showAlert('d', '更新失败');
} else {
showAlert('d', data.res);
}
}, 'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
}
}
});
//TODO
var addDetailFun = function() {
var pid=$('#id').val();
var jobGroupId = $("#jobGroup").val();
// stopBubbleDefaultEvent();
if( jobGroupId==null || jobGroupId== '' || jobGroupId== undefined){
swal("请选择所属模块");
}else{
$.post(ext.contextPath + '/schedule/scheduleJobDetail/doadd.do' ,{pid,unitId:unitId,jobGroupId}, function(data) {
$("#subDiv_detail").html(data);
openModal('subModal_detail');
});
}
};
var initFun = function () {
$("#table_detail").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/schedule/scheduleJobDetail/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
//showFooter: true,//添加页脚
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
pid:$('#id').val(),
search_name: $('#search_name').val(),
}
},
sortName: 'taskname', // 要排序的字段
sortOrder: 'asc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
},
{
field: 'taskname', // 返回json数据中的name
title: '名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
},
],
//注册加载子表的事件。index父表当前行的行索引,row父表当前行的Json数据对象,$detail当前行下面创建的新行里面的td对象。
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table_detail");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
}
var deletesDetailFun = function() {
var checkedItems = $("#table_detail").bootstrapTable('getSelections');
var datas="";
var pid = $('#id').val();
$.each(checkedItems, function(index, item){
datas+=item.id+",";
});
if(datas==""){
showAlert('d','请先选择记录','mainAlertDetaildiv');
}else{
if(confirm("信息删除后不能恢复,请问要执行删除操作吗?")){
$.post(ext.contextPath + '/schedule/scheduleJobDetail/dodeletes.do', {ids:datas,pid} , function(data) {
if(data>0){
$("#table_detail").bootstrapTable('refresh');
}else{
swal('d','删除失败','mainAlertDetaildiv');
}
});
}
}
};
$(function () {
$.post(ext.contextPath + "/schedule/scheduleJobType/getJson.do", {}, function(data) {
var selelct =$("#jobGroup").select2({
data: data,
placeholder:'请选择',//默认文字提示
allowClear: false,//允许清空
escapeMarkup: function (markup) { return markup; }, // 自定义格式化防止xss注入
language: "zh-CN",
minimumInputLength: 0,
minimumResultsForSearch: -1,//禁用搜索框
formatResult: function formatRepo(repo){return repo.text;}, // 函数用来渲染结果
formatSelection: function formatRepoSelection(repo){return repo.text;} // 函数用于呈现当前的选择
});
if(data.length>=1){
selelct.val('${scheduleJob.jobGroup}').trigger("change");
}else{
//selelct.val(data[0].id).trigger("change");
}
},'json');
initFun();
})
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">编辑</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<div id="alertDiv"></div>
<input id="id" name="id" type="hidden" value="${scheduleJob.id}" />
<!-- 界面提醒div强制id为alertdiv -->
<div class="form-group">
<label class="col-sm-2 control-label">任务名</label>
<div class="col-sm-4">
<input type="text" id="jobName" name="jobName" class="form-control" placeholder="任务名" value="${scheduleJob.jobName}">
</div>
<label class="col-sm-2 control-label">所属模块</label>
<div class="col-sm-4">
<!-- <input type="text" id="jobGroup" name="jobGroup" class="form-control" placeholder="任务组"> -->
<select id="jobGroup" name="jobGroup" class="form-control select2" style="width: 100%">
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">定时频率</label>
<div class="col-sm-4">
<input type="text" id="cronExpression" name="cronExpression" class="form-control"
placeholder="时间表达式"
value="${scheduleJob.cronExpression}">
</div>
<label class="col-sm-2 control-label">是否启动</label>
<div class="col-sm-4">
<select type="text" id="status" class="form-control pull-right" name="status">
<option value="0" <c:if test="${scheduleJob.status==0}">selected</c:if>>是</option>
<option value="1" <c:if test="${scheduleJob.status==1}">selected</c:if>>否</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">所属类</label>
<div class="col-sm-4">
<input type="text" id="beanClass" name="beanClass" class="form-control"
placeholder="定时任务所在的类路径"
value="${scheduleJob.beanClass}">
</div>
<label class="col-sm-2 control-label">所属方法</label>
<div class="col-sm-4">
<input type="text" id="methodName" name="methodName" class="form-control"
placeholder="要执行的方法" value="${scheduleJob.methodName}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">参数</label>
<div class="col-sm-10">
<textarea class="form-control " id="params" name="params" rows="2" placeholder="参数">${scheduleJob.params}</textarea>
<!-- <input type="text" id="params" name="params" class="form-control"
placeholder="参数"
value="${scheduleJob.params}">-->
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">备注</label>
<div class="col-sm-10">
<textarea class="form-control " id="remark" name="remark" rows="4" placeholder="备注">${scheduleJob.remark}</textarea>
<!--<input type="text" id="remark" name="remark" class="form-control"
placeholder="备注"
value="${scheduleJob.remark}">-->
</div>
</div>
</form>
<!-- 子定时任务 -->
<div class="box box-primary" >
<div id="mainAlertDetaildiv"></div>
<div id="subDetailDiv"></div>
<div class="box-header with-border">
<h3 class="box-title">子定时任务</h3>
<div class="box-tools pull-right">
<a onclick="addDetailFun()" class="btn btn-box-tool" data-toggle="tooltip" title="新增"><i class="glyphicon glyphicon-plus"></i></a>
<a onclick="deletesDetailFun()" class="btn btn-box-tool" data-toggle="tooltip" title="删除"><i class="glyphicon glyphicon-minus"></i></a>
</div>
</div>
<div class="box-body">
<table id="table_detail"></table>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="doupdate()">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,218 @@
<%@page import="com.sipai.entity.maintenance.Maintenance"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ page import="com.sipai.entity.base.ServerObject"%>
<%@ taglib uri="http://www.springsecurity.org/jsp" prefix="security"%>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<script type="text/javascript">
var addFun = function () {
$.post(ext.contextPath + '/schedule/scheduleJob/doadd.do', {}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var editFun = function (id) {
$.post(ext.contextPath + '/schedule/scheduleJob/doedit.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var forwardFun = function(website){
window.open(website);
}
var deleteFun = function (id) {
swal({
text: "您确定要删除此记录?",
dangerMode: true,
buttons: {
cancel: {
text: "取消",
value: null,
visible: true,
className: "btn btn-default btn-sm",
closeModal: true,
},
confirm: {
text: "确定",
value: true,
visible: true,
className: "btn btn-danger btn-sm",
closeModal: true
}
}
})
.then(function (willDelete) {
if (willDelete) {
$.post(ext.contextPath + '/schedule/scheduleJob/dodelete.do', { id: id }, function (data) {
if (data == 1) {
$("#table").bootstrapTable('refresh');
} else {
showAlert('d', '删除失败', 'mainAlertdiv');
}
});
}
});
};
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
var initFun = function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/schedule/scheduleJob/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
//showFooter: true,//添加页脚
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
unitId: unitId,
search_name: $('#search_name').val(),
}
},
sortName: 'job_name', // 要排序的字段
sortOrder: 'asc', // 排序规则
columns: [
/* {
checkbox: true, // 显示一个勾选框
}, */{
field: 'jobName', // 返回json数据中的name
title: '定时任务名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
}, {
field: 'scheduleJobType.name', // 返回json数据中的name
title: '定时任务组', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},
{
field: 'methodName', // 返回json数据中的name
title: '执行的方法名', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},
{
field: 'beanClass', // 返回json数据中的name
title: '定时任务所在类路径', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},
{
field: 'cronExpression',
title: '时间表达式',
align: 'center',
valign: 'middle'
},
{
field: 'params',
title: '参数',
align: 'center',
valign: 'middle'
},
{
field: 'status', // 返回json数据中的name
title: '状态', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
formatter: function (value, row, index) {
if (value == 0) {
return "<a href='javascript:void(0);' class='btn btn-primary btn-xs'>正常</a>";
}
if (value == 1) {
return "<a href='javascript:void(0);' class='btn btn-danger btn-xs'>暂停</a>";
}
}
},
{
title: "操作",
align: 'center',
valign: 'middle',
width: 120, // 定义列的宽度单位为像素px
formatter: function (value, row, index) {
var buts = '';
buts += '<button class="btn btn-default btn-sm" onclick="editFun(\'' + row.id + '\')" data-toggle="tooltip" title="编辑"><i class="fa fa-edit "></i><span class="hidden-md hidden-lg"> 编辑</span></button>';
buts += '<button class="btn btn-default btn-sm" onclick="deleteFun(\'' + row.id + '\')" data-toggle="tooltip" title="删除"><i class="fa fa-trash-o "></i><span class="hidden-md hidden-lg"> 删除</span></button>';
buts = '<div class = "btn-group">' + buts + '</div>';
return buts;
}
}
],
//注册加载子表的事件。index父表当前行的行索引,row父表当前行的Json数据对象,$detail当前行下面创建的新行里面的td对象。
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
}
$(function () {
initFun();
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<div class="content-wrapper">
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div id="subDiv_detail"></div>
<div>
<form id="searchForm">
<div class="form-group form-inline" style="padding:0;">
<div class="form-group pull-right">
<div class="input-group input-group-sm" style="width: 250px;">
<input type="text" id="search_name" name="search_name"
class="form-control pull-right" placeholder="名称">
<div class="input-group-btn">
<button class="btn btn-default" onclick="dosearch();"><i
class="fa fa-search"></i></button>
</div>
</div>
</div>
</div>
</form>
<div class="btn-group" style="width: 220px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i
class="fa fa-plus"></i> 新增</button>
<!-- <button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i
class="fa fa-trash-o"></i> 删除</button> -->
</div>
<br>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,88 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<style type="text/css">
.select2-container .select2-selection--single {
height: 34px;
line-height: 34px;
}
.select2-selection__arrow {
margin-top: 3px;
}
</style>
<script type="text/javascript">
function dosave() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/schedule/scheduleJobType/dosave.do", $("#subForm").serialize(), function (data) {
if (data.res == 1) {
closeModal('subModal')
$("#table").bootstrapTable('refresh');
} else if (data.res == 0) {
showAlert('d', '保存失败');
} else {
showAlert('d', data.res);
}
}, 'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
}
}
});
$(function () {
})
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">新增</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm" enctype="multipart/form-data">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div class="form-group">
<label class="col-sm-2 control-label">名称</label>
<div class="col-sm-10">
<input type="text" id="name" name="name" class="form-control" placeholder="名称">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">接口路径</label>
<div class="col-sm-10">
<input type="text" id="interfaceurl" name="interfaceurl" class="form-control" placeholder="接口路径">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">备注</label>
<div class="col-sm-10">
<input type="text" id="memo" name="memo" class="form-control"
placeholder="备注">
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="dosave()">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,83 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<script type="text/javascript">
function doupdate() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/schedule/scheduleJobType/doupdate.do", $("#subForm").serialize(), function (data) {
if (data.res == 1) {
closeModal('subModal');
$("#table").bootstrapTable('refresh');
} else if (data.res == 0) {
showAlert('d', '更新失败');
} else {
showAlert('d', data.res);
}
}, 'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
}
}
});
$(function () {
})
</script>
<div class="modal fade" id="subModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">编辑</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<div id="alertDiv"></div>
<input id="id" name="id" type="hidden" value="${scheduleJobType.id}" />
<!-- 界面提醒div强制id为alertdiv -->
<div class="form-group">
<label class="col-sm-2 control-label">名称</label>
<div class="col-sm-10">
<input type="text" id="name" name="name" class="form-control" placeholder="名称" value="${scheduleJobType.name}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">接口路径</label>
<div class="col-sm-10">
<input type="text" id="interfaceurl" name="interfaceurl" class="form-control" placeholder="接口路径" value="${scheduleJobType.interfaceurl}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">备注</label>
<div class="col-sm-10">
<input type="text" id="memo" name="memo" class="form-control"
placeholder="备注" value="${scheduleJobType.memo}">
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="doupdate()">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,179 @@
<%@page import="com.sipai.entity.maintenance.Maintenance"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ page import="com.sipai.entity.base.ServerObject"%>
<%@ taglib uri="http://www.springsecurity.org/jsp" prefix="security"%>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<script type="text/javascript">
var addFun = function () {
$.post(ext.contextPath + '/schedule/scheduleJobType/doadd.do', {}, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var editFun = function (id) {
$.post(ext.contextPath + '/schedule/scheduleJobType/doedit.do', { id: id }, function (data) {
$("#subDiv").html(data);
openModal('subModal');
});
};
var forwardFun = function(website){
window.open(website);
}
var deleteFun = function (id) {
swal({
text: "您确定要删除此记录?",
dangerMode: true,
buttons: {
cancel: {
text: "取消",
value: null,
visible: true,
className: "btn btn-default btn-sm",
closeModal: true,
},
confirm: {
text: "确定",
value: true,
visible: true,
className: "btn btn-danger btn-sm",
closeModal: true
}
}
})
.then(function (willDelete) {
if (willDelete) {
$.post(ext.contextPath + '/schedule/scheduleJobType/dodelete.do', { id: id }, function (data) {
if (data == 1) {
$("#table").bootstrapTable('refresh');
} else {
showAlert('d', '删除失败', 'mainAlertdiv');
}
});
}
});
};
var dosearch = function () {
$("#table").bootstrapTable('refresh');
};
var initFun = function () {
$("#table").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/schedule/scheduleJobType/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
//showFooter: true,//添加页脚
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
search_name: $('#search_name').val(),
}
},
sortName: 'name', // 要排序的字段
sortOrder: 'asc', // 排序规则
columns: [
/* {
checkbox: true, // 显示一个勾选框
}, */{
field: 'name', // 返回json数据中的name
title: '名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
},
{
field: 'interfaceurl',
title: '接口路径',
align: 'center',
valign: 'middle'
},
{
title: "操作",
align: 'center',
valign: 'middle',
width: 120, // 定义列的宽度单位为像素px
formatter: function (value, row, index) {
var buts = '';
buts += '<button class="btn btn-default btn-sm" onclick="editFun(\'' + row.id + '\')" data-toggle="tooltip" title="编辑"><i class="fa fa-edit "></i><span class="hidden-md hidden-lg"> 编辑</span></button>';
buts += '<button class="btn btn-default btn-sm" onclick="deleteFun(\'' + row.id + '\')" data-toggle="tooltip" title="删除"><i class="fa fa-trash-o "></i><span class="hidden-md hidden-lg"> 删除</span></button>';
buts = '<div class = "btn-group">' + buts + '</div>';
return buts;
}
}
],
//注册加载子表的事件。index父表当前行的行索引,row父表当前行的Json数据对象,$detail当前行下面创建的新行里面的td对象。
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("table");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
});
}
$(function () {
initFun();
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<div class="content-wrapper">
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div>
<form id="searchForm">
<div class="form-group form-inline" style="padding:0;">
<div class="form-group pull-right">
<div class="input-group input-group-sm" style="width: 250px;">
<input type="text" id="search_name" name="search_name"
class="form-control pull-right" placeholder="名称">
<div class="input-group-btn">
<button class="btn btn-default" onclick="dosearch();"><i
class="fa fa-search"></i></button>
</div>
</div>
</div>
</div>
</form>
<div class="btn-group" style="width: 220px;padding-bottom:10px;">
<button type="button" class="btn btn-default btn-sm" onclick="addFun();"><i
class="fa fa-plus"></i> 新增</button>
<!-- <button type="button" class="btn btn-default btn-sm" onclick="deletesFun();"><i
class="fa fa-trash-o"></i> 删除</button> -->
</div>
<br>
<table id="table"></table>
</div>
</section>
<!-- /.content -->
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,139 @@
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="java.util.Date" %>
<%@page import="java.text.SimpleDateFormat" %>
<%@ page import="com.sipai.tools.SessionManager"%>
<%
SessionManager sessionManager = new SessionManager();
%>
<script type="text/javascript">
var checkedItem="";
var $table;
function doselect() {
if(checkedItem!= null && checkedItem!=""){
//console.info(checkedItem);
$('#processsectionid' ).val(checkedItem.id);
$('#processsectionCode' ).val(checkedItem.code);
$('#processsectionName').val(checkedItem.name);
closeModal("equipmentProcessSectionSubModal");
}
};
var dosearchprocess = function() {
$("#equipmentProcessSection").bootstrapTable('refresh');
};
//显示已经勾选的数据
function stateFormatter(value, row, index) {
var flag=false;
if(row.id=='${processsectionId}'){
flag=true;
checkedItem = row;
}
if (flag)
return {
checked : true//设置选中
};
return value;
}
$(function() {
$table = $("#equipmentProcessSection").bootstrapTable({ // 对应table标签的id
//url: ext.contextPath + '/equipment/getList.do', // 获取表格数据的url
//url: ext.contextPath + '/equipment/equipmentBelong/getList.do', // 获取表格数据的url
url: ext.contextPath + '/user/processSection/getlist.do', // 获取表格数据的url
clickToSelect:true,
singleSelect:true,
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20], // 设置页面可以显示的数据条数
pageSize: 10, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
//responseHandler:responseHandler, //在渲染页面数据之前执行的方法,此配置很重要!!!!!!!
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset/params.limit+1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
search_code: '${companyId}',
search_name: $('#search_processname').val()
}
},
queryParamsType: "limit",
sortName: 'morder', // 要排序的字段
sortOrder: 'asc', // 排序规则
columns: [
{
checkbox: true, // 显示一个勾选框
formatter: stateFormatter
},{
field: 'name', // 返回json数据中的name
title: '名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},{
field: 'code', // 返回json数据中的name
title: '编号', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle' // 上下居中
},
],
onLoadSuccess: function(){ //加载成功时执行
adjustBootstrapTableView("equipmentProcessSection");
},
onLoadError: function(){ //加载失败时执行
console.info("加载数据失败");
}
})
});
//绑定选中事件、取消事件、全部选中、全部取消
$table.on('check.bs.table check-all.bs.table uncheck.bs.table uncheck-all.bs.table', function (e,rows, obj) {
if('check'==e.type){
$('#equipmentProcessSection .checked').removeClass("checked");
obj.parent().addClass("checked");
checkedItem = rows;
}else{
obj.parent().removeClass("checked");
checkedItem = "";
}
});
</script>
<div class="modal fade" id="equipmentProcessSectionSubModal" >
<div class="modal-dialog modal-md" >
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">选择设备安装位置</h4>
</div>
<div class="modal-body">
<div id="alertDiv_MaintainPlanSelect"></div>
<div id="mainAlertdiv"></div>
<div id="menu4SelectDiv"></div>
<div id="modal-body">
<div class="input-group input-group-sm" style="width: 250px;float: right;margin-bottom: 15px;">
<input type="text" id="search_processname" name="search_processname" class="form-control pull-right" placeholder="名称/编号">
<div class="input-group-btn">
<button class="btn btn-default" onclick="dosearchprocess();"><i class="fa fa-search"></i></button>
</div>
</div>
<div class="table-scrollable">
<table class="table table-bordered table-striped" style="overflow:auto;width:100%" id="equipmentProcessSection"></table>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="doselect()" id="btn_save">确定</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>

View File

@ -0,0 +1,28 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<html>
<%String contextPath = request.getContextPath();%>
<%String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath();%>
<%String serverPath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort();%>
<%-- 引入jQuery --%>
<script type="text/javascript" src="<%=contextPath%>/node_modules/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="<%=contextPath%>/plugins/jquery-ui/jquery-ui.min.js" charset="utf-8"></script>
<head>
<title>Title</title>
<script type="text/javascript">
$(function () {
var url = 'http://localhost:8081/xxl-job-admin/jobinfo';
$('#wld').attr('src', url);
});
</script>
</head>
<body>
<iframe id="wld" src="" height="100%" width="100%" name="demo" scrolling="auto"></iframe>
</body>
</html>