Просмотр исходного кода

创建项目地址坐标 增加高德自动检索失败后转手动检索

klzhangweiya 2 лет назад
Родитель
Сommit
62d81dd764
1 измененных файлов с 54 добавлено и 17 удалено
  1. 54 17
      src/YangShenSys/YangShenSys.Web.Mvc/Views/Project/ProjectInfo.cshtml

+ 54 - 17
src/YangShenSys/YangShenSys.Web.Mvc/Views/Project/ProjectInfo.cshtml

@@ -81,7 +81,7 @@
         new Input("projectName", "项目名称"),
         new Input("devOrg", "建设单位"),
         new InputHide("regionId"),
-    new Input("regionName", "地区",InputTypes.List, other: "onchange=RegionChange(this)"),
+        new Input("regionName", "地区",InputTypes.List, other: "onchange=RegionChange(this)"),
         new InputHide("coordinate"),
         new Input("address", "项目地址").SetInterAfter(" "),
         new Input("contactMan", "项目对口人").SetNotRequired(),
@@ -209,15 +209,22 @@
             <div class="modal-dialog modal-dialog-scrollable modal-dialog-centered " style="max-width: 1000px">
                 <div class="modal-content" style="width: 700px;">
                     <div class="modal-header">
-                        <div class="input-group input-group-sm  " style="position: relative">
+                        <div class="input-group input-group-sm  " style="position: relative; display: none;">
                             <input class="form-control required" id="addressValue" name="addressValue" type="text" placeholder="请输入项目地址..." data-placeholder="请输入项目地址..." style="width:80%">
-                            @*<div class="search-icon-box">
+                            <div class="search-icon-box">
                                     <div class="search-icon input-group-text" onclick="QueryAddress()">
                                         <i class="fas fa-search"></i>
                                     </div>
-                                </div>*@
+                                </div>
+                        </div>
+                        <div class="input-group input-group-sm  " style="position: relative">
+                            <input class="form-control required" id="addressValue2" name="addressValue" type="text" placeholder="请输入项目地址..." data-placeholder="请输入项目地址..." style="width:80%">
+                           @* <div class="search-icon-box">
+                                <div class="search-icon input-group-text" onclick="QueryAddress2()">
+                                    <i class="fas fa-search"></i>
+                                </div>
+                            </div>*@
                         </div>
-
                         <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                     </div>
                     <div class="modal-body" id="container-map" style="height: 500px; position: relative;">
@@ -331,10 +338,10 @@
 @await Html.PartialAsync("_detail")
 @section scripts
 {
-  <script src="/libs/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.min.js"></script>
+    <script src="/libs/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.min.js"></script>
     <script src="\libs\highcharts\highcharts-gantt.js"></script>
     <script src="https://webapi.amap.com/maps?v=1.4.15&key=4a93c6fbce674fbb621275fa23804d93"></script>
-   
+
     <script type="text/javascript" id="main-script">
         let mapzoom = window.screen.width >= 1900 ? 12 : 11;
         let selectMapPointObj;
@@ -349,27 +356,45 @@
             function() {
                 map.addControl(new AMap.ToolBar());
             });
+        var placeSearch, autocomplete;
         AMap.plugin(['AMap.Autocomplete', 'AMap.PlaceSearch'],
             function() {
                 var autoOptions = {
                     // 城市,默认全国
                     //city: "北京",
                     // 使用联想输入的input的id
-                    input: "addressValue"
+                    input: "addressValue2"
                 }
-                var autocomplete = new AMap.Autocomplete(autoOptions)
+                autocomplete = new AMap.Autocomplete(autoOptions)
 
-                var placeSearch = new AMap.PlaceSearch({
+                placeSearch = new AMap.PlaceSearch({
                     // city:'北京',
                     map: map
                 });
                 AMap.event.addListener(autocomplete,
-                    'select',
+                    'blur',
                     function(e) {
+                        console.log("error:",e)
                         //TODO 针对选中的poi实现自己的功能
                         placeSearch.setCity(e.poi.adcode);
                         placeSearch.search(e.poi.name);
                     });
+                AMap.event.addListener(autocomplete,
+                    'error',
+                    function (e) {
+                        console.log("error:", e)
+                        //TODO 针对选中的poi实现自己的功能
+                        abp.message.warn('自动检索今日已达上限,请手动输入地址点击查询!');
+                        $("#addressValue2").parent().hide()
+                        $("#addressValue").parent().show()
+                    });
+                AMap.event.addListener(autocomplete,
+                    'complete',
+                    function (e) {
+                        console.log("error:", e)
+                        //TODO 针对选中的poi实现自己的功能
+                        
+                    });
                 AMap.event.addListener(placeSearch,
                     'selectChanged',
                     function(e) {
@@ -378,6 +403,18 @@
                         selectMapPointObj = e.selected.data;
                     });
             });
+
+        function QueryAddress(){
+            var addVal = $("#addressValue").val();
+            if (!addVal){
+                abp.message.warn('请输入有效地址!');
+                return
+            }
+            placeSearch.search(addVal);
+        }
+
+        
+       
         var $table;
         var $table_height = $('body').height() - 200;
         let $addSeparate;
@@ -563,12 +600,12 @@
 
                     if (tmp == 0)
                     {
-                                        @: ts += ' <div class="form-group row" style="margin: 5px 5px;">';
+                        @: ts += ' <div class="form-group row" style="margin: 5px 5px;">';
                     }
-                                    @:ts += `<div class="col-lg-6"> <div class="input-group"><div class="input-group-prepend"> <span class="input-group-text"> @stateDisplayDto.DisplayValue</span> </div> <input type="number" data-scoretype="@stateDisplayDto.CodeValue" class="form-control" min=0 value="${data && data.length > 0 ? data.find((v) => v.scoreType == @stateDisplayDto.CodeValue).scoreValue : 0}"></div> </div>`;
+                    @:ts += `<div class="col-lg-6"> <div class="input-group"><div class="input-group-prepend"> <span class="input-group-text"> @stateDisplayDto.DisplayValue</span> </div> <input type="number" data-scoretype="@stateDisplayDto.CodeValue" class="form-control" min=0 value="${data && data.length > 0 ? data.find((v) => v.scoreType == @stateDisplayDto.CodeValue).scoreValue : 0}"></div> </div>`;
                     if (tmp == 1)
                     {
-                                        @: ts += '</div>';
+                        @: ts += '</div>';
 
                     }
                     tmp = tmp == 1 ? 0 : 1;
@@ -792,8 +829,8 @@
             }
         }
     </script>
-    
-  <script>
+
+    <script>
       function refreshCostTable(id) {
           var $tableCost = $('#tableCost');
           $.iwbAjax4({
@@ -881,7 +918,7 @@
       }
   </script>
 
-  <!--格式化-->
+    <!--格式化-->
     <script type="text/javascript">
         function LongWordFormatter(v) {
             if (v && v.length > 30) {