wlcb-system-base-data/src/main/resources/templates/keyplace/update.html
2021-11-16 15:15:55 +08:00

321 lines
16 KiB
HTML

<!doctype html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<base th:href="${#request.getContextPath() + '/'}">
<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" type="text/css" href="assets/js/vendor/viewer/viewer.min.css">
</head>
<body>
<div class="layui-fluid layui-anim layui-anim-fadein">
<div class="layui-card">
<div class="layui-card-header">
<span class="layui-breadcrumb" lay-filter="breadcrumb" style="visibility: visible;">
<a class="close" href="javascript:void(0);">上级列表</a><span lay-separator="">/</span>
<a href="javascript:void(0);"><cite>编辑内容</cite></a>
</span>
</div>
<div class="layui-card-body" style="padding: 15px;">
<form class="layui-form layui-form-pane" lay-filter="dataForm">
<div class="layui-form-item">
<label class="layui-form-label">场所名称</label>
<div class="layui-input-block">
<input type="text" id="placeName" name="placeName" class="layui-input" value="" placeholder="请输入场所名称" maxlength="255">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">场所类型</label>
<input type="hidden" id="placeTypeName" name="placeTypeName" class="layui-input" value="" placeholder="请输入场所类型名称" maxlength="255">
<div class="layui-input-block layui-form" id="placeTypeSelectTemplateBox" lay-filter="placeTypeSelectTemplateBox"></div>
<script id="placeTypeSelectTemplate" type="text/html">
<select id="placeType" name="placeType" lay-filter="placeType" lay-verify="required">
<option value="">请选择场所类型</option>
{{# for(var i = 0, item; item = d[i++];) { }}
<option value="{{item.dataId}}">{{item.dataName}}</option>
{{# } }}
</select>
</script>
</div>
<div class="layui-form-item" id="detailTypeDiv" style="display: none;">
<label class="layui-form-label">详细类型</label>
<input type="hidden" id="detailTypeName" name="detailTypeName" class="layui-input" value="" placeholder="请输入详细类型名称" maxlength="255">
<div class="layui-input-block layui-form" id="detailTypeSelectTemplateBox" lay-filter="detailTypeSelectTemplateBox"></div>
<script id="detailTypeSelectTemplate" type="text/html">
<select id="detailType" name="detailType" lay-filter="detailType" lay-verify="required">
<option value="">请选择详细类型</option>
{{# for(var i = 0, item; item = d[i++];) { }}
<option value="{{item.dataId}}">{{item.dataName}}</option>
{{# } }}
</select>
</script>
</div>
<div class="layui-form-item">
<label class="layui-form-label">地址</label>
<input type="hidden" id="areaCode" name="areaCode" class="layui-input" value="" placeholder="请输入地址编码" maxlength="12">
<div class="layui-input-block">
<input type="text" id="areaName" name="areaName" class="layui-input" value="" placeholder="请输入地址名称" maxlength="255">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">详细地址</label>
<div class="layui-input-block">
<input type="text" id="address" name="address" class="layui-input" value="" placeholder="请输入详细地址" maxlength="255">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">负责人</label>
<div class="layui-input-block">
<input type="text" id="linkMan" name="linkMan" class="layui-input" value="" placeholder="请输入负责人" maxlength="50">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">负责人联系方式</label>
<div class="layui-input-block">
<input type="text" id="linkPhone" name="linkPhone" class="layui-input" value="" placeholder="请输入负责人联系方式" maxlength="20">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">联系方式</label>
<div class="layui-input-block">
<input type="text" id="phone" name="phone" class="layui-input" value="" placeholder="请输入联系方式" maxlength="20">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">经度</label>
<div class="layui-input-block">
<input type="text" id="longitude" name="longitude" class="layui-input" value="" placeholder="请输入经度" maxlength="50">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">纬度</label>
<div class="layui-input-block">
<input type="text" id="latitude" name="latitude" class="layui-input" value="" placeholder="请输入纬度" maxlength="50">
</div>
</div>
<div class="layui-row" id="mapDiv">
<div class="layui-col-md12 layui-col-sm12" style="padding: 0 0px;">
<div id="mapContainer" style="width: 100%;height: 350px;"></div>
</div>
</div>
<div class="layui-form-item layui-layout-admin">
<div class="layui-input-block">
<div class="layui-footer" style="left: 0;">
<button type="button" class="layui-btn" lay-submit lay-filter="submitForm">提交新增</button>
<button type="button" class="layui-btn layui-btn-primary close">返回上级</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=oWU9RD4ihDHAafexgI6XOrTK8lDatRju"></script>
<script src="assets/js/vendor/wangEditor/wangEditor.min.js"></script>
<script src="assets/js/vendor/ckplayer/ckplayer/ckplayer.js"></script>
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
<script src="assets/layuiadmin/layui/layui.js"></script>
<script>
layui.config({
base: 'assets/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(['index', 'form', 'laydate', 'laytpl'], function(){
var $ = layui.$;
var form = layui.form;
var laytpl = layui.laytpl;
var laydate = layui.laydate;
var keyPlaceId = top.restAjax.params(window.location.href).keyPlaceId;
var wangEditor = window.wangEditor;
var wangEditorObj = {};
var viewerObj = {};
//初始化百度地图
function initMap(longitude, latitude) {
map = new BMap.Map("mapContainer", {enableMapClick: false,});
var point = new BMap.Point(longitude, latitude);
map.centerAndZoom(point, 13);
map.disableDoubleClickZoom();
map.addControl(new BMap.NavigationControl());
map.addControl(new BMap.ScaleControl());
map.addControl(new BMap.OverviewMapControl());
map.addControl(new BMap.MapTypeControl());
map.enableScrollWheelZoom();//启用地图滚轮放大缩小
map.enableContinuousZoom();//开启缩放平滑
// 点击获取地址
var geocoder= new BMap.Geocoder();
mapMarkPoint(map, point);
map.addEventListener("click", function(e) {
map.clearOverlays();
$('#longitude').val(e.point.lng);
$('#latitude').val(e.point.lat);
point = new BMap.Point(e.point.lng, e.point.lat);
mapMarkPoint(map, point);
geocoder.getLocation(e.point, function(rs) {
$('#shopAddress').val(rs.address);
});
});
}
function mapMarkPoint(map, point) {
var marker = new BMap.Marker(point);
map.addOverlay(marker);
}
// 选择所在地
$(document).on('click', '#areaName', function() {
top.dialog.open({
title: '选择地区',
url: top.restAjax.path('route/area/get-select?areaName={areaName}', [encodeURI($('#areaName').val())]),
width: '800px',
height: '225px',
onClose: function () {
var selectedAreaArray = top.dialog.dialogData.selectedAreaArray;
var areaCode = '';
var areaName = '';
if (selectedAreaArray.length > 0) {
areaCode = selectedAreaArray[selectedAreaArray.length - 1].areaCode;
for (var i = 0, item; item = selectedAreaArray[i++];) {
if (areaName) {
areaName += ',';
}
areaName += item.areaName;
}
}
$('#areaCode').val(areaCode);
$('#areaName').val(areaName);
}
})
});
function closeBox() {
parent.layer.close(parent.layer.getFrameIndex(window.name));
}
form.on('select(placeType)', function(data){
if(!data.value) {
$('#detailTypeDiv').hide();
}else {
$('#detailTypeDiv').show();
var value = data.value;
initDetailTypeSelect(value, '');
var name = $('#placeType option:selected').text();
$('#placeTypeName').val(name);
}
form.render("select");
});
form.on('select(detailType)', function(data){
if(!data.value) {
}else {
var value = data.value;
var name = $('#detailType option:selected').text();
$('#detailTypeName').val(name);
}
form.render("select");
});
function closeBox() {
parent.layer.close(parent.layer.getFrameIndex(window.name));
}
// 初始化场所类型下拉选择
function initPlaceTypeSelect(selectValue) {
top.restAjax.get(top.restAjax.path('api/data/listbyparentid/{dataParentId}', ['aef51b83-80e0-44a8-88ba-b6bb987b3474']), {}, null, function(code, data, args) {
laytpl(document.getElementById('placeTypeSelectTemplate').innerHTML).render(data, function(html) {
document.getElementById('placeTypeSelectTemplateBox').innerHTML = html;
});
form.render('select', 'placeTypeSelectTemplateBox');
var selectObj = {};
selectObj['placeType'] = selectValue;
form.val('dataForm', selectObj);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
// 初始化详细类型下拉选择
function initDetailTypeSelect(parentValue, selectValue) {
top.restAjax.get(top.restAjax.path('api/data/listbyparentid/{dataParentId}', [parentValue]), {}, null, function(code, data, args) {
laytpl(document.getElementById('detailTypeSelectTemplate').innerHTML).render(data, function(html) {
document.getElementById('detailTypeSelectTemplateBox').innerHTML = html;
});
form.render('select', 'detailTypeSelectTemplateBox');
var selectObj = {};
selectObj['detailType'] = selectValue;
form.val('dataForm', selectObj);
}, function(code, data) {
top.dialog.msg(data.msg);
});
}
// 初始化内容
function initData() {
var loadLayerIndex;
top.restAjax.get(top.restAjax.path('api/keyplace/get/{keyPlaceId}', [keyPlaceId]), {}, null, function(code, data) {
var dataFormData = {};
for(var i in data) {
dataFormData[i] = data[i] +'';
}
form.val('dataForm', dataFormData);
form.render(null, 'dataForm');
initPlaceTypeSelect(data['placeType']);
if(null != data['placeType'] && '' != data['placeType'] && typeof(data['placeType']) != 'undefined') {
$('#detailTypeDiv').show();
initDetailTypeSelect(data['placeType'], data['detailType']);
}
initMap(data['longitude'], data['latitude']);
}, function(code, data) {
top.dialog.msg(data.msg);
}, function() {
loadLayerIndex = top.dialog.msg(top.dataMessage.loading, {icon: 16, time: 0, shade: 0.3});
}, function() {
top.dialog.close(loadLayerIndex);
});
}
initData();
// 提交表单
form.on('submit(submitForm)', function(formData) {
top.dialog.confirm(top.dataMessage.commit, function(index) {
top.dialog.close(index);
var loadLayerIndex;
top.restAjax.put(top.restAjax.path('api/keyplace/update/{keyPlaceId}', [keyPlaceId]), formData.field, null, function(code, data) {
var layerIndex = top.dialog.msg(top.dataMessage.updateSuccess, {
time: 0,
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
shade: 0.3,
yes: function(index) {
top.dialog.close(index);
window.location.reload();
},
btn2: function() {
closeBox();
}
});
}, function(code, data) {
top.dialog.msg(data.msg);
}, function() {
loadLayerIndex = top.dialog.msg(top.dataMessage.committing, {icon: 16, time: 0, shade: 0.3});
}, function() {
top.dialog.close(loadLayerIndex);
});
});
return false;
});
$('.close').on('click', function() {
closeBox();
});
});
</script>
</body>
</html>