166 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			HTML
		
	
	
			
		
		
	
	
			166 lines
		
	
	
		
			7.5 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="text" name="name" lay-verify="required" 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/add" 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> |