Browse Source

提交类型 修复bug
提交内容 修复选择地图界面进行搜索时候出现无法正常搜索的问题

Bitliker 7 years ago
parent
commit
46905ed2b6

+ 0 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/SelectAimActivity.java

@@ -43,7 +43,6 @@ public class SelectAimActivity extends OABaseActivity implements ISelectAim {
     private SelectAimAdapter adapter;
     private SelectAimAdapter adapter;
     private SelectAimPresenter presenter;
     private SelectAimPresenter presenter;
 
 
-    private String lastInput = "";
 
 
 
 
     @Override
     @Override
@@ -75,8 +74,6 @@ public class SelectAimActivity extends OABaseActivity implements ISelectAim {
             public void afterTextChanged(Editable s) {
             public void afterTextChanged(Editable s) {
                 String input = s.toString();
                 String input = s.toString();
                 input = input.replaceAll(" ", "").replaceAll("\n", "");
                 input = input.replaceAll(" ", "").replaceAll("\n", "");
-                if (lastInput.equals(input)) return;
-                lastInput = input;
                 presenter.seachByKey(input);
                 presenter.seachByKey(input);
             }
             }
         });
         });

+ 34 - 30
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/presenter/SelectAimPresenter.java

@@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.baidu.mapapi.model.LatLng;
 import com.baidu.mapapi.model.LatLng;
 import com.baidu.mapapi.search.core.PoiInfo;
 import com.baidu.mapapi.search.core.PoiInfo;
+import com.common.LogUtil;
 import com.common.data.ListUtils;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
 import com.common.data.StringUtil;
 import com.core.api.wxapi.ApiConfig;
 import com.core.api.wxapi.ApiConfig;
@@ -41,7 +42,7 @@ public class SelectAimPresenter implements OnHttpResultListener {
     private ISelectAim iSelectAim;
     private ISelectAim iSelectAim;
     private final int LOAD = 0x11;
     private final int LOAD = 0x11;
     private final int LOAD_CUSTOMER = 0x12;//拜访计划客户名称数据
     private final int LOAD_CUSTOMER = 0x12;//拜访计划客户名称数据
-    private List<SelectAimModel> models=new ArrayList<>();//从服务其返回的数据列表
+    private List<SelectAimModel> models = new ArrayList<>();//从服务其返回的数据列表
     private List<SelectAimModel> keyList;//搜索企业筛选的人员
     private List<SelectAimModel> keyList;//搜索企业筛选的人员
     private int seachMapType = 0;//下拉百度地图数据类型  1.获取附近数据  2.获取全国数据  2.获取城市数据
     private int seachMapType = 0;//下拉百度地图数据类型  1.获取附近数据  2.获取全国数据  2.获取城市数据
     private String keyWork;
     private String keyWork;
@@ -70,6 +71,11 @@ public class SelectAimPresenter implements OnHttpResultListener {
 
 
     public void seachByKey(String keyWork) {
     public void seachByKey(String keyWork) {
         this.keyWork = keyWork;
         this.keyWork = keyWork;
+        if (keyList == null) {
+            keyList = new ArrayList<>();
+        } else {
+            keyList.clear();
+        }
         if (ListUtils.isEmpty(models)) {
         if (ListUtils.isEmpty(models)) {
             if (StringUtil.isEmpty(keyWork)) {
             if (StringUtil.isEmpty(keyWork)) {
                 loadNeer();
                 loadNeer();
@@ -82,23 +88,21 @@ public class SelectAimPresenter implements OnHttpResultListener {
                     m.setFirst(false);
                     m.setFirst(false);
                 iSelectAim.showModel(models);
                 iSelectAim.showModel(models);
                 return;
                 return;
-            }
-            if (keyList == null)
-                keyList = new ArrayList<>();
-            else
-                keyList.clear();
-            boolean isFirst = true;
-            for (SelectAimModel e : models) {
-                if (isIncude(keyWork, e)) {
-                    if (isFirst) {
-                        e.setFirst(true);
-                        isFirst = false;
-                    } else
-                        e.setFirst(isFirst);
-                    keyList.add(e);
+            } else {
+                boolean isFirst = true;
+                for (SelectAimModel e : models) {
+                    if (isIncude(keyWork, e)) {
+                        if (isFirst) {
+                            e.setFirst(true);
+                            isFirst = false;
+                        } else
+                            e.setFirst(isFirst);
+                        keyList.add(e);
+                    }
                 }
                 }
+                loadDataByChina();
             }
             }
-            loadDataByChina();
+
         }
         }
 
 
     }
     }
@@ -176,14 +180,15 @@ public class SelectAimPresenter implements OnHttpResultListener {
     //下载全国数据
     //下载全国数据
     private void loadDataByChina() {
     private void loadDataByChina() {
         seachMapType = 2;
         seachMapType = 2;
-        LocationNeerHelper.getInstance().searchByInput(MyApplication.getInstance(),"中国",keyWork,0,mOnSearchLocationListener);
+        LocationNeerHelper.getInstance().searchByInput(MyApplication.getInstance(), "中国", keyWork, 0, mOnSearchLocationListener);
     }
     }
 
 
     //下载本城市数据
     //下载本城市数据
     private void loadDataByCity() {
     private void loadDataByCity() {
         seachMapType = 3;
         seachMapType = 3;
-        LocationNeerHelper.getInstance().searchByInput(MyApplication.getInstance(),null,keyWork,0,mOnSearchLocationListener);
+        LocationNeerHelper.getInstance().searchByInput(MyApplication.getInstance(), null, keyWork, 0, mOnSearchLocationListener);
     }
     }
+
     private OnSearchLocationListener mOnSearchLocationListener = new OnSearchLocationListener() {
     private OnSearchLocationListener mOnSearchLocationListener = new OnSearchLocationListener() {
         @Override
         @Override
         public void onCallBack(boolean isSuccess, List<UASLocation> locations) {
         public void onCallBack(boolean isSuccess, List<UASLocation> locations) {
@@ -191,9 +196,7 @@ public class SelectAimPresenter implements OnHttpResultListener {
                 for (SelectAimModel e : models)
                 for (SelectAimModel e : models)
                     e.setFirst(false);
                     e.setFirst(false);
                 iSelectAim.showModel(models);
                 iSelectAim.showModel(models);
-                return;
-            }
-            if (!isSuccess) {
+            } else if (!isSuccess) {
                 if (seachMapType == 1) {
                 if (seachMapType == 1) {
                     loadDataByChina();
                     loadDataByChina();
                     return;
                     return;
@@ -205,13 +208,16 @@ public class SelectAimPresenter implements OnHttpResultListener {
                     return;
                     return;
                 }
                 }
             } else {
             } else {
+                if (seachMapType==1&&!StringUtil.isEmpty(keyWork)){
+                    return;
+                }
                 SelectAimModel model = null;
                 SelectAimModel model = null;
                 boolean isFirst = true;
                 boolean isFirst = true;
                 List<PoiInfo> chches = new ArrayList<>();
                 List<PoiInfo> chches = new ArrayList<>();
-                for (UASLocation e: locations)
-                {
+                for (UASLocation e : locations) {
                     chches.add(ModelChangeUtils.location2PoiInfo(e));
                     chches.add(ModelChangeUtils.location2PoiInfo(e));
                 }
                 }
+                List<SelectAimModel> chchesModels=new ArrayList<>();
                 for (int i = 0; i < chches.size(); i++) {
                 for (int i = 0; i < chches.size(); i++) {
                     if (StringUtil.isEmpty(chches.get(i).name) || StringUtil.isEmpty(chches.get(i).address))
                     if (StringUtil.isEmpty(chches.get(i).name) || StringUtil.isEmpty(chches.get(i).address))
                         continue;
                         continue;
@@ -226,7 +232,7 @@ public class SelectAimPresenter implements OnHttpResultListener {
                     } else {
                     } else {
                         model.setFirst(false);
                         model.setFirst(false);
                     }
                     }
-                    models.add(model);
+                    chchesModels.add(model);
                 }
                 }
                 if (ListUtils.isEmpty(models)) {
                 if (ListUtils.isEmpty(models)) {
                     showEmpty();
                     showEmpty();
@@ -234,7 +240,7 @@ public class SelectAimPresenter implements OnHttpResultListener {
                     List<SelectAimModel> show = new ArrayList<>();
                     List<SelectAimModel> show = new ArrayList<>();
                     if (!ListUtils.isEmpty(keyList))
                     if (!ListUtils.isEmpty(keyList))
                         show.addAll(keyList);
                         show.addAll(keyList);
-                    show.addAll(models);
+                    show.addAll(chchesModels);
                     iSelectAim.showModel(show);
                     iSelectAim.showModel(show);
                 }
                 }
             }
             }
@@ -243,8 +249,6 @@ public class SelectAimPresenter implements OnHttpResultListener {
     };
     };
 
 
 
 
-
-
     @Override
     @Override
     public void result(int what, boolean isJSON, String message, Bundle bundle) {
     public void result(int what, boolean isJSON, String message, Bundle bundle) {
         if (isJSON && (what == LOAD || what == LOAD_CUSTOMER)) {
         if (isJSON && (what == LOAD || what == LOAD_CUSTOMER)) {
@@ -288,7 +292,6 @@ public class SelectAimPresenter implements OnHttpResultListener {
                 model.setAddress(object.getString(address));
                 model.setAddress(object.getString(address));
                 model.setTimes(object.getInteger(md_visitcount));
                 model.setTimes(object.getInteger(md_visitcount));
                 model.setName(object.getString(company));
                 model.setName(object.getString(company));
-                //TODO id先不要
 //                model.seti(object.getInteger("MD_ID"));
 //                model.seti(object.getInteger("MD_ID"));
                 model.setType(2);
                 model.setType(2);
                 float longitude = object.getFloatValue(md_longitude);
                 float longitude = object.getFloatValue(md_longitude);
@@ -332,7 +335,6 @@ public class SelectAimPresenter implements OnHttpResultListener {
                 model.setName(object.getString("CU_NAME"));
                 model.setName(object.getString("CU_NAME"));
                 model.setObject(JSON.toJSONString(object));
                 model.setObject(JSON.toJSONString(object));
                 model.setTimes(-1);
                 model.setTimes(-1);
-                //TODO id先不要
 //                model.seti(object.getInteger("MD_ID"));
 //                model.seti(object.getInteger("MD_ID"));
                 model.setType(2);
                 model.setType(2);
                 models.add(model);
                 models.add(model);
@@ -378,7 +380,9 @@ public class SelectAimPresenter implements OnHttpResultListener {
 
 
     private boolean isIncude(String key, SelectAimModel model) {
     private boolean isIncude(String key, SelectAimModel model) {
         String text = model.getAddress() + model.getTime() + model.getName();
         String text = model.getAddress() + model.getTime() + model.getName();
-        return StringUtil.isInclude(text, key);
+        boolean isInclude = StringUtil.isInclude(text, key);
+        LogUtil.i("gong", "isIncude=" + "\n text=" + text + "\n key=" + key + " ==" + isInclude);
+        return isInclude;
     }
     }
 
 
     private void log(String message) {
     private void log(String message) {