352 lines
19 KiB
HTML
352 lines
19 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<!-- 领导审查 -->
|
|
<base href="/inspection/">
|
|
<meta charset="utf-8">
|
|
<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.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
|
<link rel="stylesheet" href="assets/fonts/font-awesome/css/font-awesome.css"/>
|
|
<link rel="stylesheet" href="assets/layuiadmin/layui/css/layui.css" media="all">
|
|
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
|
|
<link rel="stylesheet" href="assets/js/vendor/swiper3/css/swiper.min.css" media="all">
|
|
<link rel="stylesheet" href="assets/css/list-css.css" media="all">
|
|
</head>
|
|
<body>
|
|
<div class="layui-fluid layui-anim layui-anim-fadein">
|
|
<div class="layui-row layui-col-space15">
|
|
<div class="layui-col-md12">
|
|
<div class="layui-card">
|
|
<div class="layui-card-body">
|
|
<div class="test-table-reload-btn" style="margin-bottom: 10px;">
|
|
<div class="layui-inline search-item-width-100">
|
|
<input type="text" id="keywords" class="layui-input search-item" placeholder="输入关键字">
|
|
</div>
|
|
<div class="layui-inline layui-form search-item" id="typeSelectTemplateBox" lay-filter="typeSelectTemplateBox"></div>
|
|
<script id="typeSelectTemplate" type="text/html">
|
|
<select id="type" name="type">
|
|
<option value="">企业类型</option>
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
|
<option value="{{item.dictionaryId}}">{{item.dictionaryName}}</option>
|
|
{{# } }}
|
|
</select>
|
|
</script>
|
|
<div class="layui-inline layui-form search-item" id="industrySelectTemplateBox" lay-filter="industrySelectTemplateBox"></div>
|
|
<script id="industrySelectTemplate" type="text/html">
|
|
<select id="industry" name="industry">
|
|
<option value="">管理行业</option>
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
|
<option value="{{item.dictionaryId}}">{{item.dictionaryName}}</option>
|
|
{{# } }}
|
|
</select>
|
|
</script>
|
|
<button type="button" id="search" class="layui-btn layui-btn-sm">
|
|
<i class="fa fa-lg fa-search"></i> 搜索
|
|
</button>
|
|
</div>
|
|
<table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script src="assets/js/vendor/swiper3/js/swiper.min.js"></script>
|
|
<script src="assets/layuiadmin/layui/layui.js"></script>
|
|
<script>
|
|
layui.config({
|
|
base: 'assets/layuiadmin/'
|
|
}).extend({
|
|
index: 'lib/index'
|
|
}).use(['index', 'table', 'laydate', 'common'], function() {
|
|
var $ = layui.$;
|
|
var $win = $(window);
|
|
var table = layui.table;
|
|
var admin = layui.admin;
|
|
var laydate = layui.laydate;
|
|
var form = layui.form;
|
|
var laytpl = layui.laytpl;
|
|
var common = layui.common;
|
|
var resizeTimeout = null;
|
|
var tableUrl = 'api/check/listpageleadercheckofmine';
|
|
|
|
// 初始化企业类型下拉选择
|
|
function initTypeSelect() {
|
|
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/612415f3-0ebb-4bc2-b713-e9fb1acc7f76', []), {}, null, function(code, data, args) {
|
|
laytpl(document.getElementById('typeSelectTemplate').innerHTML).render(data, function(html) {
|
|
document.getElementById('typeSelectTemplateBox').innerHTML = html;
|
|
});
|
|
form.render('select', 'typeSelectTemplateBox');
|
|
}, function(code, data) {
|
|
top.dialog.msg(data.msg);
|
|
});
|
|
}
|
|
initTypeSelect();
|
|
// 初始化管理行业下拉选择
|
|
function initIndustrySelect() {
|
|
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/b97630ab-45b7-45bc-a624-507d4df952ff', []), {}, null, function(code, data, args) {
|
|
laytpl(document.getElementById('industrySelectTemplate').innerHTML).render(data, function(html) {
|
|
document.getElementById('industrySelectTemplateBox').innerHTML = html;
|
|
});
|
|
form.render('select', 'industrySelectTemplateBox');
|
|
}, function(code, data) {
|
|
top.dialog.msg(data.msg);
|
|
});
|
|
}
|
|
initIndustrySelect();
|
|
|
|
// 初始化表格
|
|
function initTable() {
|
|
table.render({
|
|
elem: '#dataTable',
|
|
id: 'dataTable',
|
|
url: top.restAjax.path(tableUrl, []),
|
|
width: admin.screen() > 1 ? '100%' : '',
|
|
height: $win.height() - 90,
|
|
limit: 20,
|
|
limits: [20, 40, 60, 80, 100, 200],
|
|
request: {
|
|
pageName: 'page',
|
|
limitName: 'rows'
|
|
},
|
|
cols: [[
|
|
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
|
|
{field:'photos', width: 200, title: '企业图片',
|
|
templet: function(row) {
|
|
var photos = '';
|
|
if(row.factoryGateByEnterpriseId) {
|
|
var photoArray = row.factoryGateByEnterpriseId.split(',');
|
|
for(var i = 0, item; item = photoArray[i++];) {
|
|
photos += '<img class="swiper-slide" src="route/file/downloadfile/false/'+ item +'">';
|
|
}
|
|
}
|
|
if(row.workplaceByEnterpriseId) {
|
|
var photoArray = row.workplaceByEnterpriseId.split(',');
|
|
for(var i = 0, item; item = photoArray[i++];) {
|
|
photos += '<img class="swiper-slide" src="route/file/downloadfile/false/'+ item +'">';
|
|
}
|
|
}
|
|
if(!photos) {
|
|
photos = '<img class="swiper-slide" src="assets/images/nonephoto.jpg">';
|
|
}
|
|
var photoDiv = '<div id="photo_'+ row.checkId +'" class="swiper-container enterprise-photos-box"><div class="swiper-wrapper">'+ photos +'</div></div>';
|
|
setTimeout(function() {
|
|
new Swiper('#photo_'+ row.checkId, {
|
|
autoplay: 3000
|
|
})
|
|
}, 50);
|
|
return photoDiv;
|
|
}
|
|
},
|
|
{field:'col1', width: 300, title: '检查企业', align: 'center',
|
|
templet: function(row) {
|
|
var infoDiv = '<table>';
|
|
infoDiv += '<tr><td colspan="2" class="col-content">'+ row.gmtCreate +'</td></tr>';
|
|
infoDiv += '<tr><td class="col-title">企业名称</td><td class="col-content"><div class="col-content-name" title="'+ row.nameJoinByEnterpriseId +'">'+ row.nameJoinByEnterpriseId +'</div></td></tr>';
|
|
infoDiv += '<tr><td class="col-title">企业类型</td><td class="col-content">'+ row.typeDictionaryName +'</td></tr>';
|
|
infoDiv += '</table>';
|
|
return infoDiv;
|
|
}
|
|
},
|
|
{field:'col2', width: 400, title: '行业风险', align: 'center',
|
|
templet: function(row) {
|
|
var infoDiv = '<table>';
|
|
infoDiv += '<tr><td class="col-title">管理行业</td><td class="col-content">'+ (row.industryDictionaryName ? row.industryDictionaryName : '-') +'</td></tr>';
|
|
infoDiv += '<tr><td class="col-title">作业风险</td><td class="col-content">'+ (row.riskOperationDictionaryName ? row.riskOperationDictionaryName : '-') +'</td></tr>';
|
|
if(row.enterpriseLngByEnterpriseId && row.enterpriseLatByEnterpriseId) {
|
|
infoDiv += '<tr><td colspan="2" class="col-content"><div class="col-content-div enterprise-location" title="'+ row.addressJoinByEnterpriseId +'" data-lng="'+ row.enterpriseLngByEnterpriseId +'" data-lat="'+ row.enterpriseLatByEnterpriseId +'" data-enterprise-name="'+ row.nameJoinByEnterpriseId +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'"><i class="fa fa-map-marker"></i> '+ (row.addressJoinByEnterpriseId ? row.addressJoinByEnterpriseId : '查看企业定位') +'</div></td></tr>';
|
|
} else {
|
|
infoDiv += '<tr><td colspan="2" class="col-content"><div class="col-content-div" title="'+ row.addressJoinByEnterpriseId +'">'+ (row.addressJoinByEnterpriseId ? row.addressJoinByEnterpriseId : '-') +'</div></td></tr>';
|
|
}
|
|
infoDiv += '</table>';
|
|
return infoDiv;
|
|
}
|
|
},
|
|
{field:'col3', width: 240, title: '人员信息', align: 'center',
|
|
templet: function(row) {
|
|
var infoDiv = '<table>';
|
|
infoDiv += '<tr><td class="col-title">负责人</td><td class="col-content"><i class="fa fa-user-circle"></i> '+ (row.masterJoinByEnterpriseId ? row.masterJoinByEnterpriseId : '-') +'</td></tr>';
|
|
infoDiv += '<tr><td class="col-title">联系电话</td><td class="col-content"><i class="fa fa-mobile-phone"></i> '+ (row.phoneJoinByEnterpriseId ? row.phoneJoinByEnterpriseId : '-') +'</td></tr>';
|
|
infoDiv += '<tr><td class="col-title">从业人数</td><td class="col-content"><i class="fa fa-users"></i> '+ (row.engagedCountJoinByEnterpriseId ? (row.engagedCountJoinByEnterpriseId +' 人') : '-') +'</td></tr>';
|
|
infoDiv += '</table>';
|
|
return infoDiv;
|
|
}
|
|
},
|
|
{field:'col4', width: 100, title: '状态', align: 'center',
|
|
templet: function(row) {
|
|
var checkType = '【无检查类型】';
|
|
if(row.checkType == 1) {
|
|
checkType = '【检查】';
|
|
} else if(rowData == 2) {
|
|
checkType = '【复查】';
|
|
}
|
|
var isCoordination = '<span style="color: #FF5722;">【不配合】</span>';
|
|
if(row.isCoordination == 1) {
|
|
isCoordination = '<span style="color: #009688;">【配合】</span>';
|
|
}
|
|
var isComplete = '<span style="color: #FF5722;">【未完成】</span>';
|
|
if(row.isComplete == 1) {
|
|
isComplete = '<span style="color: #009688;">【完成】</span>'
|
|
}
|
|
var infoDiv = '<table>';
|
|
infoDiv += '<tr><td class="col-content">'+ checkType +'</td></tr>';
|
|
infoDiv += '<tr><td class="col-content">'+ isCoordination +'</td></tr>';
|
|
infoDiv += '<tr><td class="col-content">'+ isComplete +'</td></tr>';
|
|
infoDiv += '</table>';
|
|
return infoDiv;
|
|
}
|
|
},
|
|
{field:'col5', width: 160, title: '检查情况', align: 'center',
|
|
templet: function(row) {
|
|
var isCoordinationBtn = '<button type="button" class="layui-btn layui-btn-normal layui-btn-xs check-detail" data-checkid="'+ row.checkId +'" data-name="'+ row.nameJoinByEnterpriseId +'"><i class="fa fa-lg fa-search"></i> 检查项</button>';
|
|
if(row.isCoordination != 1) {
|
|
isCoordinationBtn = '不配合';
|
|
}
|
|
var infoDiv = '<table>';
|
|
infoDiv += '<tr><td class="col-content">'+ isCoordinationBtn +'</td></tr>';
|
|
if(row.checkLng && row.checkLat) {
|
|
infoDiv += '<tr><td class="col-content-opition"><div class="col-content-div check-location" data-lng="'+ row.checkLng +'" data-lat="'+ row.checkLat +'" data-enterprise-name="'+ row.nameJoinByEnterpriseId +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'"><i class="fa fa-map-marker"></i> 查看检查位置</div></td></tr>';
|
|
}
|
|
infoDiv += '</table>';
|
|
return infoDiv;
|
|
}
|
|
},
|
|
{field: 'updateCheckMine', width: 120, title: '操作', fixed:'right', align:'center',
|
|
templet: function(row) {
|
|
var infoDiv = '<table>';
|
|
infoDiv += '<tr><td class="col-content"><button type="button" class="layui-btn layui-btn-normal layui-btn-xs handle-event" data-checkid="'+ row.checkId +'">处理完毕</button></td></tr>';
|
|
infoDiv += '<tr><td class="col-content"><button type="button" class="layui-btn layui-btn-danger layui-btn-xs leader-event" data-checkid="'+ row.checkId +'">上级处理</button></td></tr>';
|
|
infoDiv += '</table>';
|
|
return infoDiv;
|
|
}
|
|
},
|
|
]],
|
|
page: true,
|
|
parseData: function(data) {
|
|
return {
|
|
'code': 0,
|
|
'msg': '',
|
|
'count': data.total,
|
|
'data': data.rows
|
|
};
|
|
}
|
|
});
|
|
}
|
|
// 重载表格
|
|
function reloadTable(currentPage) {
|
|
table.reload('dataTable', {
|
|
url: top.restAjax.path(tableUrl, []),
|
|
where: {
|
|
keywords: $('#keywords').val(),
|
|
type: $('#type').val(),
|
|
industry: $('#industry').val(),
|
|
},
|
|
page: {
|
|
curr: currentPage
|
|
},
|
|
height: $win.height() - 90,
|
|
});
|
|
}
|
|
initTable();
|
|
// 事件 - 页面变化
|
|
$win.on('resize', function() {
|
|
clearTimeout(resizeTimeout);
|
|
resizeTimeout = setTimeout(function() {
|
|
reloadTable();
|
|
}, 500);
|
|
});
|
|
// 120s自动刷新
|
|
setInterval(function() {
|
|
reloadTable();
|
|
}, 120000);
|
|
// 事件 - 搜索
|
|
$(document).on('click', '#search', function() {
|
|
reloadTable(1);
|
|
});
|
|
// 执行检查
|
|
function inspect(msg, checkId, type) {
|
|
top.dialog.confirm(msg, function(index) {
|
|
top.dialog.close(index);
|
|
var loadLayerIndex;
|
|
top.restAjax.post(top.restAjax.path('api/check/saveinspect/{checkId}', [checkId]), {
|
|
type: type
|
|
}, null, function(code, data) {
|
|
reloadTable();
|
|
}, function(code, data) {
|
|
top.dialog.msg(data.msg);
|
|
}, function() {
|
|
loadLayerIndex = top.dialog.msg('提交中...', {icon: 16, time: 0, shade: 0.3});
|
|
}, function() {
|
|
top.dialog.close(loadLayerIndex);
|
|
});
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '.handle-event', function() {
|
|
var checkId = this.dataset.checkid;
|
|
inspect('确定处理完毕?', checkId, 1);
|
|
});
|
|
$(document).on('click', '.leader-event', function() {
|
|
var checkId = this.dataset.checkid;
|
|
inspect('确定上级处理?', checkId, 2);
|
|
});
|
|
$(document).on('click', '.check-detail', function() {
|
|
var checkId = this.dataset.checkid;
|
|
var name = this.dataset.name;
|
|
top.dialog.open({
|
|
url: top.restAjax.path('route/check/get-check-item.html?checkId={checkId}', [checkId]),
|
|
title: '【'+ name + '】检、复查选项',
|
|
width: '80%',
|
|
height: '80%',
|
|
onClose: function() {}
|
|
});
|
|
});
|
|
$(document).on('click', '.enterprise-location', function() {
|
|
var lng = this.dataset.lng;
|
|
var lat = this.dataset.lat;
|
|
if(lng && lat) {
|
|
top.dialog.dialogData.enterpriseCheckData = {
|
|
enterpriseId: this.dataset.enterpriseId,
|
|
enterpriseName: this.dataset.enterpriseName,
|
|
photoArray: this.dataset.photoArray,
|
|
}
|
|
top.dialog.open({
|
|
url: top.restAjax.path('route/check/get-map-location.html?lng={lng}&lat={lat}', [lng, lat]),
|
|
title: '企业位置信息',
|
|
width: '80%',
|
|
height: '80%',
|
|
onClose: function() {
|
|
top.dialog.dialogData.enterpriseCheckData = null;
|
|
}
|
|
});
|
|
} else {
|
|
top.dialog.msg('暂无定位信息');
|
|
}
|
|
});
|
|
|
|
$(document).on('click', '.check-location', function() {
|
|
var lng = this.dataset.lng;
|
|
var lat = this.dataset.lat;
|
|
if(lng && lat) {
|
|
top.dialog.dialogData.enterpriseCheckData = {
|
|
enterpriseId: this.dataset.enterpriseId,
|
|
enterpriseName: this.dataset.enterpriseName,
|
|
photoArray: this.dataset.photoArray,
|
|
}
|
|
top.dialog.open({
|
|
url: top.restAjax.path('route/check/get-map-location.html?lng={lng}&lat={lat}', [lng, lat]),
|
|
title: '检查位置信息',
|
|
width: '80%',
|
|
height: '80%',
|
|
onClose: function() {
|
|
top.dialog.dialogData.enterpriseCheckData = null;
|
|
}
|
|
});
|
|
} else {
|
|
top.dialog.msg('暂无检查定位信息');
|
|
}
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |