361 lines
10 KiB
Plaintext
361 lines
10 KiB
Plaintext
<%@ page contentType="text/html;charset=UTF-8" %>
|
||
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
|
||
<!DOCTYPE html >
|
||
<html lang="en">
|
||
<head>
|
||
<%@include file="../baseset.jsp" %>
|
||
<%@include file="../systemset.jsp" %>
|
||
<link rel="stylesheet" href="${bonuspath}/static/plugins/zTree/3.5/zTreeStyle.css" />
|
||
<script src="${bonuspath}/static/plugins/zTree/3.5/jquery.ztree.all.min.js"></script>
|
||
<script src="${bonuspath}/static/js/mobile-detect.js"></script>
|
||
<style type="text/css">
|
||
.orgTree {
|
||
width:100% !important;
|
||
height:500px !important;
|
||
background: none repeat scroll 0 0 #fff !important;
|
||
border:1px solid #ddd !important
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div class="page-content">
|
||
<div class="row-fluid">
|
||
<div class="col-xs-12">
|
||
<form id="baseForm" class="form-inline" method="POST" onsubmit="return false;">
|
||
<div class="row">
|
||
<div class="widget-main">
|
||
|
||
<label for="isFinish">任务状态:</label>
|
||
<select id="isFinish" name="isFinishs" style="width: 60px;" >
|
||
<option selected="selected" value="0">待办</option>
|
||
<option value="1">已办</option>
|
||
</select>
|
||
|
||
<label for="keyWord">关键词搜索:</label><input type="text" id="keyWord" name="keyWord" placeholder="任务名称、单号" class="input-large">
|
||
<button id='searchBtn' class="btn btn-success btn-sm" title="过滤" type="button" onclick="getbaseList(1)"><i class="icon-search bigger-110 icon-only"></i></button>
|
||
<button id='getSelectedBtn' class="btn btn-success btn-sm" title="过滤" type="button">批量审批</button>
|
||
<button id='viewFlowchart' class="btn btn-sm" onclick="viewFlowChart()" title="过滤" type="button">流程图</button>
|
||
</div>
|
||
</div>
|
||
<input type='hidden' class='pageNum' name='pageNum' value='1'/>
|
||
<input type='hidden' class='pageSize' name='pageSize' value='10'/>
|
||
</form>
|
||
<table id="baseTable" class="table table-striped table-bordered table-hover">
|
||
<thead>
|
||
<tr>
|
||
<th style="width:3%" class="center">
|
||
<label><input type="checkbox" class="ace" id="checkAll"><span class="lbl"></span></label>
|
||
</th>
|
||
<th style="width:5%" class="center hidden-480">序号</th>
|
||
<th style="width:25%" class="center">任务名称</th>
|
||
<th style="width:25%" class="center">创建时间</th>
|
||
<th style="width:25%" class="center">任务单号</th>
|
||
<th style="width:25%" class="center">创建人</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody></tbody>
|
||
</table>
|
||
<div class="row">
|
||
<div class="col-sm-4">
|
||
</div>
|
||
<div class="col-sm-8">
|
||
<div id="pageing" class="dataTables_paginate paging_bootstrap">
|
||
<ul class="pagination"></ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<%@include file="unFinishWorkListDetails.jsp" %>
|
||
<%@include file="../dialog.jsp" %>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script type="text/javascript">
|
||
// 移动端检测和跳转
|
||
$(document).ready(function() {
|
||
console.log('开始移动端检测...');
|
||
console.log('用户代理:', navigator.userAgent);
|
||
console.log('当前URL:', window.location.href);
|
||
|
||
const isMobile = MobileDetect.isMobile();
|
||
console.log('移动端检测结果:', isMobile);
|
||
|
||
if (isMobile) {
|
||
const currentUrl = window.location.href;
|
||
console.log('当前URL分析:', currentUrl);
|
||
|
||
if (currentUrl.indexOf('unFinishWorkList-mobile') !== -1) {
|
||
console.log('已在移动端页面,跳过跳转');
|
||
return;
|
||
}
|
||
|
||
const baseUrl = currentUrl.split('?')[0];
|
||
const queryParams = currentUrl.split('?')[1] || '';
|
||
|
||
let mobileUrl = baseUrl.replace('/show', '/showMobile');
|
||
if (queryParams) {
|
||
mobileUrl += '?' + queryParams;
|
||
}
|
||
|
||
console.log('准备跳转到移动端页面:', mobileUrl);
|
||
console.log('执行跳转到移动端页面');
|
||
|
||
setTimeout(function() {
|
||
window.location.href = mobileUrl;
|
||
}, 100);
|
||
} else {
|
||
console.log('桌面设备,不进行跳转');
|
||
}
|
||
});
|
||
|
||
function edit(id,definitionId){
|
||
cleanForm();
|
||
$.ajax({
|
||
type: 'POST',
|
||
url: bonuspath + '/backstage/rm/taskRecord/findUnFinishContentDetails',
|
||
data: {
|
||
id:id,
|
||
definitionId: definitionId
|
||
},
|
||
success: function(data) {
|
||
JY.Model.check("auDiv");
|
||
var list = data[0];
|
||
console.log("##########");
|
||
console.log(list);
|
||
console.log("##########");
|
||
assignment(list);
|
||
},
|
||
error: function(e) {
|
||
},
|
||
dataType: 'json'
|
||
});
|
||
}
|
||
|
||
document.addEventListener("visibilitychange", function() {
|
||
if (document.visibilityState === "visible") {
|
||
refreshTable();
|
||
}
|
||
});
|
||
|
||
function refreshTable() {
|
||
console.log("页面重新激活,刷新任务列表...");
|
||
getbaseList(1);
|
||
}
|
||
|
||
function viewFlowChart() {
|
||
layer.open({
|
||
type: 1,
|
||
title: false,
|
||
area: ['647px', '510px'],
|
||
shadeClose: true,
|
||
content: '<img src="${bonuspath}/static/img/flowchart.png" style="width:100%;" alt="流程图">'
|
||
});
|
||
}
|
||
|
||
$(function() {
|
||
// 页面加载完成后立即获取待办列表
|
||
getbaseList(1);
|
||
|
||
// 任务状态下拉框改变事件 - 自动触发查询
|
||
$('#isFinish').change(function() {
|
||
console.log('任务状态改变为:', $(this).val());
|
||
// 重置页码到第一页
|
||
$('.pageNum').val(1);
|
||
// 自动触发查询
|
||
getbaseList(1);
|
||
// 更新按钮状态
|
||
toggleButton();
|
||
});
|
||
|
||
// 初始化按钮状态
|
||
toggleButton();
|
||
|
||
$('#getSelectedBtn').on('click', function() {
|
||
let selectedValues = $('.rowCheck:checked')
|
||
.map(function() {
|
||
return $(this).val();
|
||
}).get();
|
||
if(selectedValues.length == 0){
|
||
JY.Model.info("您没有选择任何内容!");
|
||
return;
|
||
}
|
||
|
||
let pizhun=[];
|
||
let shenhe=[];
|
||
|
||
for (var i = 0; i < selectedValues.length; i++) {
|
||
const item = selectedValues[i]; // 缓存当前元素,代码更简洁
|
||
console.log('当前遍历元素:', item);
|
||
// 核心:判断字符串是否包含「新购任务审核」,includes返回布尔值
|
||
if (item.includes('新购任务审核')) {
|
||
shenhe.push(item); // 符合条件,推入xingo
|
||
} else if (item.includes('新购任务批准')){
|
||
pizhun.push(item); // 不符合,推入shenhe
|
||
}
|
||
}
|
||
console.log('当前遍历元素:', pizhun);
|
||
console.log('当前遍历元素:', shenhe);
|
||
if(shenhe.length>0){
|
||
aduitFunction(shenhe);
|
||
}
|
||
if(pizhun.length>0){
|
||
pizhunFunction(pizhun);
|
||
}
|
||
$.ajax({
|
||
type: 'POST',
|
||
url: bonuspath + '/backstage/rm/taskRecord/batchApproval',
|
||
traditional: true,
|
||
data: { ids: selectedValues },
|
||
success: function(data) {
|
||
JY.Model.info("操作成功", function() {
|
||
getbaseList(1);
|
||
});
|
||
},
|
||
error: function(xhr) {
|
||
console.error("请求失败,状态码:", xhr.status);
|
||
console.error("响应内容:", xhr.responseText);
|
||
}
|
||
});
|
||
});
|
||
//审核
|
||
function aduitFunction(shenhe){
|
||
console.log(shenhe)
|
||
$.ajax({
|
||
type: 'POST',
|
||
url: bonuspath + '/backstage/new/isExamines',
|
||
traditional: true,
|
||
data: { id: shenhe.join(",") },
|
||
success: function(data) {
|
||
dataNum++;
|
||
},
|
||
error: function(xhr) {
|
||
console.error("请求失败,状态码:", xhr.status);
|
||
console.error("响应内容:", xhr.responseText);
|
||
}
|
||
});
|
||
}
|
||
|
||
function pizhunFunction(pizhun){
|
||
console.log(pizhun)
|
||
$.ajax({
|
||
type: 'POST',
|
||
url: bonuspath + '/backstage/new/isApprovals',
|
||
traditional: true,
|
||
data: { id: pizhun.join(",") },
|
||
success: function(data) {
|
||
|
||
},
|
||
error: function(xhr) {
|
||
console.error("请求失败,状态码:", xhr.status);
|
||
console.error("响应内容:", xhr.responseText);
|
||
}
|
||
});
|
||
|
||
}
|
||
|
||
|
||
// 全选逻辑
|
||
$('#checkAll').on('click', function(e) {
|
||
e.stopPropagation();
|
||
}).on('change', function() {
|
||
let checked = $(this).is(':checked');
|
||
$('.rowCheck').prop('checked', checked);
|
||
});
|
||
|
||
// 行内checkbox事件处理
|
||
$(document).on('click', '.rowCheck', function(e) {
|
||
e.stopPropagation();
|
||
});
|
||
|
||
$(document).on('change', '.rowCheck', function() {
|
||
let all = $('.rowCheck').length;
|
||
let checked = $('.rowCheck:checked').length;
|
||
$('#checkAll').prop('checked', all === checked);
|
||
});
|
||
|
||
// 关键词搜索框回车事件
|
||
$("#keyWord").keydown(function(e) {
|
||
var keycode = e.which || e.keyCode;
|
||
if (keycode == 13) {
|
||
search();
|
||
}
|
||
});
|
||
|
||
// 搜索按钮点击事件
|
||
$('#searchBtn').on('click', function() {
|
||
search();
|
||
});
|
||
});
|
||
|
||
function toggleButton() {
|
||
var value = $('#isFinish').val();
|
||
if (value === '1') {
|
||
$('#getSelectedBtn').prop('disabled', true).addClass('disabled');
|
||
} else {
|
||
$('#getSelectedBtn').prop('disabled', false).removeClass('disabled');
|
||
}
|
||
}
|
||
|
||
function search() {
|
||
$('.pageNum').val(1);
|
||
getbaseList(1);
|
||
}
|
||
|
||
function getbaseList(init) {
|
||
var isFinish = $("#isFinish").val();
|
||
var data = {pageNum: init, pageSize: 10};
|
||
var keyWord = $("#keyWord").val();
|
||
|
||
if(JY.Object.notNull(keyWord)){
|
||
data.keyWord = keyWord;
|
||
}
|
||
|
||
// 更新隐藏的页码输入框
|
||
$('.pageNum').val(init);
|
||
|
||
JY.Model.loading();
|
||
$.ajax({
|
||
type: "POST",
|
||
url: bonuspath + '/backstage/rm/taskRecord/findUnFinishContent?isFinish=' + isFinish,
|
||
data: JSON.stringify(data),
|
||
dataType: "html",
|
||
contentType: "application/json",
|
||
success: function(data) {
|
||
$('#checkAll').prop('checked', false);
|
||
$("#baseTable tbody").html(data);
|
||
JY.Model.loadingClose();
|
||
// 查询完成后更新按钮状态
|
||
toggleButton();
|
||
},
|
||
error: function(data) {
|
||
console.log("ajax请求错误!");
|
||
JY.Model.loadingClose();
|
||
}
|
||
});
|
||
}
|
||
|
||
function cleanForm() {
|
||
$("#auForm input[id$='unitName']").val("");
|
||
$("#auForm input[id$='projectName']").val("");
|
||
$("#auForm input[id$='taskName']").val("");
|
||
$("#auForm input[id$='agreementCode']").val("");
|
||
$("#auForm input[id$='personName']").val("");
|
||
$("#auForm input[id$='createTime']").val("");
|
||
$("#auForm input[id$='testLoad']").val("");
|
||
$("#auForm input[id$='holdingTime']").val("");
|
||
$("#auForm input[id$='operaTionName']").val("");
|
||
}
|
||
|
||
function assignment(data) {
|
||
$("#auForm input[id$='unitName']").val(data.unitName);
|
||
$("#auForm input[id$='projectName']").val(data.projectName);
|
||
$("#auForm input[id$='taskName']").val(data.taskName);
|
||
$("#auForm input[id$='agreementCode']").val(data.agreementCode);
|
||
$("#auForm input[id$='personName']").val(data.personName);
|
||
$("#auForm input[id$='createTime']").val(data.createTime);
|
||
$("#auForm input[id$='testLoad']").val(data.testLoad);
|
||
$("#auForm input[id$='holdingTime']").val(data.holdingTime);
|
||
$("#auForm input[id$='operaTionName']").val(data.operaTionName);
|
||
}
|
||
</script>
|
||
</body>
|
||
</html> |