代办任务状态选择后自动查询

This commit is contained in:
hayu 2025-12-04 10:40:54 +08:00
parent 4f9471db51
commit 1c784481c0
1 changed files with 91 additions and 87 deletions

View File

@ -26,32 +26,28 @@
<div class="widget-main"> <div class="widget-main">
&emsp;&nbsp;<font>任务状态:</font> &emsp;&nbsp;<font>任务状态:</font>
<select id="isFinish" name="isFinishs"> <select id="isFinish" name="isFinishs">
<option selected="selected" value="0">待办</option> <option selected="selected" value="0">待办</option>
<option value="1">已办</option> <option value="1">已办</option>
</select> </select>
<input type="text" id="keyWord" name="keyWord" placeholder="这里输入关键词" class="input-large"> <input type="text" id="keyWord" name="keyWord" placeholder="这里输入关键词" class="input-large">
<button id='searchBtn' class="btn btn-warning btn-sm" title="过滤" type="button" onclick="getbaseList(1)"><i class="icon-search bigger-110 icon-only"></i></button> <button id='searchBtn' class="btn btn-warning 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">批量审批</i></button> <button id='getSelectedBtn' class="btn btn-success btn-sm" title="过滤" type="button">批量审批</button>
</div> </div>
</div> </div>
<input type='hidden' class='pageNum' name='pageNum' value='1'/> <input type='hidden' class='pageNum' name='pageNum' value='1'/>
<input type='hidden' class='pageSize' name='pageSize' value='10'/> <input type='hidden' class='pageSize' name='pageSize' value='10'/>
</form> </form>
<table id="baseTable" class="table table-striped table-bordered table-hover" > <table id="baseTable" class="table table-striped table-bordered table-hover">
<thead> <thead>
<tr> <tr>
<th style="width:3%" class="center"> <th style="width:3%" class="center">
<label><input type="checkbox" class="ace" id="checkAll" ><span class="lbl"></span></label> <label><input type="checkbox" class="ace" id="checkAll"><span class="lbl"></span></label>
</th> </th>
<th style="width:5%" class="center hidden-480">序号</th> <th style="width:5%" class="center hidden-480">序号</th>
<!-- <th style="width:10%" class="center">单位名称</th>
<th style="width:15%" class="center">工程名称</th>
<th style="width:10%" class="center">任务单号</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>
<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>
<!-- <th style="width:10%" class="center">操作</th> -->
</tr> </tr>
</thead> </thead>
<tbody></tbody> <tbody></tbody>
@ -60,13 +56,11 @@
<div class="col-sm-4"> <div class="col-sm-4">
</div> </div>
<div class="col-sm-8"> <div class="col-sm-8">
<!--设置分页位置--> <div id="pageing" class="dataTables_paginate paging_bootstrap">
<div id="pageing" class="dataTables_paginate paging_bootstrap" >
<ul class="pagination"></ul> <ul class="pagination"></ul>
</div> </div>
</div> </div>
</div> </div>
<!-- #dialog-confirm -->
<%@include file="unFinishWorkListDetails.jsp" %> <%@include file="unFinishWorkListDetails.jsp" %>
<%@include file="../dialog.jsp" %> <%@include file="../dialog.jsp" %>
</div> </div>
@ -78,34 +72,30 @@
console.log('开始移动端检测...'); console.log('开始移动端检测...');
console.log('用户代理:', navigator.userAgent); console.log('用户代理:', navigator.userAgent);
console.log('当前URL:', window.location.href); console.log('当前URL:', window.location.href);
// 检测移动端并跳转
const isMobile = MobileDetect.isMobile(); const isMobile = MobileDetect.isMobile();
console.log('移动端检测结果:', isMobile); console.log('移动端检测结果:', isMobile);
if (isMobile) { if (isMobile) {
const currentUrl = window.location.href; const currentUrl = window.location.href;
console.log('当前URL分析:', currentUrl); console.log('当前URL分析:', currentUrl);
// 避免无限重定向 - 检查是否已经在移动端页面
if (currentUrl.indexOf('unFinishWorkList-mobile') !== -1) { if (currentUrl.indexOf('unFinishWorkList-mobile') !== -1) {
console.log('已在移动端页面,跳过跳转'); console.log('已在移动端页面,跳过跳转');
return; return;
} }
// 构建移动端页面URL const baseUrl = currentUrl.split('?')[0];
const baseUrl = currentUrl.split('?')[0]; // 去掉查询参数 const queryParams = currentUrl.split('?')[1] || '';
const queryParams = currentUrl.split('?')[1] || ''; // 保留查询参数
// 将 show 替换为 showMobile
let mobileUrl = baseUrl.replace('/show', '/showMobile'); let mobileUrl = baseUrl.replace('/show', '/showMobile');
if (queryParams) { if (queryParams) {
mobileUrl += '?' + queryParams; mobileUrl += '?' + queryParams;
} }
console.log('准备跳转到移动端页面:', mobileUrl); console.log('准备跳转到移动端页面:', mobileUrl);
console.log('执行跳转到移动端页面'); console.log('执行跳转到移动端页面');
setTimeout(function() { setTimeout(function() {
window.location.href = mobileUrl; window.location.href = mobileUrl;
}, 100); }, 100);
@ -117,45 +107,60 @@
function edit(id,definitionId){ function edit(id,definitionId){
cleanForm(); cleanForm();
$.ajax({ $.ajax({
type : 'POST', type: 'POST',
url : bonuspath + '/backstage/rm/taskRecord/findUnFinishContentDetails', url: bonuspath + '/backstage/rm/taskRecord/findUnFinishContentDetails',
data : { data: {
id:id, id:id,
definitionId: definitionId definitionId: definitionId
}, },
success : function(data) { success: function(data) {
JY.Model.check("auDiv"); JY.Model.check("auDiv");
var list = data[0]; var list = data[0];
console.log("##########"); console.log("##########");
console.log(list); console.log(list);
console.log("##########"); console.log("##########");
assignment(list); assignment(list);
}, },
error : function(e) { error: function(e) {
}, },
dataType : 'json' dataType: 'json'
}); });
} }
document.addEventListener("visibilitychange", function () { document.addEventListener("visibilitychange", function() {
if (document.visibilityState === "visible") { if (document.visibilityState === "visible") {
refreshTable(); // 页面激活时刷新表格 refreshTable();
} }
}); });
function refreshTable() { function refreshTable() {
console.log("页面重新激活,刷新任务列表..."); console.log("页面重新激活,刷新任务列表...");
getbaseList(1); // 重新请求表格数据 getbaseList(1);
} }
$(function() { $(function() {
// 获取所有选中的 value你可以绑定按钮触发 // 页面加载完成后立即获取待办列表
$('#getSelectedBtn').on('click', 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') let selectedValues = $('.rowCheck:checked')
.map(function () { .map(function() {
return $(this).val(); return $(this).val();
}).get(); // 转为数组 }).get();
if(selectedValues.length == 0){ if(selectedValues.length == 0){
JY.Model.info("您没有选择任何内容!"); JY.Model.info("您没有选择任何内容!");
return; return;
@ -168,95 +173,95 @@
traditional: true, traditional: true,
data: { ids: selectedValues }, data: { ids: selectedValues },
success: function(data) { success: function(data) {
JY.Model.info("操作成功",function () { JY.Model.info("操作成功", function() {
getbaseList(1); getbaseList(1);
}); });
}, },
error: function(xhr) { error: function(xhr) {
console.error("请求失败,状态码:", xhr.status); console.error("请求失败,状态码:", xhr.status);
console.error("响应内容:", xhr.responseText); console.error("响应内容:", xhr.responseText);
} }
}); });
}); });
getbaseList(1);
$(document).ready(function () {
// 下拉框改变时监听
$('#isFinish').change(function () {
toggleButton();
});
$('.rowCheck').prop('checked', false); // 取消所有 rowCheck 的选中状态
$('#checkAll').prop('checked', false); // 如果你还有全选框,也一并清除
});
// 全选逻辑 // 全选逻辑
$('#checkAll').on('click', function (e) { $('#checkAll').on('click', function(e) {
e.stopPropagation(); // ✅ 阻止冒泡 e.stopPropagation();
}).on('change', function () { }).on('change', function() {
let checked = $(this).is(':checked'); let checked = $(this).is(':checked');
$('.rowCheck').prop('checked', checked); $('.rowCheck').prop('checked', checked);
}); });
// 行内 checkbox阻止冒泡 + 同步全选框 // 行内checkbox事件处理
$(document).on('click', '.rowCheck', function (e) { $(document).on('click', '.rowCheck', function(e) {
e.stopPropagation(); // ✅ 阻止冒泡 e.stopPropagation();
}); });
// 如果所有行都被勾选了,全选框也自动勾选;否则取消
$(document).on('change', '.rowCheck', function () { $(document).on('change', '.rowCheck', function() {
let all = $('.rowCheck').length; let all = $('.rowCheck').length;
let checked = $('.rowCheck:checked').length; let checked = $('.rowCheck:checked').length;
$('#checkAll').prop('checked', all === checked); $('#checkAll').prop('checked', all === checked);
}); });
// 关键词搜索框回车事件
$("#keyWord").keydown(function(e) { $("#keyWord").keydown(function(e) {
keycode = e.which || e.keyCode; var keycode = e.which || e.keyCode;
if (keycode == 13) { if (keycode == 13) {
search(); search();
} }
}); });
});
// 搜索按钮点击事件
$('#searchBtn').on('click', function() {
search();
});
});
function toggleButton() { function toggleButton() {
var value = $('#isFinish').val(); var value = $('#isFinish').val();
if (value === '1') { if (value === '1') {
$('#getSelectedBtn').prop('disabled', true); // 禁用按钮 $('#getSelectedBtn').prop('disabled', true).addClass('disabled');
} else { } else {
$('#getSelectedBtn').prop('disabled', false); // 启用按钮 $('#getSelectedBtn').prop('disabled', false).removeClass('disabled');
} }
} }
function search(){ function search() {
$("#search").trigger("click"); $('.pageNum').val(1);
getbaseList(1);
} }
function getbaseList(init) { function getbaseList(init) {
var isFinish =$("#isFinish").val(); var isFinish = $("#isFinish").val();
var data = {pageNum:init}; var data = {pageNum: init, pageSize: 10};
data = {pageNum:init,pageSize:10 };
var keyWord = $("#keyWord").val(); var keyWord = $("#keyWord").val();
console.log("keyw=",keyWord);
if(JY.Object.notNull(keyWord)){ if(JY.Object.notNull(keyWord)){
data.keyWord = keyWord; data.keyWord = keyWord;
} }
data = Object.assign(data,obj);
// 更新隐藏的页码输入框
$('.pageNum').val(init);
JY.Model.loading(); JY.Model.loading();
$.ajax({ $.ajax({
type:"POST", type: "POST",
url:bonuspath +'/backstage/rm/taskRecord/findUnFinishContent?isFinish='+isFinish, url: bonuspath + '/backstage/rm/taskRecord/findUnFinishContent?isFinish=' + isFinish,
data: JSON.stringify(data ), data: JSON.stringify(data),
dataType:"html", dataType: "html",
contentType:"application/json", contentType: "application/json",
success:function(data){ success: function(data) {
$('#checkAll').prop('checked', false); // 如果你还有全选框,也一并清除 $('#checkAll').prop('checked', false);
$("#baseTable tbody").html(data); $("#baseTable tbody").html(data);
JY.Model.loadingClose(); JY.Model.loadingClose();
// 查询完成后更新按钮状态
toggleButton();
}, },
error:function(data){ error: function(data) {
console.log("ajax请求错误!"); console.log("ajax请求错误!");
JY.Model.loadingClose();
} }
}) });
} }
function cleanForm() { function cleanForm() {
@ -264,19 +269,18 @@
$("#auForm input[id$='projectName']").val(""); $("#auForm input[id$='projectName']").val("");
$("#auForm input[id$='taskName']").val(""); $("#auForm input[id$='taskName']").val("");
$("#auForm input[id$='agreementCode']").val(""); $("#auForm input[id$='agreementCode']").val("");
$("#auForm input[id$='personName']").val(""); $("#auForm input[id$='personName']").val("");
$("#auForm input[id$='createTime']").val(""); $("#auForm input[id$='createTime']").val("");
$("#auForm input[id$='testLoad']").val(""); $("#auForm input[id$='testLoad']").val("");
$("#auForm input[id$='holdingTime']").val(""); $("#auForm input[id$='holdingTime']").val("");
$("#auForm input[id$='operaTionName']").val(""); $("#auForm input[id$='operaTionName']").val("");
} }
function assignment(data){
function assignment(data) {
$("#auForm input[id$='unitName']").val(data.unitName); $("#auForm input[id$='unitName']").val(data.unitName);
$("#auForm input[id$='projectName']").val(data.projectName); $("#auForm input[id$='projectName']").val(data.projectName);
$("#auForm input[id$='taskName']").val(data.taskName); $("#auForm input[id$='taskName']").val(data.taskName);
$("#auForm input[id$='agreementCode']").val(data.agreementCode); $("#auForm input[id$='agreementCode']").val(data.agreementCode);
$("#auForm input[id$='personName']").val(data.personName); $("#auForm input[id$='personName']").val(data.personName);
$("#auForm input[id$='createTime']").val(data.createTime); $("#auForm input[id$='createTime']").val(data.createTime);
$("#auForm input[id$='testLoad']").val(data.testLoad); $("#auForm input[id$='testLoad']").val(data.testLoad);