|
|
@@ -15,6 +15,9 @@ import android.widget.ImageView;
|
|
|
import android.widget.ListView;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.android.volley.Response;
|
|
|
import com.android.volley.VolleyError;
|
|
|
import com.handmark.pulltorefresh.library.PullToRefreshBase;
|
|
|
@@ -42,6 +45,10 @@ import com.xzjmyk.pm.activity.ui.erp.db.DBManager;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.entity.EmployeesEntity;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.OACheckUtil;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.oa.http.OAHttpHelper;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.oa.http.OnHttpResultListener;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.oa.http.Request;
|
|
|
import com.xzjmyk.pm.activity.ui.message.ChatActivity;
|
|
|
import com.xzjmyk.pm.activity.ui.message.NewFriendActivity;
|
|
|
import com.xzjmyk.pm.activity.util.ProgressDialogUtil;
|
|
|
@@ -56,11 +63,12 @@ import java.util.ArrayList;
|
|
|
import java.util.Collections;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* Created by 123 on 2016/4/7.
|
|
|
*/
|
|
|
-public class MyFriendActivity extends BaseActivity implements RecognizerDialogListener{
|
|
|
+public class MyFriendActivity extends BaseActivity implements RecognizerDialogListener {
|
|
|
private PullToRefreshListView mPullToRefreshListView;
|
|
|
private TextView mTextDialog;
|
|
|
private SideBar mSideBar;
|
|
|
@@ -73,7 +81,7 @@ public class MyFriendActivity extends BaseActivity implements RecognizerDialogLi
|
|
|
private Handler mHandler = new Handler();
|
|
|
private boolean mNeedUpdate = true;
|
|
|
private DBManager manager;
|
|
|
- private boolean isPeculiar = false;
|
|
|
+ private boolean isPeculiar = false;//是否是常用联系人
|
|
|
private ClearEditText search_edit;
|
|
|
private ImageView voice_search;
|
|
|
|
|
|
@@ -225,7 +233,7 @@ public class MyFriendActivity extends BaseActivity implements RecognizerDialogLi
|
|
|
}
|
|
|
});
|
|
|
|
|
|
- final VoiceToWord voice = new VoiceToWord(MyFriendActivity.this,"534e3fe2");
|
|
|
+ final VoiceToWord voice = new VoiceToWord(MyFriendActivity.this, "534e3fe2");
|
|
|
voice.setRecognizerDialogListener(this); //自己调用自己
|
|
|
voice_search.setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
@@ -263,6 +271,8 @@ public class MyFriendActivity extends BaseActivity implements RecognizerDialogLi
|
|
|
List<Friend> friends;//临时变量
|
|
|
|
|
|
private void loadData() {
|
|
|
+// if (isPeculiar) loadContactByERpNet();
|
|
|
+// else
|
|
|
new Thread(new Runnable() {
|
|
|
@Override
|
|
|
public void run() {
|
|
|
@@ -283,26 +293,7 @@ public class MyFriendActivity extends BaseActivity implements RecognizerDialogLi
|
|
|
mHandler.postDelayed(new Runnable() {
|
|
|
@Override
|
|
|
public void run() {
|
|
|
- search_edit.setText("");
|
|
|
- mSortFriends.clear();
|
|
|
- allFriends.clear();
|
|
|
- mSideBar.clearExist();
|
|
|
- mSideBar.addExist("↑");
|
|
|
- mSideBar.addExist("↑");
|
|
|
- mSideBar.addExist("↑");
|
|
|
- if (friends != null && friends.size() > 0) {
|
|
|
- for (int i = 0; i < friends.size(); i++) {
|
|
|
- BaseSortModel<Friend> mode = new BaseSortModel<Friend>();
|
|
|
- mode.setBean(friends.get(i));
|
|
|
- setSortCondition(mode);
|
|
|
- mSortFriends.add(mode);
|
|
|
- allFriends.add(mode);
|
|
|
- }
|
|
|
- Collections.sort(mSortFriends, mBaseComparator);
|
|
|
- Collections.sort(allFriends, mBaseComparator);
|
|
|
- }
|
|
|
- mAdapter.notifyDataSetInvalidated();
|
|
|
- mPullToRefreshListView.onRefreshComplete();
|
|
|
+ handlerFriends(friends);
|
|
|
}
|
|
|
}, delayTime);
|
|
|
}
|
|
|
@@ -322,9 +313,81 @@ public class MyFriendActivity extends BaseActivity implements RecognizerDialogLi
|
|
|
friend.setStatus(Friend.STATUS_UNKNOW);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ private void loadContactByERpNet() {
|
|
|
+ String url = "mobile/crm/getContactPerson.action";
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
+ param.put("page", 1);
|
|
|
+// param.put("condition", "1=1");
|
|
|
+ param.put("size", 1000);
|
|
|
+ Request request = new Request.Bulider()
|
|
|
+ .setWhat(0)
|
|
|
+ .setUrl(url)
|
|
|
+ .setParam(param)
|
|
|
+ .bulid();
|
|
|
+ OAHttpHelper.getInstance().requestHttp(request, new OnHttpResultListener() {
|
|
|
+ @Override
|
|
|
+ public void result(int what, boolean isJSON, String message, Bundle bundle) {
|
|
|
+ if (!isJSON) return;
|
|
|
+ JSONObject object = JSON.parseObject(message);
|
|
|
+ JSONArray listdata = object.getJSONArray("datalist");
|
|
|
+ if (ListUtils.isEmpty(listdata)) return;
|
|
|
+ JSONObject o = null;
|
|
|
+ Friend friend = null;
|
|
|
+ List<Friend> friends = new ArrayList<Friend>();
|
|
|
+ for (int i = 0; i < listdata.size(); i++) {
|
|
|
+ o = listdata.getJSONObject(i);
|
|
|
+ String name = OACheckUtil.getJson2Text(o, "ct_name");
|
|
|
+ String ct_job = OACheckUtil.getJson2Text(o, "ct_job");
|
|
|
+ String ct_cucode = OACheckUtil.getJson2Text(o, "ct_cucode");
|
|
|
+ String ct_cuname = OACheckUtil.getJson2Text(o, "ct_cuname");
|
|
|
+ friend = new Friend();
|
|
|
+ friend.setEmCode(ct_cucode);
|
|
|
+ friend.setRemarkName(ct_cuname);
|
|
|
+ friend.setNickName(name);
|
|
|
+ friend.setPosition(ct_job);
|
|
|
+ friend.setUserId(Friend.ID_SYSTEM_MESSAGE);
|
|
|
+ friends.add(friend);
|
|
|
+ }
|
|
|
+ handlerFriends(friends);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void error(int what, String message, Bundle bundle) {
|
|
|
+
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private void handlerFriends(List<Friend> friends) {
|
|
|
+ search_edit.setText("");
|
|
|
+ mSortFriends.clear();
|
|
|
+ allFriends.clear();
|
|
|
+ mSideBar.clearExist();
|
|
|
+ mSideBar.addExist("↑");
|
|
|
+ mSideBar.addExist("↑");
|
|
|
+ mSideBar.addExist("↑");
|
|
|
+ if (friends != null && friends.size() > 0) {
|
|
|
+ for (int i = 0; i < friends.size(); i++) {
|
|
|
+ BaseSortModel<Friend> mode = new BaseSortModel<Friend>();
|
|
|
+ mode.setBean(friends.get(i));
|
|
|
+ setSortCondition(mode);
|
|
|
+ mSortFriends.add(mode);
|
|
|
+ allFriends.add(mode);
|
|
|
+ }
|
|
|
+ Collections.sort(mSortFriends, mBaseComparator);
|
|
|
+ Collections.sort(allFriends, mBaseComparator);
|
|
|
+ }
|
|
|
+ this.friends = friends;
|
|
|
+ mAdapter.notifyDataSetInvalidated();
|
|
|
+ mPullToRefreshListView.onRefreshComplete();
|
|
|
+ }
|
|
|
+
|
|
|
private void getFriendByErp(List<Friend> friends) {
|
|
|
if (manager == null)
|
|
|
- manager = new DBManager(MyApplication.getInstance());
|
|
|
+ manager = new DBManager();
|
|
|
String master = CommonUtil.getSharedPreferences(ct, "erp_master");
|
|
|
List<EmployeesEntity> emList = null;
|
|
|
if (!StringUtils.isEmpty(master)) {
|