软测单独项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

349 lines
18 KiB

11 months ago
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>数据统计--科宁智慧安全社区后台管理</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">
<link rel="stylesheet" href="/js/layui/css/layui.css" media="all" />
<link rel="stylesheet" href="/css/public.css" media="all" />
<script src="/js/jquery-2.1.3.min.js" type="text/javascript"></script>
</head>
<body style="border: 1px solid #0c6f89;
background: rgba(12, 70, 100, 0.8);
padding: 20px;
box-sizing: border-box;
">
<div class="layui-col-lg10 layui-col-md10 layui-col-xs10" style=" position: absolute; z-index: 998; width: 98%; overflow: hidden; overflow-y: auto; box-sizing: border-box; border: 1px solid #0c6f89; background: rgba(12, 70, 100, 0.8); border-radius: 4px; padding: 20px; ">
<div style="width:100%;">
<div class="layui-inline">
<label class="layui-form-label">查询时间</label>
<div class="layui-input-inline">
<input type="text" class="layui-input" id="ipt_month" placeholder="yyyy-MM">
</div>
</div>
<button class="layui-btn" id="btn_seach">查询</button>
<div class="layui-tab">
<ul class="layui-tab-title">
<li class="layui-this">综合统计</li>
<li>人员信息缺失名单</li>
<li>一次未考勤信息</li>
<li>考勤每日数据</li>
<li>统计表</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<table id="tbl_Month_Stat" lay-filter="tbl_Month_Stat"></table>
</div>
<div class="layui-tab-item">
<table id="tbl_Emp_Err" lay-filter="tbl_Emp_Err"></table>
</div>
<div class="layui-tab-item">
<table id="tbl_EmpAttendOneNot" lay-filter="tbl_EmpAttendOneNot"></table>
</div>
<div class="layui-tab-item">
<table id="tbl_Month_Day_attend" lay-filter="tbl_Month_Day_attend"></table>
</div>
<div class="layui-tab-item">
<table id="tbl_Month_Yoy" lay-filter="tbl_Month_Yoy"></table>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/js/layui/layui.js"></script>
<link rel="stylesheet" href="/css/right-list.css" media="all" />
<link rel="stylesheet" href="/css/bulletframebg.css" media="all" />
</div>
<script type="text/javascript">
layui.use(['laydate', 'form', 'layer', 'table'], function () {
var table = layui.table;
var laydate = layui.laydate;
//年月选择器
laydate.render({
elem: '#ipt_month'
, type: 'month'
, max: 1
, min: '2024-03-01'
});
$("#btn_seach").click(function () {
//alert($("#ipt_month").val());
var dtm = $("#ipt_month").val();
if (dtm.length < 1) {
layer.open({ title: '信息', content: '请选择查询时间' });
return;
}
// 获取当前时间
var today = new Date();
// 获取当前时间(today)的年份
var year = today.getFullYear();
// 获取月份
var month = String(today.getMonth() + 1).padStart(2, '0');
if (dtm == year + '-' + month) {
layer.open({ title: '信息', content: '查询时间请提前一个月' });
return;
}
//综合统计
var tableIns = table.render({
elem: '#tbl_Month_Stat',
title: dtm + '综合统计',
url: '/ashx/CommonHandler.ashx',
where: {
Action: 'GetZDZHTJ'
, dtm: dtm
, random: new Date().getTime()//随机参数
},
cellMinWidth: 95,
async: false,
toolbar: true,
defaultToolbar: ['filter', 'print', 'exports'],
limit: 15,
cols: [[
{ field: 'ORG_NAME', title: '支队', minWidth: 80, align: "center" },
{ field: 'N1', title: '总人数', align: 'center', minWidth: 60 },
{ field: 'N2', title: '考勤总数', align: 'center', minWidth: 60 },
{ field: 'N3', title: '正常考勤', align: 'center', minWidth: 60 },
{ field: 'N4', title: '考勤率', align: 'center', minWidth: 60, templet: function (d) { return d.N4 + "%"; } },
{ field: 'N5', title: '一次未考勤人数', align: 'center', minWidth: 150 },
{ field: 'N6', title: '信息缺失人数', align: 'center', minWidth: 60 },
{ field: 'N7', title: '人员信息缺失率', align: 'center', minWidth: 60, templet: function (d) { return d.N7 + "%"; } },
{ field: 'N8', title: '计划出操总人数', align: 'center', minWidth: 60 },
{ field: 'N9', title: '出操人数', align: 'center', minWidth: 60 },
{ field: 'N10', title: '未出操人数', align: 'center', minWidth: 60 },
{ field: 'N11', title: '出操率', align: 'center', minWidth: 60, templet: function (d) { return d.N11 + "%"; } },
{ field: 'N16', title: '查铺查哨完成率', align: 'center', minWidth: 60, templet: function (d) { return d.N16 + "%"; } },
{ field: 'N17', title: '巡查巡检完成率', align: 'center', minWidth: 60, templet: function (d) { return d.N17 + "%"; } },
{ field: 'N18', title: '未排班', align: 'center', minWidth: 60 },
{ field: 'N19', title: '未一日安排', align: 'center', minWidth: 60 },
]]
});
//考勤每日数据
var tableIns = table.render({
elem: '#tbl_Month_Day_attend',
title: dtm + '考勤每日数据',
url: '/ashx/CommonHandler.ashx',
where: {
Action: 'GetDayAttend'
, dtm: dtm
, random: new Date().getTime()//随机参数
},
cellMinWidth: 95,
toolbar: true,
defaultToolbar: ['filter', 'print', 'exports'],
limit: 15,
cols: [[
{ field: 'ORG_NAME', title: '支队', minWidth: 80, align: "center" },
{ field: 'N01', title: '01', align: 'center', minWidth: 60 },
{ field: 'N02', title: '02', align: 'center', minWidth: 60 },
{ field: 'N03', title: '03', align: 'center', minWidth: 60 },
{ field: 'N04', title: '04', align: 'center', minWidth: 60 },
{ field: 'N05', title: '05', align: 'center', minWidth: 60 },
{ field: 'N06', title: '06', align: 'center', minWidth: 60 },
{ field: 'N07', title: '07', align: 'center', minWidth: 60 },
{ field: 'N08', title: '08', align: 'center', minWidth: 60 },
{ field: 'N09', title: '09', align: 'center', minWidth: 60 },
{ field: 'N10', title: '10', align: 'center', minWidth: 60 },
{ field: 'N11', title: '11', align: 'center', minWidth: 60 },
{ field: 'N12', title: '12', align: 'center', minWidth: 60 },
{ field: 'N13', title: '13', align: 'center', minWidth: 60 },
{ field: 'N14', title: '14', align: 'center', minWidth: 60 },
{ field: 'N15', title: '15', align: 'center', minWidth: 60 },
{ field: 'N16', title: '16', align: 'center', minWidth: 60 },
{ field: 'N17', title: '17', align: 'center', minWidth: 60 },
{ field: 'N18', title: '18', align: 'center', minWidth: 60 },
{ field: 'N19', title: '19', align: 'center', minWidth: 60 },
{ field: 'N20', title: '20', align: 'center', minWidth: 60 },
{ field: 'N21', title: '21', align: 'center', minWidth: 60 },
{ field: 'N22', title: '22', align: 'center', minWidth: 60 },
{ field: 'N23', title: '23', align: 'center', minWidth: 60 },
{ field: 'N24', title: '24', align: 'center', minWidth: 60 },
{ field: 'N25', title: '25', align: 'center', minWidth: 60 },
{ field: 'N26', title: '26', align: 'center', minWidth: 60 },
{ field: 'N27', title: '27', align: 'center', minWidth: 60 },
{ field: 'N28', title: '28', align: 'center', minWidth: 60 },
{ field: 'N29', title: '29', align: 'center', minWidth: 60 },
{ field: 'N30', title: '30', align: 'center', minWidth: 60 },
{ field: 'N31', title: '31', align: 'center', minWidth: 60 },
]]
});
//一次未考勤人员
var tableIns = table.render({
elem: '#tbl_EmpAttendOneNot',
title: dtm + '一次未考勤人员',
url: '/ashx/CommonHandler.ashx',
where: {
Action: 'GetEmpAttendOneNot'
, dtm: dtm
, random: new Date().getTime()//随机参数
},
cellMinWidth: 95,
toolbar: true,
defaultToolbar: ['filter', 'print', 'exports'],
limit: 15,
//
cols: [[
{ field: 'ORG_NAME1', title: '支队', minWidth: 80, align: "center" },
{ field: 'ORG_NAME', title: '营区', minWidth: 80, align: "center" },
{ field: 'EMP_NAME', title: '人员', align: 'center', minWidth: 60 },
]]
});
//考勤每日数据
var tableIns = table.render({
elem: '#tbl_Emp_Err',
title: dtm + '考勤每日数据',
url: '/ashx/CommonHandler.ashx',
where: {
Action: 'GetEmpInfoErr'
, dtm: dtm
, random: new Date().getTime()//随机参数
},
cellMinWidth: 95,
toolbar: true,
defaultToolbar: ['filter', 'print', 'exports'],
limit: 15,
//
cols: [[
{ field: 'ONAME', title: '营区', minWidth: 80, align: "center" },
{ field: 'N2', title: '性别', align: 'center', minWidth: 60 },
{ field: 'N3', title: '身份证号', align: 'center', minWidth: 60 },
{ field: 'N4', title: '手机号', align: 'center', minWidth: 60 },
{ field: 'N5', title: '编号', align: 'center', minWidth: 60 },
{ field: 'N8', title: '学历', align: 'center', minWidth: 60 },
{ field: 'N9', title: '民族', align: 'center', minWidth: 60 },
{ field: 'N10', title: '血型', align: 'center', minWidth: 60 },
{ field: 'N11', title: '政治面貌', align: 'center', minWidth: 60 },
{ field: 'N12', title: '在岗', align: 'center', minWidth: 60 },
{ field: 'N13', title: '职位类型', align: 'center', minWidth: 60 },
{ field: 'N14', title: '消防救援衔', align: 'center', minWidth: 60 },
{ field: 'N15', title: '入伍时间', align: 'center', minWidth: 60 },
{ field: 'N16', title: '标签', align: 'center', minWidth: 60 },
{ field: 'N17', title: '账号', align: 'center', minWidth: 60 },
{ field: 'N18', title: '照片', align: 'center', minWidth: 60 },
]]
});
//上月同比
var tableIns = table.render({
elem: '#tbl_Month_Yoy',
title: dtm + '上月同比',
url: '/ashx/CommonHandler.ashx',
where: {
Action: 'GetMonthYoy'
, dtm: dtm
, random: new Date().getTime()//随机参数
},
cellMinWidth: 95,
toolbar: true,
defaultToolbar: ['filter', 'print', 'exports'],
limit: 15,
//
cols: [[
{ field: 'ORG_NAME', title: '营区', minWidth: 80, align: "center" },
{
field: 'N4', title: '考勤率', align: 'center', minWidth: 60, templet: function (d) {
switch (d.N4_UD) {
case '持平':
return d.N4 + "%" + '(持平)';
break;
case '1':
return d.N4 + "%" + '(' + d.N4_ABS + '%↑)';
case '0':
return '<span style="color:red;"> ' + d.N4 + "%" + '(' + d.N4_ABS + '%↓)</span>';
default:
return '参数错误';
}
}
},
{
field: 'N7', title: '人员信息缺失率', align: 'center', minWidth: 60, templet: function (d) {
switch (d.N7_UD) {
case '持平':
return d.N7 + "%" + '(持平)';
break;
case '1':
return d.N7 + "%" + '(' + d.N7_ABS + '%↑)';
case '0':
return '<span style="color:red;"> ' + d.N7 + "%" + '(' + d.N7_ABS + '%↓)</span>';
default:
return '参数错误';
}
}
},
{
field: 'N11', title: '出操率', align: 'center', minWidth: 60, templet: function (d) {
switch (d.N11_UD) {
case '持平':
return d.N11 + "%" + '(持平)';
break;
case '1':
return d.N11 + "%" + '(' + d.N11_ABS + '%↑)';
case '0':
return '<span style="color:red;"> ' + d.N11 + "%" + '(' + d.N11_ABS + '%↓)</span>';
default:
return '参数错误';
}
}
},
{
field: 'N16', title: '查铺查哨完成率', align: 'center', minWidth: 60, templet: function (d) {
switch (d.N16_UD) {
case '持平':
return d.N16 + "%" + '(持平)';
break;
case '1':
return d.N16 + "%" + '(' + d.N16_ABS + '%↑)';
case '0':
return '<span style="color:red;"> ' + d.N16 + "%" + '(' + d.N16_ABS + '%↓)</span>';
default:
return '参数错误';
}
}
},
{
field: 'N17', title: '巡查巡检完成率', align: 'center', minWidth: 60, templet: function (d) {
switch (d.N17_UD) {
case '持平':
return d.N17 + "%" + '(持平)';
break;
case '1':
return d.N17 + "%" + '(' + d.N17_ABS + '%↑)';
case '0':
return '<span style="color:red;"> ' + d.N17 + "%" + '(' + d.N17_ABS + '%↓)</span>';
default:
return '参数错误';
}
}
},
]]
});
});
});
</script>
</body>
</html>