|
|
@@ -9,7 +9,9 @@ import android.content.Context;
|
|
|
import android.content.Intent;
|
|
|
import android.content.ServiceConnection;
|
|
|
import android.os.Bundle;
|
|
|
+import android.os.Handler;
|
|
|
import android.os.IBinder;
|
|
|
+import android.os.Message;
|
|
|
import android.text.TextUtils;
|
|
|
import android.util.Log;
|
|
|
import android.view.LayoutInflater;
|
|
|
@@ -25,6 +27,7 @@ import android.widget.ListView;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.parser.deserializer.IntegerFieldDeserializer;
|
|
|
import com.android.volley.Response;
|
|
|
import com.android.volley.Response.ErrorListener;
|
|
|
import com.android.volley.VolleyError;
|
|
|
@@ -46,7 +49,10 @@ import com.xzjmyk.pm.activity.ui.base.EasyFragment;
|
|
|
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.entity.HrorgsEntity;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.Constants;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.JsonValidator;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
|
|
|
import com.xzjmyk.pm.activity.ui.message.MucChatActivity;
|
|
|
import com.xzjmyk.pm.activity.util.ProgressDialogUtil;
|
|
|
@@ -64,6 +70,7 @@ import com.xzjmyk.pm.activity.xmpp.CoreService;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.HashSet;
|
|
|
+import java.util.LinkedHashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
@@ -274,6 +281,8 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
params.put("pageIndex", String.valueOf(mPageIndex));
|
|
|
params.put("pageSize", String.valueOf(AppConfig.PAGE_SIZE));
|
|
|
params.put("access_token", MyApplication.getInstance().mAccessToken);
|
|
|
+ Log.i("Arison", "获取群主列表:" + mActivity.mConfig.ROOM_LIST_HIS);
|
|
|
+ Log.i("Arison", "参数:" + JSON.toJSONString(params));
|
|
|
StringJsonArrayRequest<MucRoom> request = new StringJsonArrayRequest<MucRoom>(
|
|
|
mActivity.mConfig.ROOM_LIST_HIS, new ErrorListener() {
|
|
|
@Override
|
|
|
@@ -293,8 +302,16 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
mMucRooms.clear();
|
|
|
}
|
|
|
List<MucRoom> datas = result.getData();
|
|
|
+ Log.i("Arison","datas:"+JSON.toJSONString(datas));
|
|
|
+ //只展示类别是1的管理群
|
|
|
+ List<MucRoom> dataTemp=new ArrayList<>();
|
|
|
if (datas != null && datas.size() > 0) {
|
|
|
- mMucRooms.addAll(datas);
|
|
|
+ for (int i=0;i<datas.size();i++){
|
|
|
+ if (datas.get(i).getCategory()==1){
|
|
|
+ dataTemp.add(datas.get(i));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ mMucRooms.addAll(dataTemp);
|
|
|
}
|
|
|
mAdapter.notifyDataSetChanged();
|
|
|
}
|
|
|
@@ -362,8 +379,14 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
DBManager db=new DBManager(mContext);
|
|
|
String master= CommonUtil.getSharedPreferences(mContext, "erp_master");
|
|
|
String emCode=CommonUtil.getSharedPreferences(mContext,"erp_username");
|
|
|
+ //查找本地数据库,管理群存在,则不创建
|
|
|
List<HrorgsEntity> hlist=db.queryHrorgList(new String[]{master,emCode}, "whichsys=? and or_headmancode=?");
|
|
|
if(!ListUtils.isEmpty(hlist)){
|
|
|
+ if (hlist.get(0).getOr_remark()==1){
|
|
|
+ Log.i("Arison", "管理群已经创建");
|
|
|
+ mPullToRefreshListView.setPullDownRefreshing(200);
|
|
|
+ return;
|
|
|
+ }
|
|
|
String roomdesc="本群为管理群!";
|
|
|
for (int i=0;i<hlist.size();i++){
|
|
|
List<String> inviteUsers = new ArrayList<String>();//群组人员
|
|
|
@@ -404,7 +427,7 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
}
|
|
|
inviteUsers=removeDuplicate(inviteUsers);//去除重复数据
|
|
|
String userId=MyApplication.getInstance().mLoginUser.getUserId();
|
|
|
- createGroupChat(or_headmanname,or_name,null,roomdesc,inviteUsers);
|
|
|
+ createGroupChat(or_headmanname,or_name,null,roomdesc,inviteUsers,or_id);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -416,14 +439,6 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
}
|
|
|
|
|
|
|
|
|
-// /**
|
|
|
-// * @desc:自动创建
|
|
|
-// * @author:Administrator on 2016/5/17 8:49
|
|
|
-// */
|
|
|
-// public void autoCreateChatGroup(){
|
|
|
-// //根据用户身份创建群
|
|
|
-// //
|
|
|
-// }
|
|
|
|
|
|
private int getEmployeeIMID(DBManager db, String master, String or_headmancode) {
|
|
|
List<EmployeesEntity> elist = db.select_getEmployee(new String[]{or_headmancode,master}, "EM_CODE=? and WHICHSYS=?");
|
|
|
@@ -450,7 +465,7 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
* @author:Administrator on 2016/5/16 9:35
|
|
|
*/
|
|
|
private void createGroupChat(String nickName,final String roomName, String roomSubject, final String roomDesc,
|
|
|
- List<String> inviteUsers) {
|
|
|
+ List<String> inviteUsers,final int or_id) {
|
|
|
Log.i("Arison","nickName:"+nickName);
|
|
|
Log.i("Arison","roomName:"+roomName);
|
|
|
Log.i("Arison","roomDesc:"+roomDesc);
|
|
|
@@ -466,6 +481,7 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
params.put("access_token", MyApplication.getInstance().mAccessToken);
|
|
|
params.put("jid", roomJid);
|
|
|
params.put("name", roomName);
|
|
|
+ params.put("category","1");
|
|
|
params.put("desc", roomDesc);
|
|
|
params.put("countryId", String.valueOf(Area.getDefaultCountyId()));// 国家Id
|
|
|
|
|
|
@@ -489,11 +505,11 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
if (longitude != 0)
|
|
|
params.put("longitude", String.valueOf(longitude));
|
|
|
|
|
|
-// List<String> inviteUsers = new ArrayList<String>();
|
|
|
- //inviteUsers 群成员
|
|
|
params.put("text", JSON.toJSONString(inviteUsers));
|
|
|
|
|
|
ProgressDialogUtil.show(mProgressDialog);
|
|
|
+ Log.i("Arison", "创建群url:" + mConfig.ROOM_ADD);
|
|
|
+ Log.i("Arison","创建群参数:"+JSON.toJSONString(params));
|
|
|
StringJsonObjectRequest<MucRoom> request = new StringJsonObjectRequest<MucRoom>(mConfig.ROOM_ADD,
|
|
|
new Response.ErrorListener() {
|
|
|
@Override
|
|
|
@@ -507,6 +523,8 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
boolean parserResult = Result.defaultParser(mContext, result, true);
|
|
|
if (parserResult && result.getData() != null) {
|
|
|
//createRoomSuccess(result.getData().getId(), roomJid, roomName, roomDesc);
|
|
|
+ mPullToRefreshListView.setPullDownRefreshing(200);//加载列表
|
|
|
+ updateCreateFalgToERP(or_id);
|
|
|
}
|
|
|
ProgressDialogUtil.dismiss(mProgressDialog);
|
|
|
}
|
|
|
@@ -515,6 +533,47 @@ public class AutoCreateChatFragment extends EasyFragment {
|
|
|
MyApplication.getInstance().getFastVolley().addDefaultRequest(HASHCODE, request);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @desc:自动创建群后,避免重复,需要更新标识
|
|
|
+ * @author:Administrator on 2016/5/17 16:59
|
|
|
+ */
|
|
|
+ public void updateCreateFalgToERP(int or_id){
|
|
|
+ String url= Constants.getAppBaseUrl(mContext)+"/mobile/update_hrorgmobile.action";
|
|
|
+ Map<String, Object> params=new HashMap<>();
|
|
|
+ params.put("orid", or_id);
|
|
|
+ params.put("kind",1);
|
|
|
+ params.put("sessionId", CommonUtil.getSharedPreferences(mContext, "sessionId"));
|
|
|
+ LinkedHashMap<String, Object> headers=new LinkedHashMap<>();
|
|
|
+ headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(mContext, "sessionId"));
|
|
|
+ com.xzjmyk.pm.activity.ui.erp.util.ViewUtil.httpSendRequest(
|
|
|
+ mContext,url,params,handler,headers,1,null,null,"get");
|
|
|
+ }
|
|
|
+
|
|
|
+ private Handler handler=new Handler(){
|
|
|
+ @Override
|
|
|
+ public void handleMessage(Message msg) {
|
|
|
+ switch (msg.what){
|
|
|
+ case 1:
|
|
|
+ String result=msg.getData().getString("result");
|
|
|
+ Log.i("Arison", "result:" + result);
|
|
|
+
|
|
|
+ if (new JsonValidator().validate(result)){
|
|
|
+ String or_id=JSON.parseObject(result).getString("or_id");
|
|
|
+ if (!StringUtils.isEmpty(or_id)){
|
|
|
+ DBManager db=new DBManager(mContext);
|
|
|
+ db.updateHrogrRemark(Integer.valueOf(or_id),1);
|
|
|
+ ViewUtil.ToastMessage(mContext,"系统创建您的管理群成功!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case Constants.APP_SOCKETIMEOUTEXCEPTION:
|
|
|
+ result=msg.getData().getString("result");
|
|
|
+ ViewUtil.ToastMessage(mContext,result);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ };
|
|
|
|
|
|
private ServiceConnection mServiceConnection = new ServiceConnection() {
|
|
|
@Override
|