jjsp_web/bns/js/dutyTask/ticketMge.js

297 lines
9.1 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

let form, layer,laydate, table, formSelects, user = getUser(), riskLevelList, orgList;
let pageNum = 1, limitSize = 30; // 默认第一页分页数量为10
layui.config({
base: "../../js/layui/", //此处路径请自行处理, 可以使用绝对路径
}).extend({
formSelects: 'formSelects-v4'
}).use(['form', 'layer', 'table', 'formSelects','laydate'], function () {
form = layui.form;
layer = layui.layer;
table = layui.table;
laydate = layui.laydate;
laydate.render({
elem: '#startDate', //指定元素 元素选择器
type: 'date', //选择时间类型 可选值:year(年) month(年月) date(年月日) time(时分秒) datetime(年月日时分秒)
trigger: 'click',
format: 'yyyy-MM-dd', //时间格式 常用时间格式:yyyy-MM-dd HH:mm:ss
btns: ['clear', 'now', 'confirm'], //选择框右下角显示的按钮 清除-现在-确定
done: function (value, date) { //时间回调
}
});
formSelects = layui.formSelects;
riskLevelList = getRiskLevelSelect('risk_level');
setRiskLevel();
orgList = getOrgNumAndRate(1);
setOrg();
pages(1, 30, 1);
})
function pages(pageNum, pageSize, typeNum) {
let params = getReqParams(pageNum, pageSize, typeNum);
$.ajax({
headers: {
"encrypt": sm3(JSON.stringify(params))
},
url: dataUrl + "proteam/pot/workPermit/getTicketList?token=" + token,
data: params,
type: 'POST',
async: false,
success: function (result) {
if (result.code === 200) {
if (result.data) {
initTable(result.data, result.limit, result.curr)
laypages(result.count, result.curr, result.limit)
}
} else if (result.code === 500) {
layer.alert(result.msg, {icon: 2})
} else if (result.code === 401) {
logout(1);
}
}, error: function () {
}
});
}
function laypages(total, page, limit) {
layui.use(['laypage'], function () {
let laypage = layui.laypage;
laypage.render({
elem: 'voi-page',
count: total,
curr: page,
limit: limit,
limits: [30, 50, 100],
layout: ['prev', 'page', 'next', 'skip', 'count', 'limit'],
groups: 5,
jump: function (obj, first) {
if (!first) {
pageNum = obj.curr, limitSize = obj.limit;
pages(obj.curr, obj.limit, null);
}
}
});
})
}
/*初始化表格*/
function initTable(dataList, limit, page) {
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
tableIns = table.render({
elem: "#dutyStatisticTable",
height: "full-120",
data: dataList,
limit: limit,
cols: [
[
//表头
{
title: "序号",
width: 80,
unresize: true,
align: "center",
templet: function (d) {
return (page - 1) * limit + d.LAY_INDEX;
}
},
{
field: "cityName",
title: "建管单位",
width: 120,
unresize: true,
align: "center",
},
{
field: "jobNum",
title: "作业票号",
width: 200,
unresize: true,
align: "center",
sort: true
},
{
field: "jobName",
title: "作业票名称",
unresize: true,
align: "center",
},
{
field: "plannedStartDate",
title: "计划开始时间",
unresize: true,
align: "center",
},
{
field: "plannedEndDate",
title: "计划结束时间",
unresize: true,
align: "center",
},
{
field: "riskLevel",
title: "风险等级",
width: 140,
unresize: true,
align: "center",
sort: true,
templet: function (d) {
return setRiskLevelColor(d.riskLevel);
}
},
{
field: "jobCurrentState",
title: "作业票状态",
unresize: true,
align: "center",
sort: true
},
{
field: "projectName",
title: "单项工程名称",
unresize: true,
align: "center",
sort: true
},
{
field: "jobTeam",
title: "作业班组",
unresize: true,
align: "center",
sort: true
},
{
field: "createTime",
title: "创建时间",
unresize: true,
align: "center",
sort: true
},
{
field: "updateTime",
title: "更新时间",
unresize: true,
align: "center",
sort: true
},
],
],
done: function (res, curr, count) {
layer.close(loadingMsg);
table.resize("dutyStatisticTable");
count || this.elem.next(".layui-table-view").find(".layui-table-header").css("display", "inline-block");
count || this.elem.next(".layui-table-view").find(".layui-table-box").css("overflow", "auto");
},
});
}
// 获取参数
function getReqParams(page, limit, type) {
let obj = {};
if (!type) {
obj = {
page: page + "",
limit: limit + "",
keyWord: $("#keyWord").val(),
jobCurrentState: $("#jobCurrentState").val(),
cityName: setValue2(formSelects.value('cityName', 'val').toString()),
riskLevel: setValue2(formSelects.value('riskLevel', 'val').toString()),
startDate:$('#startDate').val()
};
} else {
obj = {
page: '1',
limit: '30',
keyWord: '',
jobCurrentState: '',
cityName: '',
riskLevel: '',
startDate:''
};
}
return obj;
}
// 查询/重置
function query() {
let pattern = new RegExp("[%_<>]");
if (pattern.test($("#keyWord").val())) {
$("#keyWord").val('');
return layer.msg('关键字查询包含特殊字符,请重新输入', {
icon: 2,
time: 2000 //2秒关闭如果不配置默认是3秒
});
}
let cityName = formSelects.value('cityName', 'val');
orgList = getOrgNumAndRate();
setOrg();
formSelects.value('cityName', cityName)
pageNum = 1;
pages(1, limitSize);
}
/*建管单位赋值*/
function setOrg() {
let keys = [];
$.each(orgList, function (index, item) {
let temp = {
"name": item.name + "" + item.num + "" + item.rate + "",
"value": item.code,
"titleName": item.name
};
keys.push(temp);
})
formSelects.data('cityName', 'local', {
arr: keys
});
layui.form.render();
}
/* 风险等级赋值 */
function setRiskLevel() {
let keys = [];
$.each(riskLevelList, function (index, item) {
let temp = {
"name": item.name,
"value": item.code
};
keys.push(temp);
})
formSelects.data('riskLevel', 'local', {
arr: keys
});
layui.form.render();
}
// 地市站班会数量和占比
function getOrgNumAndRate(type) {
let dataList = [];
let params = getReqParams(null, null, type);
$.ajax({
headers: {
"encrypt": sm3(JSON.stringify(params))
},
url: dataUrl + 'proteam/pot/workPermit/getOrgNumAndRate?token=' + token,
data: params,
type: 'POST',
async: false,
success: function (result) {
let data = result.data;
if (result.code === 500) {
return layer.alert(data.msg, {icon: 2})
} else if (result.code === 401) {
logout(1);
} else if (result.code === 200) {
if (data && data.length > 0) {
$.each(data, function (index, item) {
dataList.push(item)
})
}
}
}, error: function () {
}
});
return dataList;
}