btyjj-inspection/src/main/resources/static/route/check2/list-street-of-mine.html

537 lines
28 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 search-item-width-100">
<input type="text" id="reporter" 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>
<div class="layui-inline layui-form search-item">
<select id="checkType" name="checkType">
<option value="">检查类型</option>
<option value="1">检查</option>
<option value="2">复查</option>
</select>
</div>
<div class="layui-inline layui-form search-item">
<select name="isComplete" id="isComplete">
<option value="">是否完成</option>
<option value="0">未完成</option>
<option value="1">完成</option>
</select>
</div>
</div>
<div class="test-table-reload-btn" style="margin-bottom: 10px;">
<div class="layui-inline layui-form search-item" id="area1SelectTemplateBox" lay-filter="area1SelectTemplateBox"></div>
<script id="area1SelectTemplate" type="text/html">
<select id="area1" name="area1" lay-filter="area1" lay-search>
<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="area2SelectTemplateBox" lay-filter="area2SelectTemplateBox"></div>
<script id="area2SelectTemplate" type="text/html">
<select id="area2" name="area2" lay-filter="area2" lay-search>
<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="area3SelectTemplateBox" lay-filter="area3SelectTemplateBox"></div>
<script id="area3SelectTemplate" type="text/html">
<select id="area3" name="area3" lay-filter="area3" lay-search>
<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="area4SelectTemplateBox" lay-filter="area4SelectTemplateBox"></div>
<script id="area4SelectTemplate" type="text/html">
<select id="area4" name="area4" lay-filter="area4" lay-search>
<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="area5SelectTemplateBox" lay-filter="area5SelectTemplateBox"></div>
<script id="area5SelectTemplate" type="text/html">
<select id="area5" name="area5" lay-filter="area5" lay-search>
<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/check2/listpage-street-of-mine';
// 初始化选择框、单选、复选模板
function initSelectRadioCheckboxTemplate(templateId, templateBoxId, data, callback) {
laytpl(document.getElementById(templateId).innerHTML).render(data, function(html) {
document.getElementById(templateBoxId).innerHTML = html;
});
form.render('select', templateBoxId);
}
// 初始化1级区域下拉选择
function initArea1Select() {
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/81583ade-5466-49aa-b7b6-c643c131ea34', []), {}, null, function(code, data, args) {
initSelectRadioCheckboxTemplate('area1SelectTemplate', 'area1SelectTemplateBox', data);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
// 初始化2级区域下拉选择
function initArea2Select(area1) {
if(!area1) {
initSelectRadioCheckboxTemplate('area2SelectTemplate', 'area2SelectTemplateBox', []);
return;
}
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/{area1}', [area1]), {}, null, function(code, data, args) {
initSelectRadioCheckboxTemplate('area2SelectTemplate', 'area2SelectTemplateBox', data);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
// 初始化3级区域下拉选择
function initArea3Select(area2) {
$('#area3Box').show();
if(!area2) {
initSelectRadioCheckboxTemplate('area3SelectTemplate', 'area3SelectTemplateBox', []);
return;
}
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/{area2}', [area2]), {}, null, function(code, data, args) {
initSelectRadioCheckboxTemplate('area3SelectTemplate', 'area3SelectTemplateBox', data);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
// 初始化4级区域下拉选择
function initArea4Select(area3) {
if(!area3) {
initSelectRadioCheckboxTemplate('area4SelectTemplate', 'area4SelectTemplateBox', []);
return;
}
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/{area3}', [area3]), {}, null, function(code, data, args) {
initSelectRadioCheckboxTemplate('area4SelectTemplate', 'area4SelectTemplateBox', data);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
// 初始化5级区域下拉选择
function initArea5Select(area4) {
$('#area5Box').show();
if(!area4) {
initSelectRadioCheckboxTemplate('area5SelectTemplate', 'area5SelectTemplateBox', []);
return;
}
top.restAjax.get(top.restAjax.path('api/datadictionary/listdictionarybyparentid/{area4}', [area4]), {}, null, function(code, data, args) {
initSelectRadioCheckboxTemplate('area5SelectTemplate', 'area5SelectTemplateBox', data);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
initArea1Select();
initArea2Select();
initArea3Select();
initArea4Select();
initArea5Select();
// 初始化企业类型下拉选择
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() - 130,
limit: 20,
limits: [20, 40, 60, 80, 100, 200],
request: {
pageName: 'page',
limitName: 'rows'
},
cols: [[
{type:'checkbox', fixed: 'left'},
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
{field:'photos', width: 200, title: '企业图片', align: 'center',
templet: function(row) {
var photos = '';
if(row.enterpriseFactoryGate) {
var photoArray = row.enterpriseFactoryGate.split(',');
for(var i = 0, item; item = photoArray[i++];) {
photos += '<img class="swiper-slide" src="route/file/downloadfile/false/'+ item +'">';
}
}
if(row.enterpriseWorkplace) {
var photoArray = row.enterpriseWorkplace.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.enterpriseName +'">'+ row.enterpriseName +'</div></td></tr>';
infoDiv += '<tr><td class="col-title">企业类型</td><td class="col-content">'+ row.enterpriseTypeName +'</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.enterpriseIndustryName ? row.enterpriseIndustryName : '-') +'</td></tr>';
infoDiv += '<tr><td class="col-title">作业风险</td><td class="col-content">'+ (row.enterpriseRiskOperationName ? row.enterpriseRiskOperationName : '-') +'</td></tr>';
if(row.enterpriseLng && row.enterpriseLat) {
infoDiv += '<tr><td colspan="2" class="col-content"><div class="col-content-div enterprise-location" title="'+ row.enterpriseAddress +'" data-enterprise-name="'+ row.enterpriseName +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.enterpriseFactoryGate +'" data-lng="'+ row.enterpriseLng +'" data-lat="'+ row.enterpriseLat +'"><i class="fa fa-map-marker"></i> '+ (row.enterpriseAddress ? row.enterpriseAddress : '查看企业定位') +'</div></td></tr>';
} else {
infoDiv += '<tr><td colspan="2" class="col-content"><div class="col-content-div" title="'+ row.enterpriseAddress +'">'+ (row.enterpriseAddress ? row.enterpriseAddress : '-') +'</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.enterpriseMaster ? row.enterpriseMaster : '-') +'</td></tr>';
infoDiv += '<tr><td class="col-title">联系电话</td><td class="col-content"><i class="fa fa-mobile-phone"></i> '+ (row.enterprisePhone ? row.enterprisePhone : '-') +'</td></tr>';
infoDiv += '<tr><td class="col-title">从业人数</td><td class="col-content"><i class="fa fa-users"></i> '+ (row.enterpriseEngagedCount ? (row.enterpriseEngagedCount +' 人') : '-') +'</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(row.checkType == 2) {
checkType = '【复查】';
}
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">'+ isComplete +'</td></tr>';
infoDiv += '</table>';
return infoDiv;
}
},
{field:'col5', width: 140, title: '案件上报情况', align: 'center',
templet: function(row) {
var infoDiv = '<table>';
infoDiv += '<tr><td class="col-content">'+ row.creatorName +'</td></tr>';
infoDiv += '<tr><td class="col-content">'+ row.creatorPhone +'</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.enterpriseName +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'" style="width: 100%"><i class="fa fa-map-marker"></i> 查看检查位置</div></td></tr>';
}
infoDiv += '</table>';
return infoDiv;
}
},
{field:'col6', width: 100, title: '操作', align: 'center', fixed: 'right',
templet: function(row) {
var infoDiv = '<table>';
infoDiv += '<tr><td class="col-content-opition">' +
'<button class="layui-btn layui-btn-xs handle-complete" data-check-id="'+ row.checkId +'">处理完成</button>' +
'</td></tr>';
infoDiv += '<tr><td class="col-content-opition">' +
'<button class="layui-btn layui-btn-xs layui-btn-normal handler-to-leader" data-check-id="'+ row.checkId +'">上级处理</button>' +
'</td></tr>';
infoDiv += '<tr><td class="col-content-opition">' +
'<div class="layui-btn-group">' +
'<button class="layui-btn layui-btn-xs layui-btn-primary check-log" data-check-id="'+ row.checkId +'">日志</button>' +
'<button class="layui-btn layui-btn-xs layui-btn-primary check-detail" data-check-id="'+ row.checkId +'" data-enterprise-name="'+ row.enterpriseName +'">详情</button>' +
'</div>' +
'</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(),
reporter: $('#reporter').val(),
type: $('#type').val(),
industry: $('#industry').val(),
checkType: $('#checkType').val(),
isComplete: $('#isComplete').val(),
area1: $('#area1').val(),
area2: $('#area2').val(),
area3: $('#area3').val(),
area4: $('#area4').val(),
area5: $('#area5').val(),
},
page: {
curr: currentPage
},
height: $win.height() - 130,
});
}
initTable();
// 事件 - 页面变化
$win.on('resize', function() {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(function() {
reloadTable();
}, 500);
});
// 事件 - 搜索
$(document).on('click', '#search', function() {
reloadTable(1);
});
$(document).on('click', '.check-detail', function() {
var checkId = this.dataset.checkId;
var enterpriseName = this.dataset.enterpriseName;
top.dialog.open({
url: top.restAjax.path('route/check2/get-check-item.html?checkId={checkId}', [checkId]),
title: '【'+ enterpriseName + '】检、复查选项',
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/check2/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/check2/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', '.handle-complete', function() {
var checkId = this.dataset.checkId;
top.dialog.open({
url: top.restAjax.path('route/check2/update-street-complete.html?checkId={checkId}', [checkId]),
title: '处理完成',
width: '400px',
height: '280px',
onClose: function() {
reloadTable();
}
});
})
$(document).on('click', '.handler-to-leader', function() {
var checkId = this.dataset.checkId;
top.dialog.open({
url: top.restAjax.path('route/check2/update-street-to-leader.html?checkId={checkId}', [checkId]),
title: '上级处理',
width: '400px',
height: '380px',
onClose: function() {
reloadTable();
}
});
});
$(document).on('click', '.check-log', function() {
var checkId = this.dataset.checkId;
top.dialog.open({
url: top.restAjax.path('route/check2/list-check-log.html?checkId={checkId}', [checkId]),
title: '案件日志',
width: '500px',
height: '500px',
onClose: function() {
}
});
})
// 联动事件
// area1 选择事件
// form.on('select(area1)', function(data) {
// initArea2Select(data.value);
// initArea3Select();
// initArea4Select();
// initArea5Select();
// });
initArea2Select('6aba668e-8ab3-4fbb-8886-b2d468ccf00e');
// area2 选择事件
form.on('select(area2)', function(data) {
initArea3Select(data.value);
initArea4Select();
initArea5Select();
});
// area3 选择事件
form.on('select(area3)', function(data) {
initArea4Select(data.value);
initArea5Select();
});
// area4 选择事件
form.on('select(area4)', function(data) {
initArea5Select(data.value);
});
});
</script>
</body>
</html>