gongpm 9 years ago
parent
commit
3f6af132d6

+ 1 - 1
WeiChat/src/main/AndroidManifest.xml

@@ -5,7 +5,7 @@
     android:versionName="4.1">
 
     <uses-sdk
-        android:minSdkVersion="14"
+        android:minSdkVersion="11"
         android:targetSdkVersion="22" />
 
     <!-- 拨打电话 -->

+ 1 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/db/dao/FriendDao.java

@@ -439,6 +439,7 @@ public class FriendDao {
 	public boolean createOrUpdateFriend(Friend friend) {
 		try {
 			CreateOrUpdateStatus status = friendDao.createOrUpdate(friend);
+			Log.i("Arison","FriendDao:createOrUpdateFriend:442:是否是更新:"+status.isUpdated());
 			return status.isCreated() || status.isUpdated();
 		} catch (SQLException e) {
 			e.printStackTrace();

+ 38 - 5
WeiChat/src/main/java/com/xzjmyk/pm/activity/helper/AvatarHelper.java

@@ -1,15 +1,20 @@
 package com.xzjmyk.pm.activity.helper;
 
+import android.graphics.Bitmap;
 import android.os.Handler;
 import android.os.Looper;
 import android.text.TextUtils;
 import android.util.Log;
+import android.view.View;
 import android.widget.ImageView;
 
 import com.nostra13.universalimageloader.core.ImageLoader;
+import com.nostra13.universalimageloader.core.assist.FailReason;
+import com.nostra13.universalimageloader.core.assist.ImageLoadingListener;
 import com.nostra13.universalimageloader.core.assist.MemoryCacheUtil;
 import com.nostra13.universalimageloader.core.imageaware.ImageAware;
 import com.xzjmyk.pm.activity.MyApplication;
+import com.xzjmyk.pm.activity.ui.erp.util.ObjectUtils;
 
 import java.io.File;
 import java.io.IOException;
@@ -179,11 +184,11 @@ public class AvatarHelper {
 
     public void displayAvatarPng(String userId, final ImageView imageView, final boolean isThumb) {
         final String url = getAvatarUrlPng(userId, isThumb);
-        Log.i("Arison","AvatarHelper:displayAvatar:140:"+url);
+      //  Log.i("Arison","AvatarHelper:displayAvatar:140:"+url);
         if (TextUtils.isEmpty(url)) {
             return;
         }
-
+//        imageView.setTag(url);
         Long lastCheckTime = mCheckTimeMaps.get(url);
         if (lastCheckTime == null || System.currentTimeMillis() - lastCheckTime > 5 * 60 * 1000) {// 至少间隔5分钟检测一下
             new Thread(new Runnable() {
@@ -249,12 +254,40 @@ public class AvatarHelper {
         return 0;
     }
 
-    private void display(String url, ImageView imageView, boolean isThumb) {
+    private void display(final String url, ImageView imageView, boolean isThumb) {
 
         if (isThumb) {
-            ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarRoundImageOptions);
+            ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarRoundImageOptions
+                 );
+
         } else {
-            ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarNormalImageOptions);
+            ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarNormalImageOptions
+              /*      ,
+                    new ImageLoadingListener() {
+                        @Override
+                        public void onLoadingStarted(String s, View view) {
+
+                        }
+
+                        @Override
+                        public void onLoadingFailed(String s, View view, FailReason failReason) {
+
+                        }
+
+                        @Override
+                        public void onLoadingComplete(String s, View view, Bitmap bitmap) {
+                            ImageView iv=(ImageView)view;
+                            String tag=(String)iv.getTag();
+                            if(ObjectUtils.isEquals(url,tag)){
+                                iv.setImageBitmap(bitmap);
+                            }
+                        }
+
+                        @Override
+                        public void onLoadingCancelled(String s, View view) {
+
+                        }
+                    }*/);
         }
     }
 

+ 5 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/account/LoginActivity.java

@@ -156,7 +156,11 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener
             params.put("latitude", String.valueOf(latitude));
         if (longitude != 0)
             params.put("longitude", String.valueOf(longitude));
-
+        Log.i("Arison","LoginActivity:login:159:model="+DeviceInfoUtil.getModel());
+        Log.i("Arison","LoginActivity:login:160:osVersion="+DeviceInfoUtil.getOsVersion());
+        Log.i("Arison","LoginActivity:login:161:serial="+DeviceInfoUtil.getDeviceId(mContext));
+        Log.i("Arison", "LoginActivity:login:162:latitude=" + String.valueOf(latitude));
+        Log.i("Arison","LoginActivity:login:163:longitude="+String.valueOf(longitude));
         final StringJsonObjectRequest<LoginRegisterResult> request = new StringJsonObjectRequest<LoginRegisterResult>(mConfig.USER_LOGIN,
                 new ErrorListener() {
                     @Override

+ 10 - 10
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/circle/BusinessCircleFragment.java

@@ -71,7 +71,7 @@ public class BusinessCircleFragment extends EasyFragment implements showCEView {
 
 	/* 封面视图 */
 	private View mMyCoverView;// 封面root view
-	private CarouselImageView mCoverImg;// 封面图片ImageView
+	private ImageView mCoverImg;// 封面图片ImageView
 	private Button mInviteBtn;// 面试邀请按钮
 	private ImageView mAvatarImg;// 用户头像
 	private ResizeLayout mResizeLayout;
@@ -327,7 +327,7 @@ public class BusinessCircleFragment extends EasyFragment implements showCEView {
 	private void initCoverView() {
 		Log.d("wang", "初始化View");
 		mMyCoverView = LayoutInflater.from(getActivity()).inflate(R.layout.space_cover_view, null);
-		mCoverImg = (CarouselImageView) mMyCoverView.findViewById(R.id.cover_img);
+		mCoverImg = (ImageView) mMyCoverView.findViewById(R.id.cover_img);
 		mInviteBtn = (Button) mMyCoverView.findViewById(R.id.invite_btn);
 		mAvatarImg = (ImageView) mMyCoverView.findViewById(R.id.avatar_img);
 		// 邀请按钮
@@ -352,11 +352,11 @@ public class BusinessCircleFragment extends EasyFragment implements showCEView {
 			}
 		});
 
-		if (isMyBusiness() || isMySpace()) {
-			mCoverImg.setUserId(mLoginUserId);
-		} else {
-			mCoverImg.setUserId(mUserId);
-		}
+//		if (isMyBusiness() || isMySpace()) {
+//			mCoverImg.setUserId(mLoginUserId);
+//		} else {
+//			mCoverImg.setUserId(mUserId);
+//		}
 
 		mCoverImg.setOnClickListener(new OnClickListener() {
 			@Override
@@ -414,7 +414,7 @@ public class BusinessCircleFragment extends EasyFragment implements showCEView {
 		for (int i = 0; i < photos.size(); i++) {
 			coverPhotos[i] = photos.get(i).getOriginalUrl();
 		}
-		mCoverImg.setImages(coverPhotos);
+//		mCoverImg.setImages(coverPhotos);
 	}
 
 	private List<MyPhoto> mPhotos = null;
@@ -438,7 +438,7 @@ public class BusinessCircleFragment extends EasyFragment implements showCEView {
 	public void onResume() {
 		Log.d("wang", "onResume");
 		if (mCoverImg != null) {
-			mCoverImg.onResume();
+//			mCoverImg.onResume();
 		}
 		super.onResume();
 		if (mAdapter != null) {
@@ -462,7 +462,7 @@ public class BusinessCircleFragment extends EasyFragment implements showCEView {
 	public void onStop() {
 		Log.d("wang", "onStop");
 		if (mCoverImg != null) {
-			mCoverImg.onStop();
+//			mCoverImg.onStop();
 		}
 		if (listener != null) {
 			listener.ideChangeFragment();

+ 8 - 5
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/DbfindListActivity.java

@@ -7,9 +7,11 @@ import java.util.List;
 import java.util.Map;
 
 import android.annotation.SuppressLint;
+import android.annotation.TargetApi;
 import android.content.Context;
 import android.content.Intent;
 import android.graphics.drawable.Drawable;
+import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
 import android.text.Editable;
@@ -166,6 +168,7 @@ public class DbfindListActivity extends BaseActivity {
 
 	}
 	
+	@TargetApi(Build.VERSION_CODES.HONEYCOMB)
 	private class ModeCallback implements ListView.MultiChoiceModeListener {
 		private View mMultiSelectActionBarView;
 	    private TextView mSelectedCount;
@@ -310,18 +313,18 @@ public class DbfindListActivity extends BaseActivity {
 			// store.en_defaultorid.setText(lists.get(position).getEm_defaultorid()+"");
 			
 			
-			updateBackground(position+1, store.en_name);
+			updateBackground(position+1, view);
 			return view;
 		}
 
 		
-		@SuppressLint("NewApi")
+
 		public void updateBackground(int position, View view) {
 			int backgroundId;
 			if (lv_employee.getRefreshableView().isItemChecked(position)) {
-				backgroundId = R.drawable.list_selected_holo_light;
-				Drawable background = ct.getResources().getDrawable(backgroundId);
-				view.setBackground(background);
+//				backgroundId = R.drawable.list_selected_holo_light;
+//				Drawable background = ct.getResources().getDrawable(backgroundId);
+				view.setBackgroundResource(R.drawable.list_selected_holo_light);
 			} else {
 //				backgroundId = R.drawable.conversation_item_background_read;
 //				Drawable background = ct.getResources().getDrawable(backgroundId);

+ 7 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/net/ViewUtil.java

@@ -444,6 +444,12 @@ public class ViewUtil {
                 mdProcessDialog.cancel();
             }
         }, 1000);
+        if (ct instanceof Activity) {
+            if (((Activity) ct) instanceof MainActivity) {
+            } else {
+                ct.startActivity(new Intent(ct, DataDownloadActivity.class));
+            }
+        }
         sendBrodcast("B2B");
     }
 
@@ -516,6 +522,7 @@ public class ViewUtil {
                     erpEntities.add(map);//ERP账户累加到数组
                 } else if (map.getPlatform().equals("B2B")) {
                     b2b_uu = map.getAccount();
+                    erp_phone=phone;
                     LoginB2BTask(phone, password);//登录B2B
                 }
 

+ 8 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/groupchat/SelectContactsActivity.java

@@ -201,6 +201,14 @@ public class SelectContactsActivity extends BaseActivity {
 
     private void loadData() {
         List<Friend> userInfos = FriendDao.getInstance().getAllContacts(mLoginUserId);
+        //排除自己
+        if(!ListUtils.isEmpty(userInfos)){
+            for (int i=0;i<userInfos.size();i++){
+                if (userInfos.get(i).getUserId().equals(MyApplication.getInstance().mLoginUser.getUserId())){
+                    userInfos.remove(userInfos.get(i));
+                }
+            }
+        }
         if (userInfos != null) {
             mFriendList.clear();
             mFriendList.addAll(userInfos);

+ 61 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/AddContactsActivity.java

@@ -2,6 +2,7 @@ package com.xzjmyk.pm.activity.ui.message;
 
 import android.app.ProgressDialog;
 import android.content.ComponentName;
+import android.content.Intent;
 import android.content.ServiceConnection;
 import android.graphics.Bitmap;
 import android.media.ThumbnailUtils;
@@ -29,7 +30,11 @@ import com.android.volley.VolleyError;
 import com.loopj.android.http.AsyncHttpClient;
 import com.loopj.android.http.AsyncHttpResponseHandler;
 import com.loopj.android.http.RequestParams;
+import com.xzjmyk.pm.activity.AppConstant;
 import com.xzjmyk.pm.activity.bean.MucRoomSimple;
+import com.xzjmyk.pm.activity.broadcast.CardcastUiUpdateUtil;
+import com.xzjmyk.pm.activity.broadcast.MsgBroadcast;
+import com.xzjmyk.pm.activity.broadcast.MucgroupUpdateUtil;
 import com.xzjmyk.pm.activity.db.dao.FriendDao;
 import com.xzjmyk.pm.activity.helper.AvatarHelper;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
@@ -40,6 +45,7 @@ import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.NumberUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.PropertiesUtil;
 import com.xzjmyk.pm.activity.ui.groupchat.SelectContactsActivity;
+import com.xzjmyk.pm.activity.util.Constants;
 import com.xzjmyk.pm.activity.util.DateFormatUtil;
 import com.xzjmyk.pm.activity.util.DisplayUtil;
 import com.xzjmyk.pm.activity.util.ImageUtil;
@@ -80,6 +86,7 @@ public class AddContactsActivity extends BaseActivity {
 	private List<Integer> mSelectPositions;
 	private HorListViewAdapter mHorAdapter;
 
+	private int Id;
 	private String mRoomId;
 	private String mRoomJid;
 	private String mRoomDes;
@@ -97,6 +104,7 @@ public class AddContactsActivity extends BaseActivity {
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_select_contacts);
 		if (getIntent() != null) {
+			Id = getIntent().getIntExtra("id",0);
 			mRoomId = getIntent().getStringExtra("roomId");
 			mRoomJid = getIntent().getStringExtra("roomJid");
 			mRoomDes = getIntent().getStringExtra("roomDes");
@@ -382,9 +390,10 @@ public class AddContactsActivity extends BaseActivity {
 				boolean parserResult = Result.defaultParser(mContext, result, true);
 				if (parserResult) {
 					while (uploadImageTask.isAlive()){	//上传线程正在运行
-						Log.i("Arison","SelectContactsActivity:onResponse:440:上传是否结束:"+uploadImageTask.isAlive());
+						//Log.i("Arison","SelectContactsActivity:onResponse:440:上传是否结束:"+uploadImageTask.isAlive());
 					}
-					inviteFriendSuccess();
+					createRoomSuccess(mRoomId, mRoomJid, mRoomName, mRoomDes, photoId);
+//					inviteFriendSuccess();
 				}
 				ProgressDialogUtil.dismiss(mProgressDialog);
 			}
@@ -392,6 +401,56 @@ public class AddContactsActivity extends BaseActivity {
 		addDefaultRequest(request);
 	}
 
+
+	private void createRoomSuccess(String roomId, String roomJid, String roomName, String roomDesc,String photoId) {
+		Log.i("Arison", "AddContactsActivity:createRoomSuccess:403:mLoginUserId=" +
+				mLoginUserId + "roomId=" + roomId + "roomJid=" + roomJid + "id:" + Id);
+		Friend friend = new Friend();// 将房间也存为好友
+		friend.set_id(Id);
+		friend.setOwnerId(mLoginUserId);
+		friend.setUserId(roomJid);
+		friend.setNickName(roomName);
+		friend.setDescription(roomDesc);
+		friend.setContent("更新头像成功!");
+		friend.setRoomFlag(1);
+		friend.setRoomId(roomId);
+//        friend.setRoomCreateUserId(mLoginUserId);
+		Log.i("Arison","AddContactsActivity:createRoomSuccess:411:photoId="+photoId);
+		friend.setRoomCreateUserId(photoId);
+		// timeSend作为取群聊离线消息的标志,所以要在这里设置一个初始值
+		friend.setTimeSend(TimeUtils.sk_time_current_time());
+		friend.setStatus(Friend.STATUS_FRIEND);
+	    boolean isUpdateSuce= FriendDao.getInstance().createOrUpdateFriend(friend);
+		Log.i("Arison", "AddContactsActivity:createRoomSuccess:417:isUpdateSuce=" + isUpdateSuce);
+		// 更新名片盒(可能需要更新)
+		CardcastUiUpdateUtil.broadcastUpdateUi(this);
+		// 更新群聊界面
+		MucgroupUpdateUtil.broadcastUpdateUi(this);
+		MsgBroadcast.broadcastMsgUiUpdate(this);
+
+		MucRoomSimple mucRoomSimple = new MucRoomSimple();
+		mucRoomSimple.setId(roomId);
+		mucRoomSimple.setJid(roomJid);
+		mucRoomSimple.setName(roomName);
+		mucRoomSimple.setDesc(roomDesc);
+		mucRoomSimple.setUserId(mLoginUserId);
+		mucRoomSimple.setTimeSend(TimeUtils.sk_time_current_time());
+		String reason = JSON.toJSONString(mucRoomSimple);
+		Log.d("roamer", "reason:" + reason);
+		// 邀请好友
+		String[] noticeFriendList = new String[mSelectPositions.size()];
+		for (int i = 0; i < mSelectPositions.size(); i++) {
+			if (mSelectPositions.get(i) == -1) {
+				continue;
+			}
+			String firendUserId = mFriendList.get(mSelectPositions.get(i)).getUserId();
+			noticeFriendList[i] = firendUserId;
+			mCoreService.invite(roomJid, firendUserId, reason);
+		}
+
+		finish();
+	}
+
 	private void inviteFriendSuccess() {
 		MucRoomSimple mucRoomSimple = new MucRoomSimple();
 		mucRoomSimple.setId(mRoomId);

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/ChatActivity.java

@@ -519,7 +519,7 @@ public class ChatActivity extends ActionBackActivity
 
             mService.sendChatMessage(mFriend.getUserId(), message);
             //进行百度推送
-            // sendPushTask(mLoginUserId, mFriend.getUserId(), message.getContent());
+            sendPushTask(mLoginUserId, mFriend.getUserId(), message.getContent());
 
         }
     }

+ 3 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/MessageFragment.java

@@ -340,6 +340,7 @@ public class MessageFragment extends EasyFragment {
                 String mLoginUserId = MyApplication.getInstance().mLoginUser.getUserId();
                 long startTime = System.currentTimeMillis();
                 final List<Friend> friends = FriendDao.getInstance().getNearlyFriendMsg(mLoginUserId);
+                Log.i("Arison","MessageFragment:run:337:"+JSON.toJSONString(friends));
                 setFriendName(friends, mLoginUserId);
                 long delayTime = 200 - (startTime - System.currentTimeMillis());// 保证至少200ms的刷新过程
                 if (delayTime < 0) {
@@ -493,7 +494,6 @@ public class MessageFragment extends EasyFragment {
             }
             if (position % 2 == 0) {
                 convertView.setBackgroundColor(getActivity().getResources().getColor(R.color.item_color1));
-//                ViewAlphaUtil.setViewAlpha(convertView);
             } else {
                 convertView.setBackgroundColor(getActivity().getResources().getColor(R.color.item_color2));
             }
@@ -598,7 +598,8 @@ public class MessageFragment extends EasyFragment {
                         // 消息表中删除
                         ChatMessageDao.getInstance().deleteMessageTable(mLoginUserId, friend.getUserId());
                     } else {
-                        deleteRoom(mLoginUserId, mFriendList.get(position));
+                        //deleteRoom(mLoginUserId, mFriendList.get(position));
+                        deleteFriend(mLoginUserId,mFriendList.get(position));
                     }
 
                 }

+ 3 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/MucChatActivity.java

@@ -545,7 +545,7 @@ public class MucChatActivity extends ActionBackActivity
         } else {
             send(message);
         }
-//        loadMembers(message.getContent());//百度推送,过滤本用户
+        loadMembers(message.getContent());//百度推送,过滤本用户
     }
 
     //把信息转发百度推送
@@ -561,7 +561,6 @@ public class MucChatActivity extends ActionBackActivity
     }
 
     private void loadMembers(final String body) {
-
         HashMap<String, String> params = new HashMap<String, String>();
         params.put("access_token", MyApplication.getInstance().mAccessToken);
         params.put("roomId", mFriend.getRoomId());
@@ -586,10 +585,10 @@ public class MucChatActivity extends ActionBackActivity
                         }
                     }
                     //TODO 获取完群组成员id后发送百度推送
-                    // sendPushTask(mLoginUserId, mFriend.getUserId(), body, str);
+                     sendPushTask(mLoginUserId, mFriend.getUserId(), body, str);
                 } else {
                     //TODO 当获取群成员失败时候 重新获取 直到获取成功
-                    //  loadMembers(body);
+                     loadMembers(body);
                 }
             }
         }, MucRoom.class, params);

+ 2 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/RoomInfoActivity.java

@@ -195,6 +195,7 @@ public class RoomInfoActivity extends BaseActivity {
                         }
                         // 去添加人
                         Intent intent = new Intent(RoomInfoActivity.this, AddContactsActivity.class);
+                        intent.putExtra("id", mRoom.get_id());
                         intent.putExtra("roomId", mRoom.getRoomId());
                         intent.putExtra("roomJid", mRoomJid);
                         intent.putExtra("roomName", mRoomNameTv.getText().toString());
@@ -219,6 +220,7 @@ public class RoomInfoActivity extends BaseActivity {
                         }
                         // 去添加人
                         Intent intent = new Intent(RoomInfoActivity.this, AddContactsActivity.class);
+                        intent.putExtra("id", mRoom.get_id());
                         intent.putExtra("roomId", mRoom.getRoomId());
                         intent.putExtra("roomJid", mRoomJid);
                         intent.putExtra("roomName", mRoomNameTv.getText().toString());

+ 13 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/SubscribeListActivity.java

@@ -0,0 +1,13 @@
+package com.xzjmyk.pm.activity.ui.message;
+
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+
+public class SubscribeListActivity extends AppCompatActivity {
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_subscribe_list);
+    }
+}

+ 10 - 0
WeiChat/src/main/res/layout/activity_subscribe_list.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
+    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
+    android:paddingRight="@dimen/activity_horizontal_margin"
+    android:paddingTop="@dimen/activity_vertical_margin"
+    android:paddingBottom="@dimen/activity_vertical_margin"
+    tools:context="com.xzjmyk.pm.activity.ui.message.SubscribeListActivity">
+
+</RelativeLayout>

+ 2 - 2
WeiChat/src/main/res/layout/list_multi_select_actionbar.xml

@@ -12,7 +12,7 @@
         android:textAppearance="?android:attr/textAppearanceMediumInverse"
         android:layout_weight="1"
         android:text="已选择"
-        android:textColor="@color/black"
+        android:textColor="@color/white"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" />
 
@@ -21,7 +21,7 @@
         android:maxLines="1"
         android:singleLine="true"
         android:textAppearance="?android:attr/textAppearanceLarge"
-        android:textColor="@color/black"
+        android:textColor="@color/white"
         android:layout_gravity="center_vertical"
         android:paddingRight="10dip"
         android:text="0"

+ 0 - 2
WeiChat/src/main/res/menu/main_action_bar.xml

@@ -4,6 +4,4 @@
         android:title="" 
         android:enabled="false">
     </item>
-    
-
 </menu>