|
@@ -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) {
|