完善案件流程逻辑

This commit is contained in:
wanggeng888 2021-07-15 11:40:35 +08:00
parent 299bc3a537
commit e89d39969f
11 changed files with 2487 additions and 29 deletions

View File

@ -146,4 +146,46 @@ public class Check2Controller extends AbstractController {
return check2Service.listPageStreetOfMine(page);
}
@ApiOperation(value = "我的旗县区委办局案件列表", notes = "我的旗县区委办局案件列表接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "Integer", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "Integer", defaultValue = "20"),
@ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("listpage-district-department-of-mine")
public SuccessResultList<List<Check2DTO>> listPageDistrictDepartmentOfMine(ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return check2Service.listPageDistrictDepartmentOfMine(page);
}
@ApiOperation(value = "我的旗县区案件列表", notes = "我的旗县区案件列表接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "Integer", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "Integer", defaultValue = "20"),
@ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("listpage-district-of-mine")
public SuccessResultList<List<Check2DTO>> listPageDistrictOfMine(ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return check2Service.listPageDistrictOfMine(page);
}
@ApiOperation(value = "我的市案件列表", notes = "我的市案件列表接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "Integer", defaultValue = "1"),
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "Integer", defaultValue = "20"),
@ApiImplicitParam(name = "keywords", value = "关键字", paramType = "query", dataType = "String"),
})
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
@GetMapping("listpage-city-of-mine")
public SuccessResultList<List<Check2DTO>> listPageCityOfMine(ListPage page) {
Map<String, Object> params = requestParams();
page.setParams(params);
return check2Service.listPageCityOfMine(page);
}
}

View File

@ -120,4 +120,28 @@ public interface ICheck2Service {
* @return
*/
SuccessResultList<List<Check2DTO>> listPageStreetOfMine(ListPage page);
/**
* 我的旗县区委办局案件列表
*
* @param page
* @return
*/
SuccessResultList<List<Check2DTO>> listPageDistrictDepartmentOfMine(ListPage page);
/**
* 我的旗县区案件列表
*
* @param page
* @return
*/
SuccessResultList<List<Check2DTO>> listPageDistrictOfMine(ListPage page);
/**
* 我的市案件列表
*
* @param page
* @return
*/
SuccessResultList<List<Check2DTO>> listPageCityOfMine(ListPage page);
}

View File

@ -104,9 +104,15 @@ public class Check2ServiceImpl extends BaseService implements ICheck2Service {
@Override
public void remove(List<String> ids) {
// 删除有关系的流程
Map<String, Object> params = getHashMap(2);
params.put("ids", ids);
params.put("checkIds", ids);
check2Dao.removeCheck(params);
ids.forEach(checkId -> {
processService.deleteProcessByBusinessKey(BUSINESS_KEY_PREFIX + ":" + checkId, "删除案件");
});
}
@Override
@ -166,6 +172,42 @@ public class Check2ServiceImpl extends BaseService implements ICheck2Service {
return listPage(page);
}
@Override
public SuccessResultList<List<Check2DTO>> listPageDistrictDepartmentOfMine(ListPage page) {
String userId = securityComponent.getCurrentUser().getUserId();
List<Task> tasks = processService.listTaskByAssigneeAndVariableKey(GridPersonnelTypeEnum.DISTRICT_DEPARTMENT.getValue(), userId);
List<String> checkIds = listLastCheckId(tasks);
if (checkIds.isEmpty()) {
return new SuccessResultList<>(new ArrayList<>(), 1, 0L);
}
page.getParams().put("checkIds", checkIds);
return listPage(page);
}
@Override
public SuccessResultList<List<Check2DTO>> listPageDistrictOfMine(ListPage page) {
String userId = securityComponent.getCurrentUser().getUserId();
List<Task> tasks = processService.listTaskByAssigneeAndVariableKey(GridPersonnelTypeEnum.DISTRICT.getValue(), userId);
List<String> checkIds = listLastCheckId(tasks);
if (checkIds.isEmpty()) {
return new SuccessResultList<>(new ArrayList<>(), 1, 0L);
}
page.getParams().put("checkIds", checkIds);
return listPage(page);
}
@Override
public SuccessResultList<List<Check2DTO>> listPageCityOfMine(ListPage page) {
String userId = securityComponent.getCurrentUser().getUserId();
List<Task> tasks = processService.listTaskByAssigneeAndVariableKey(GridPersonnelTypeEnum.CITY.getValue(), userId);
List<String> checkIds = listLastCheckId(tasks);
if (checkIds.isEmpty()) {
return new SuccessResultList<>(new ArrayList<>(), 1, 0L);
}
page.getParams().put("checkIds", checkIds);
return listPage(page);
}
/**
* 开启检查流程
*

View File

@ -52,6 +52,30 @@ public interface IProcessService {
*/
String startProcessByDeploymentId(String deploymentId, String businessKey, Map<String, Object> params);
/**
* 删除流程
*
* @param processId 流程ID
* @param reason 原因
*/
void deleteProcessByProcessId(String processId, String reason);
/**
* 删除流程
*
* @param processIds 流程ID
* @param reason 原因
*/
void deleteProcessByProcessIds(List<String> processIds, String reason);
/**
* 删除流程
*
* @param businessKey 业务主键
* @param reason 原因
*/
void deleteProcessByBusinessKey(String businessKey, String reason);
/**
* 任务列表通过执行人
*
@ -273,24 +297,18 @@ public interface IProcessService {
List<HistoricTaskInstance> listHistoricTaskInstance();
/**
* 激活任务
* 激活流程
*
* @param processId
*/
void activeTaskByProcessId(String processId);
void activeProcessByProcessId(String processId);
/**
* 挂起任务
* 挂起流程
*
* @param processId
*/
void suspendTaskByProcessId(String processId);
void suspendProcessByProcessId(String processId);
/**
* 删除任务
*
* @param processId
*/
void deleteTaskByProcessId(String processId);
}

View File

@ -56,16 +56,36 @@ public class ProcessServiceImpl implements IProcessService {
@Override
public String startProcessByDeploymentId(String deploymentId, String businessKey, Map<String, Object> params) {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().deploymentId(deploymentId).singleResult();
if(processDefinition == null) {
if (processDefinition == null) {
throw new SystemException("流程不存在");
}
if(!processDefinition.isSuspended()) {
if (!processDefinition.isSuspended()) {
throw new SystemException("流程未发布");
}
ProcessInstance processInstance = runtimeService.startProcessInstanceById(processDefinition.getId(), businessKey, params);
return processInstance.getId();
}
@Override
public void deleteProcessByProcessId(String processId, String reason) {
runtimeService.deleteProcessInstance(processId, reason);
}
@Override
public void deleteProcessByProcessIds(List<String> processIds, String reason) {
processIds.forEach(processId -> {
runtimeService.deleteProcessInstance(processId, reason);
});
}
@Override
public void deleteProcessByBusinessKey(String businessKey, String reason) {
List<ProcessInstance> processInstances = runtimeService.createProcessInstanceQuery().processInstanceBusinessKey(businessKey).list();
processInstances.forEach(processInstance -> {
runtimeService.deleteProcessInstance(processInstance.getId(), reason);
});
}
@Override
public List<Task> listTaskByAssignee(String assignee) {
TaskQuery taskQuery = taskService.createTaskQuery();
@ -226,7 +246,7 @@ public class ProcessServiceImpl implements IProcessService {
@Override
public void removeRuntimeVariableByExecutionId(String executionId, String key) {
runtimeService.removeVariable(executionId, key);
}
@Override
@ -250,19 +270,13 @@ public class ProcessServiceImpl implements IProcessService {
}
@Override
public void activeTaskByProcessId(String processId) {
public void activeProcessByProcessId(String processId) {
runtimeService.activateProcessInstanceById(processId);
}
@Override
public void suspendTaskByProcessId(String processId) {
public void suspendProcessByProcessId(String processId) {
runtimeService.suspendProcessInstanceById(processId);
}
@Override
public void deleteTaskByProcessId(String processId) {
runtimeService.deleteProcessInstance(processId, "结束");
}
}

View File

@ -7,6 +7,8 @@ import com.cm.inspection.service.dischargepermit.IDischargePermitService;
import com.cm.inspection.service.eiareport.IEiaReportService;
import com.cm.inspection.service.enterprise.IEnterpriseService;
import com.cm.inspection.service.process.IProcessService;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.RuntimeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.ApplicationArguments;
@ -43,13 +45,17 @@ public class StartUp implements ApplicationRunner {
private ICountService countService;
@Autowired
private IEnterpriseService enterpriseService;
@Autowired
private RuntimeService runtimeService;
@Autowired
private RepositoryService repositoryService;
@Override
public void run(ApplicationArguments args) throws Exception {
// 部署流程
processService.deployProcess("bt-check-report-v2.bpmn20", "包头网格员检查上报流程v2");
processService.deployProcess("check-self", "网格员检查上报流程");
processService.deployProcess("bt-check-report-v2.bpmn20", "包头网格员检查上报流程v2");
if (checkDetailReportForm) {
// 初始化统计防止第一次打开慢

View File

@ -0,0 +1,578 @@
<!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>
<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="isCoordination" id="isCoordination">
<option value="">是否配合</option>
<option value="0">不配合</option>
<option value="1">配合</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>
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<i class="fa fa-lg fa-plus"></i> 新增
</button>
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
<i class="fa fa-lg fa-trash"></i> 删除
</button>
</div>
</script>
</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?checkType=1';
// 初始化选择框、单选、复选模板
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],
toolbar: '#headerToolBar',
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: '企业图片',
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-enterprise-name="'+ row.nameJoinByEnterpriseId +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'" data-lng="'+ row.enterpriseLngByEnterpriseId +'" data-lat="'+ row.enterpriseLatByEnterpriseId +'"><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: 120, 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;
}
},
]],
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(),
checkType: $('#checkType').val(),
isCoordination: $('#isCoordination').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() - 90,
});
}
// 删除
function removeData(ids) {
top.dialog.msg(top.dataMessage.delete, {
time: 0,
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
shade: 0.3,
yes: function (index) {
top.dialog.close(index);
var layIndex;
top.restAjax.delete(top.restAjax.path('api/check/removecheck/{ids}', [ids]), {}, null, function (code, data) {
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
reloadTable();
}, function (code, data) {
top.dialog.msg(data.msg);
}, function () {
layIndex = top.dialog.msg(top.dataMessage.deleting, {icon: 16, time: 0, shade: 0.3});
}, function () {
top.dialog.close(layIndex);
});
}
});
}
initTable();
// 事件 - 页面变化
$win.on('resize', function() {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(function() {
reloadTable();
}, 500);
});
// 事件 - 搜索
$(document).on('click', '#search', function() {
reloadTable(1);
});
// 事件 - 增删改
table.on('toolbar(dataTable)', function(obj) {
var layEvent = obj.event;
var checkStatus = table.checkStatus('dataTable');
var checkDatas = checkStatus.data;
if(layEvent === 'saveEvent') {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/save-check.html', []),
end: function() {
reloadTable();
}
});
} else if(layEvent === 'updateEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectEdit);
} else if(checkDatas.length > 1) {
top.dialog.msg(top.dataMessage.table.selectOneEdit);
} else {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/update-check.html?checkId={checkId}', [checkDatas[0].checkId]),
end: function() {
reloadTable();
}
});
}
} else if(layEvent === 'removeEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectDelete);
} else {
var ids = '';
for(var i = 0, item; item = checkDatas[i++];) {
if(i > 1) {
ids += '_';
}
ids += item['checkId'];
}
removeData(ids);
}
}
});
$(document).on('click', '.check-detail', function() {
var checkId = this.dataset.checkid;
var nameJoinByEnterpriseId = this.dataset.name;
top.dialog.open({
url: top.restAjax.path('route/check/get-check-item.html?checkId={checkId}', [checkId]),
title: '【'+ nameJoinByEnterpriseId + '】检、复查选项',
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('暂无检查定位信息');
}
});
// 联动事件
// 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>

View File

@ -0,0 +1,578 @@
<!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>
<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="isCoordination" id="isCoordination">
<option value="">是否配合</option>
<option value="0">不配合</option>
<option value="1">配合</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>
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<i class="fa fa-lg fa-plus"></i> 新增
</button>
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
<i class="fa fa-lg fa-trash"></i> 删除
</button>
</div>
</script>
</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?checkType=1';
// 初始化选择框、单选、复选模板
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],
toolbar: '#headerToolBar',
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: '企业图片',
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-enterprise-name="'+ row.nameJoinByEnterpriseId +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'" data-lng="'+ row.enterpriseLngByEnterpriseId +'" data-lat="'+ row.enterpriseLatByEnterpriseId +'"><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: 120, 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;
}
},
]],
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(),
checkType: $('#checkType').val(),
isCoordination: $('#isCoordination').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() - 90,
});
}
// 删除
function removeData(ids) {
top.dialog.msg(top.dataMessage.delete, {
time: 0,
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
shade: 0.3,
yes: function (index) {
top.dialog.close(index);
var layIndex;
top.restAjax.delete(top.restAjax.path('api/check/removecheck/{ids}', [ids]), {}, null, function (code, data) {
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
reloadTable();
}, function (code, data) {
top.dialog.msg(data.msg);
}, function () {
layIndex = top.dialog.msg(top.dataMessage.deleting, {icon: 16, time: 0, shade: 0.3});
}, function () {
top.dialog.close(layIndex);
});
}
});
}
initTable();
// 事件 - 页面变化
$win.on('resize', function() {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(function() {
reloadTable();
}, 500);
});
// 事件 - 搜索
$(document).on('click', '#search', function() {
reloadTable(1);
});
// 事件 - 增删改
table.on('toolbar(dataTable)', function(obj) {
var layEvent = obj.event;
var checkStatus = table.checkStatus('dataTable');
var checkDatas = checkStatus.data;
if(layEvent === 'saveEvent') {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/save-check.html', []),
end: function() {
reloadTable();
}
});
} else if(layEvent === 'updateEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectEdit);
} else if(checkDatas.length > 1) {
top.dialog.msg(top.dataMessage.table.selectOneEdit);
} else {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/update-check.html?checkId={checkId}', [checkDatas[0].checkId]),
end: function() {
reloadTable();
}
});
}
} else if(layEvent === 'removeEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectDelete);
} else {
var ids = '';
for(var i = 0, item; item = checkDatas[i++];) {
if(i > 1) {
ids += '_';
}
ids += item['checkId'];
}
removeData(ids);
}
}
});
$(document).on('click', '.check-detail', function() {
var checkId = this.dataset.checkid;
var nameJoinByEnterpriseId = this.dataset.name;
top.dialog.open({
url: top.restAjax.path('route/check/get-check-item.html?checkId={checkId}', [checkId]),
title: '【'+ nameJoinByEnterpriseId + '】检、复查选项',
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('暂无检查定位信息');
}
});
// 联动事件
// 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>

View File

@ -0,0 +1,578 @@
<!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>
<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="isCoordination" id="isCoordination">
<option value="">是否配合</option>
<option value="0">不配合</option>
<option value="1">配合</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>
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<i class="fa fa-lg fa-plus"></i> 新增
</button>
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
<i class="fa fa-lg fa-trash"></i> 删除
</button>
</div>
</script>
</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?checkType=1';
// 初始化选择框、单选、复选模板
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],
toolbar: '#headerToolBar',
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: '企业图片',
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-enterprise-name="'+ row.nameJoinByEnterpriseId +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'" data-lng="'+ row.enterpriseLngByEnterpriseId +'" data-lat="'+ row.enterpriseLatByEnterpriseId +'"><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: 120, 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;
}
},
]],
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(),
checkType: $('#checkType').val(),
isCoordination: $('#isCoordination').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() - 90,
});
}
// 删除
function removeData(ids) {
top.dialog.msg(top.dataMessage.delete, {
time: 0,
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
shade: 0.3,
yes: function (index) {
top.dialog.close(index);
var layIndex;
top.restAjax.delete(top.restAjax.path('api/check/removecheck/{ids}', [ids]), {}, null, function (code, data) {
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
reloadTable();
}, function (code, data) {
top.dialog.msg(data.msg);
}, function () {
layIndex = top.dialog.msg(top.dataMessage.deleting, {icon: 16, time: 0, shade: 0.3});
}, function () {
top.dialog.close(layIndex);
});
}
});
}
initTable();
// 事件 - 页面变化
$win.on('resize', function() {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(function() {
reloadTable();
}, 500);
});
// 事件 - 搜索
$(document).on('click', '#search', function() {
reloadTable(1);
});
// 事件 - 增删改
table.on('toolbar(dataTable)', function(obj) {
var layEvent = obj.event;
var checkStatus = table.checkStatus('dataTable');
var checkDatas = checkStatus.data;
if(layEvent === 'saveEvent') {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/save-check.html', []),
end: function() {
reloadTable();
}
});
} else if(layEvent === 'updateEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectEdit);
} else if(checkDatas.length > 1) {
top.dialog.msg(top.dataMessage.table.selectOneEdit);
} else {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/update-check.html?checkId={checkId}', [checkDatas[0].checkId]),
end: function() {
reloadTable();
}
});
}
} else if(layEvent === 'removeEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectDelete);
} else {
var ids = '';
for(var i = 0, item; item = checkDatas[i++];) {
if(i > 1) {
ids += '_';
}
ids += item['checkId'];
}
removeData(ids);
}
}
});
$(document).on('click', '.check-detail', function() {
var checkId = this.dataset.checkid;
var nameJoinByEnterpriseId = this.dataset.name;
top.dialog.open({
url: top.restAjax.path('route/check/get-check-item.html?checkId={checkId}', [checkId]),
title: '【'+ nameJoinByEnterpriseId + '】检、复查选项',
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('暂无检查定位信息');
}
});
// 联动事件
// 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>

View File

@ -0,0 +1,578 @@
<!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>
<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="isCoordination" id="isCoordination">
<option value="">是否配合</option>
<option value="0">不配合</option>
<option value="1">配合</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>
<!-- 表头按钮组 -->
<script type="text/html" id="headerToolBar">
<div class="layui-btn-group">
<button type="button" class="layui-btn layui-btn-sm" lay-event="saveEvent">
<i class="fa fa-lg fa-plus"></i> 新增
</button>
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
<i class="fa fa-lg fa-trash"></i> 删除
</button>
</div>
</script>
</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],
toolbar: '#headerToolBar',
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: '企业图片',
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-enterprise-name="'+ row.nameJoinByEnterpriseId +'" data-enterprise-id="'+ row.enterpriseId +'" data-enterprise-photos="'+ row.factoryGateByEnterpriseId +'" data-lng="'+ row.enterpriseLngByEnterpriseId +'" data-lat="'+ row.enterpriseLatByEnterpriseId +'"><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: 120, 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;
}
},
]],
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(),
checkType: $('#checkType').val(),
isCoordination: $('#isCoordination').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() - 90,
});
}
// 删除
function removeData(ids) {
top.dialog.msg(top.dataMessage.delete, {
time: 0,
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
shade: 0.3,
yes: function (index) {
top.dialog.close(index);
var layIndex;
top.restAjax.delete(top.restAjax.path('api/check/removecheck/{ids}', [ids]), {}, null, function (code, data) {
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
reloadTable();
}, function (code, data) {
top.dialog.msg(data.msg);
}, function () {
layIndex = top.dialog.msg(top.dataMessage.deleting, {icon: 16, time: 0, shade: 0.3});
}, function () {
top.dialog.close(layIndex);
});
}
});
}
initTable();
// 事件 - 页面变化
$win.on('resize', function() {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(function() {
reloadTable();
}, 500);
});
// 事件 - 搜索
$(document).on('click', '#search', function() {
reloadTable(1);
});
// 事件 - 增删改
table.on('toolbar(dataTable)', function(obj) {
var layEvent = obj.event;
var checkStatus = table.checkStatus('dataTable');
var checkDatas = checkStatus.data;
if(layEvent === 'saveEvent') {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/save-check.html', []),
end: function() {
reloadTable();
}
});
} else if(layEvent === 'updateEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectEdit);
} else if(checkDatas.length > 1) {
top.dialog.msg(top.dataMessage.table.selectOneEdit);
} else {
layer.open({
type: 2,
title: false,
closeBtn: 0,
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/update-check.html?checkId={checkId}', [checkDatas[0].checkId]),
end: function() {
reloadTable();
}
});
}
} else if(layEvent === 'removeEvent') {
if(checkDatas.length === 0) {
top.dialog.msg(top.dataMessage.table.selectDelete);
} else {
var ids = '';
for(var i = 0, item; item = checkDatas[i++];) {
if(i > 1) {
ids += '_';
}
ids += item['checkId'];
}
removeData(ids);
}
}
});
$(document).on('click', '.check-detail', function() {
var checkId = this.dataset.checkid;
var nameJoinByEnterpriseId = this.dataset.name;
top.dialog.open({
url: top.restAjax.path('route/check/get-check-item.html?checkId={checkId}', [checkId]),
title: '【'+ nameJoinByEnterpriseId + '】检、复查选项',
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('暂无检查定位信息');
}
});
// 联动事件
// 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>

View File

@ -412,7 +412,7 @@
yes: function (index) {
top.dialog.close(index);
var layIndex;
top.restAjax.delete(top.restAjax.path('api/check/removecheck/{ids}', [ids]), {}, null, function (code, data) {
top.restAjax.delete(top.restAjax.path('api/check2/remove/{ids}', [ids]), {}, null, function (code, data) {
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
reloadTable();
}, function (code, data) {
@ -450,7 +450,7 @@
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/save-check.html', []),
content: top.restAjax.path('route/check2/save-check.html', []),
end: function() {
reloadTable();
}
@ -468,7 +468,7 @@
area: ['100%', '100%'],
shadeClose: true,
anim: 2,
content: top.restAjax.path('route/check/update-check.html?checkId={checkId}', [checkDatas[0].checkId]),
content: top.restAjax.path('route/check2/update-check.html?checkId={checkId}', [checkDatas[0].checkId]),
end: function() {
reloadTable();
}
@ -494,7 +494,7 @@
var checkId = this.dataset.checkid;
var nameJoinByEnterpriseId = this.dataset.name;
top.dialog.open({
url: top.restAjax.path('route/check/get-check-item.html?checkId={checkId}', [checkId]),
url: top.restAjax.path('route/check2/get-check-item.html?checkId={checkId}', [checkId]),
title: '【'+ nameJoinByEnterpriseId + '】检、复查选项',
width: '80%',
height: '80%',
@ -512,7 +512,7 @@
photoArray: this.dataset.photoArray,
}
top.dialog.open({
url: top.restAjax.path('route/check/get-map-location.html?lng={lng}&lat={lat}', [lng, lat]),
url: top.restAjax.path('route/check2/get-map-location.html?lng={lng}&lat={lat}', [lng, lat]),
title: '企业位置信息',
width: '80%',
height: '80%',
@ -535,7 +535,7 @@
photoArray: this.dataset.photoArray,
}
top.dialog.open({
url: top.restAjax.path('route/check/get-map-location.html?lng={lng}&lat={lat}', [lng, lat]),
url: top.restAjax.path('route/check2/get-map-location.html?lng={lng}&lat={lat}', [lng, lat]),
title: '检查位置信息',
width: '80%',
height: '80%',