173 lines
7.9 KiB
HTML
173 lines
7.9 KiB
HTML
{layout name="manager/layout" /}
|
||
<style>
|
||
.layui-iconpicker-body.layui-iconpicker-body-page .hide {display: none;}
|
||
</style>
|
||
<div class="layuimini-container location-operate-page">
|
||
<div class="layuimini-main">
|
||
<div class="layui-form layuimini-form">
|
||
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label required">排序</label>
|
||
<div class="layui-input-block">
|
||
<input type="number" name="sort" lay-verify="required" value="{$item.sort ?? 0}" lay-reqtext="排序不能为空" placeholder="请输入排序" class="layui-input">
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label required">标题</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="name" lay-verify="required" value="{$item.name ?? ''}" lay-reqtext="标题不能为空" placeholder="请输入标题" class="layui-input">
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 地址 -->
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label required">地址</label>
|
||
<div class="layui-input-block">
|
||
<input type="hidden" id="input-province" name="province" value="{$item.province ?? 0}">
|
||
<input type="hidden" id="input-city" name="city" value="{$item.city ?? 0}">
|
||
<input type="hidden" id="input-county" name="county" value="{$item.county ?? 0}">
|
||
<input type="hidden" id="input-province-text" name="province_text" value="{$item.province_text ?? ''}">
|
||
<input type="hidden" id="input-city-text" name="city_text" value="{$item.city_text ?? ''}">
|
||
<input type="hidden" id="input-county-text" name="county_text" value="{$item.county_text ?? ''}">
|
||
<div id="target" style="z-index: 1111"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label required">详细地址</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" name="business_address" lay-verify="required" value="{$item.business_address??''}" placeholder="请输入" class="layui-input">
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 经纬度 -->
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label required">经纬度</label>
|
||
<div class="layui-input-block">
|
||
<div class="layui-input-inline">
|
||
<input type="number" name="lng" value="{$item.lng ?? ''}" id="longitude" placeholder="请填写经度" lay-reqtext="经度不能为空" lay-verify="required" autocomplete="off" class="layui-input">
|
||
</div>
|
||
<div class="layui-input-inline">
|
||
<input type="number" name="lat" value="{$item.lat ?? ''}" id="latitude" placeholder="请填写纬度" lay-reqtext="纬度不能为空" lay-verify="required" autocomplete="off" class="layui-input">
|
||
</div>
|
||
<div class="layui-input-inline"><button class="layui-btn-normal layui-btn" id="locationBtn">定位</button></div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="layui-form-item">
|
||
<div class="layui-input-block">
|
||
<button class="layui-btn layui-btn-normal" data-url="/manager/business-circle/edit?id={$item.id}" lay-submit lay-filter="saveBtn">确认保存</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script src="__MANAGER__/js/business_circle.js?v={:mt_rand()}"></script>
|
||
|
||
<script src="__STATIC__/js/iPicker/iPicker.min.js"></script>
|
||
<script src="__STATIC__/common/jquery-3.4.1.min.js"></script>
|
||
|
||
|
||
<script>
|
||
let province = $('#input-province').val();
|
||
let city = $('#input-city').val();
|
||
let county = $('#input-county').val();
|
||
let _width = 200;
|
||
let _height = 34;
|
||
|
||
province = province ? province : '110000';
|
||
city = city ? city : '110100';
|
||
county = county ? county : '110101';
|
||
|
||
if ($('#target').length > 0) {
|
||
if ($('#target').data('width') != undefined) {
|
||
_width = $('#target').data('width');
|
||
}
|
||
if ($('#target').data('height') != undefined) {
|
||
_height = $('#target').data('height');
|
||
}
|
||
}
|
||
|
||
var picker =iPicker.create("#target", {
|
||
width: _width,
|
||
height: _height,
|
||
data: {
|
||
|
||
// 此处以通过 jquery 库获取本地数据源为例
|
||
//source: Promise.resolve($.getJSON("/static/js/iPicker/area.json"))
|
||
|
||
// 此处以通过 jquery 库获取数据为例
|
||
// 示例代码中使用的 "http://www.abcddcba.com/api/area" 是模拟地址,实际应用中替换成真实地址即可
|
||
// code 参数值就是相应地区对应的行政区划代码
|
||
// ----------------------------------------------------------------------------------------------------------
|
||
// 使用自定义数据源时,必须保证 source 属性值是 Function 类型
|
||
// iPicker 会自动执行此函数,同时要确保此函数的执行结果返回的是标准的 Promise 对象
|
||
// iPicker 会自动调用 then 方法,同时要确保 then 方法的参数就是返回的数据(Array 类型)
|
||
// ----------------------------------------------------------------------------------------------------------
|
||
// 初始状态下,iPicker 会自动执行一次 source 函数来获取 “省份” 数据,此时传入的 code 参数值为 null
|
||
// 因此,开发者可能需要给 code 参数设置一个默认值来获取 “省份” 数据(如示例代码中 code 为 null 时默认取零)
|
||
source: code => $.get( "/api/area/index.html?areaId=" + ( code || 86 ) )
|
||
|
||
},
|
||
onSelect: (code, name, all) => {
|
||
// 返回参数均为数组形式
|
||
// console.log( code );
|
||
// console.log( name );
|
||
// console.log( all );
|
||
let len = code.length;
|
||
if (len === 3) {
|
||
$('#input-province').val(code[0]);
|
||
$('#input-city').val(code[1]);
|
||
$('#input-county').val(code[2]);
|
||
$('#input-province-text').val(name[0]);
|
||
$('#input-city-text').val(name[1]);
|
||
$('#input-county-text').val(name[2]);
|
||
}
|
||
},
|
||
selected: [province, city, county],
|
||
})
|
||
</script>
|
||
|
||
<script>
|
||
layui.use(['layer','form','jquery','location'],function(){
|
||
let $ = layui.jquery;
|
||
let form = layui.form;
|
||
let location = layui.location;
|
||
|
||
let lng = $('#longitude').val();
|
||
let lat = $('#latitude').val();
|
||
|
||
lng = lng.length > 0 ? lng : '116.404';
|
||
lat = lat.length > 0 ? lat : '39.915';
|
||
let locationData = {lng: lng,lat: lat};
|
||
|
||
location.render("#locationBtn",{
|
||
type: 1,
|
||
apiType: "gaodeMap",
|
||
coordinate: "gaodeMap",
|
||
mapType: 0,
|
||
zoom: 15,
|
||
title: '区域定位',
|
||
init: function(){
|
||
// 打开地图时 延迟一定时间搜索
|
||
$('body').on('click', '#locationBtn', function () {
|
||
let address = $("input[name='address']").val();
|
||
setTimeout(function () {
|
||
$('#ew-map-select-input-search').val(address).trigger('input');
|
||
}, 1500)
|
||
})
|
||
return {longitude: $("#longitude").val()?$("#longitude").val():locationData.lng,latitude: $("#latitude").val()?$("#latitude").val():locationData.lat};
|
||
},
|
||
success: function (data) {
|
||
$("#longitude").val(data.lng);
|
||
$("#latitude").val(data.lat);
|
||
},
|
||
onClickTip: function (data) {
|
||
console.log(data);
|
||
}
|
||
|
||
});
|
||
});
|
||
</script> |