From 0a0ddc2087fa31cafb0589cf5c826f7caef1914e Mon Sep 17 00:00:00 2001 From: Hentua <wangdoubleone@gmail.com> Date: Mon, 08 May 2023 11:36:23 +0800 Subject: [PATCH] fix --- src/main/resources/templates/febs/views/modules/shop/add.html | 112 ++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 88 insertions(+), 24 deletions(-) diff --git a/src/main/resources/templates/febs/views/modules/shop/add.html b/src/main/resources/templates/febs/views/modules/shop/add.html index aa6da10..3a77c86 100644 --- a/src/main/resources/templates/febs/views/modules/shop/add.html +++ b/src/main/resources/templates/febs/views/modules/shop/add.html @@ -45,7 +45,7 @@ <div class="layui-form-item"> <label class="layui-form-label febs-form-item-require">联系方式:</label> <div class="layui-input-block"> - <input type="text" name="shopName" autocomplete="off" class="layui-input" > + <input type="text" name="phone" autocomplete="off" class="layui-input" > </div> </div> @@ -63,15 +63,39 @@ </div> </div> - <div class="layui-form-item"> - <label class="layui-form-label febs-form-item-require">地址:</label> - <div class="layui-input-block"> - <input type="text" name="shopName" autocomplete="off" class="layui-input" id="tipinput"> + <div class="layui-form-item" id="area-picker"> + <div class="layui-form-label febs-form-item-require">选择地区</div> + <div class="layui-input-inline" style="width: 200px;"> + <select name="province" class="province-selector" lay-filter="province-1"> + <option value="">请选择省</option> + </select> + </div> + <div class="layui-input-inline" style="width: 200px;"> + <select name="city" class="city-selector" lay-filter="city-1"> + <option value="">请选择市</option> + </select> + </div> + <div class="layui-input-inline" style="width: 200px;"> + <select name="county" class="county-selector" lay-filter="county-1"> + <option value="">请选择区</option> + </select> </div> </div> <div class="layui-form-item"> - <label class="layui-form-label">选择地址:</label> + <label class="layui-form-label febs-form-item-require">详细地址</label> + <div class="layui-input-block"> + <div class="layui-inline layui-col-md9"> + <input type="text" name="shopAddress" autocomplete="off" class="layui-input" id="tipinput"> + </div> + <div class="layui-inline"> + <button class="layui-btn" id="select-address" type="button">选择地址</button> + </div> + </div> + </div> + + <div class="layui-form-item"> + <label class="layui-form-label"></label> <div class="layui-input-block"> <div style="padding: .1rem;"> <div id="container" class="map"></div> @@ -81,8 +105,8 @@ <div class="layui-form-item febs-hide"> <div class="layui-input-block"> - <input type="text" name="longitude" autocomplete="off" class="layui-input" > - <input type="text" name="latitude" autocomplete="off" class="layui-input" > + <input type="text" name="longitude" id="longitude" autocomplete="off" class="layui-input" > + <input type="text" name="latitude" id="latitude" autocomplete="off" class="layui-input" > </div> </div> @@ -94,7 +118,7 @@ </div> <script data-th-inline="javascript"> - layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','layedit', 'laydate', 'upload'], function () { + layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','layedit', 'laydate', 'upload', 'layarea'], function () { var $ = layui.$, febs = layui.febs, layer = layui.layer, @@ -104,7 +128,12 @@ laydate = layui.laydate, layedit = layui.layedit, $view = $('#shop-add'), - validate = layui.validate; + $selectAddress = $('#select-address'), + $tipinput = $('#tipinput'), + $latitude = $('#latitude'), + $longitude = $('#longitude'), + validate = layui.validate + , layarea = layui.layarea; form.render(); @@ -131,10 +160,15 @@ formSelects.render(); form.on('submit(shop-add-form-submit)', function (data) { - febs.post(ctx + 'admin/news/addNewsInfo', data.field, function () { + if(!data.field.longitude || !data.field.latitude) { + febs.alert.warn('请点击选择地址'); + return; + } + + febs.post(ctx + 'admin/shop/add', data.field, function () { layer.closeAll(); febs.alert.success('操作成功'); - $('#febs-newInfo').find('#reset').click(); + $('#febs-shopInfo').find('#reset').click(); }); return false; }); @@ -181,7 +215,7 @@ }); } - $view.find('#container').css({"height": document.documentElement.clientHeight - 97 + 'px'}); + $view.find('#container').css({"height": 500 + 'px'}); var map = new AMap.Map("container", { resizeEnable: true, @@ -198,20 +232,50 @@ // }) }) + var geocoder = new AMap.Geocoder({ + }); + var marker = new AMap.Marker(); + function geoCode() { + var address = $tipinput.val() + if (!address) { + return; + } - // function currentLocationInfo() { - // map.getCity(function (info) { - // febs.alert.success('当前位置:' + info.province + ',' + info.city + ',' + info.district + ',区号:' + info.citycode); - // }); - // } + geocoder.getLocation(address, function(status, result) { + console.log(result); + console.log(status) + if (status === 'complete' && result.geocodes.length) { + var lnglat = result.geocodes[0].location + marker.setPosition(lnglat); + map.add(marker); + map.setFitView(marker); - // currentLocationInfo(); - // - // //为地图注册click事件获取鼠标点击出的经纬度坐标 - // map.on('click', function (e) { - // febs.alert.success('经度:' + e.lnglat.getLng() + ',纬度:' + e.lnglat.getLat()); - // }); + $latitude.val(lnglat.lat); + $longitude.val(lnglat.lng); + }else{ + layui.msg('根据地址查询位置失败'); + } + }); + } + + layarea.render({ + elem: '#area-picker', + change: function (res) { + //选择结果 + console.log(res); + map.getCity(function(info) { + var city = info.city ? info.city : info.province + if (res.city && city !== res.city) { + map.setCity(res.city) + } + }); + } + }); + + $selectAddress.on('click', function() { + geoCode(); + }) }); </script> <script type="text/javascript" src="https://cache.amap.com/lbs/static/addToolbar.js"></script> \ No newline at end of file -- Gitblit v1.9.1