Просмотр исходного кода

合并代码,ContactsActivity 代码没动,采用网上分支
2.处理消息首页的闪烁问题

Bitliker 8 лет назад
Родитель
Сommit
480bcb4e5f

+ 112 - 112
app_core/common/src/main/java/com/core/dao/UUHelperDao.java

@@ -17,116 +17,116 @@ import java.util.List;
  */
 
 public class UUHelperDao extends Dao<UUHelperModel> {
-    private static UUHelperDao instance;
-
-    public static UUHelperDao getInstance() {
-        UUHelperDao inst = instance;
-        if (inst == null) {
-            synchronized (UUHelperDao.class) {
-                inst = instance;
-                if (inst == null) {
-                    inst = new UUHelperDao();
-                    instance = inst;
-                }
-            }
-        }
-        return inst;
-    }
-
-    private UUHelperDao() {
-
-    }
-
-    @Override
-    protected String getTable() {
-        return DatabaseTables.UUHelperTable.NAME;
-    }
-
-    @Override
-    protected ContentValues getValues(UUHelperModel model) throws Exception {
-        ContentValues values = new ContentValues();
-        values.put(DatabaseTables.UUHelperTable.Cols.TIME_SEND, model.getTimeSend());
-        values.put(DatabaseTables.UUHelperTable.Cols.USER_ID, MyApplication.getInstance().getLoginUserId());
-        values.put(DatabaseTables.UUHelperTable.Cols.IMAGE_URL, model.getImageUrl());
-        values.put(DatabaseTables.UUHelperTable.Cols.ICON_URL, model.getIconUrl());
-        values.put(DatabaseTables.UUHelperTable.Cols.LINK_URL, model.getLinkUrl());
-        values.put(DatabaseTables.UUHelperTable.Cols.CONTENT, model.getContent());
-        values.put(DatabaseTables.UUHelperTable.Cols.READED, model.isReaded());
-        values.put(DatabaseTables.UUHelperTable.Cols.DATE, model.getDate());
-        values.put(DatabaseTables.UUHelperTable.Cols.TITLE, model.getTitle());
-        values.put(DatabaseTables.UUHelperTable.Cols.TYPE, model.getType());
-        return values;
-    }
-
-    @Override
-    protected UUHelperModel getData(Cursor c) throws Exception {
-        int _id = c.getInt(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.ID));
-        long timeSend = c.getLong(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.TIME_SEND));
-        String imageUrl = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.IMAGE_URL));
-        String iconUrl = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.ICON_URL));
-        String linkUrl = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.LINK_URL));
-        String content = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.CONTENT));
-        String date = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.DATE));
-        String title = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.TITLE));
-        int type = c.getInt(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.TYPE));
-        boolean readed = c.getInt(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.READED)) > 0;
-        return new UUHelperModel(timeSend, date, type)
-                .setId(_id)
-                .setIconUrl(iconUrl)
-                .setImageUrl(imageUrl)
-                .setLinkUrl(linkUrl)
-                .setContent(content)
-                .setTitle(title)
-                .setReaded(readed);
-    }
-
-
-    public boolean saveData(UUHelperModel uuHelperItem) {
-        return insert(uuHelperItem, null, null);
-    }
-
-    public List<UUHelperModel> getAllModels() {
-        String orderBy = DatabaseTables.UUHelperTable.Cols.DATE + " asc";
-        String where = DatabaseTables.UUHelperTable.Cols.USER_ID + " =?";
-        String[] whereArgs = {MyApplication.getInstance().getLoginUserId()};
-        return query(null, where, whereArgs, orderBy);
-    }
-
-    public boolean deleteData(int id) {
-        if (id == -1) {
-            return clear();
-        } else {
-            return delete("id=?", new String[]{String.valueOf(id)});
-        }
-    }
-
-    public boolean updateRead(int id) {
-        long i = 0;
-        try {
-            String where = DatabaseTables.UUHelperTable.Cols.ID + " =?";
-            String[] whereArgs = {String.valueOf(id)};
-            SQLiteDatabase db = DatabaseManager.getInstance().openDatabase();
-            ContentValues values = new ContentValues();
-            values.put(DatabaseTables.UUHelperTable.Cols.READED, 1);
-            i = db.update(getTable(), values, where, whereArgs);
-        } finally {
-            DatabaseManager.getInstance().closeDatabase();
-            return i > 0;
-        }
-    }
-
-    public boolean updateRead() {
-        long i = 0;
-        try {
-            String where = null;
-            String[] whereArgs = null;
-            SQLiteDatabase db = DatabaseManager.getInstance().openDatabase();
-            ContentValues values = new ContentValues();
-            values.put(DatabaseTables.UUHelperTable.Cols.READED, 1);
-            i = db.update(getTable(), values, where, whereArgs);
-        } finally {
-            DatabaseManager.getInstance().closeDatabase();
-            return i > 0;
-        }
-    }
+	private static UUHelperDao instance;
+
+	public static UUHelperDao getInstance() {
+		UUHelperDao inst = instance;
+		if (inst == null) {
+			synchronized (UUHelperDao.class) {
+				inst = instance;
+				if (inst == null) {
+					inst = new UUHelperDao();
+					instance = inst;
+				}
+			}
+		}
+		return inst;
+	}
+
+	private UUHelperDao() {
+
+	}
+
+	@Override
+	protected String getTable() {
+		return DatabaseTables.UUHelperTable.NAME;
+	}
+
+	@Override
+	protected ContentValues getValues(UUHelperModel model) throws Exception {
+		ContentValues values = new ContentValues();
+		values.put(DatabaseTables.UUHelperTable.Cols.TIME_SEND, model.getTimeSend());
+		values.put(DatabaseTables.UUHelperTable.Cols.USER_ID, MyApplication.getInstance().getLoginUserId());
+		values.put(DatabaseTables.UUHelperTable.Cols.IMAGE_URL, model.getImageUrl());
+		values.put(DatabaseTables.UUHelperTable.Cols.ICON_URL, model.getIconUrl());
+		values.put(DatabaseTables.UUHelperTable.Cols.LINK_URL, model.getLinkUrl());
+		values.put(DatabaseTables.UUHelperTable.Cols.CONTENT, model.getContent());
+		values.put(DatabaseTables.UUHelperTable.Cols.READED, model.isReaded());
+		values.put(DatabaseTables.UUHelperTable.Cols.DATE, model.getDate());
+		values.put(DatabaseTables.UUHelperTable.Cols.TITLE, model.getTitle());
+		values.put(DatabaseTables.UUHelperTable.Cols.TYPE, model.getType());
+		return values;
+	}
+
+	@Override
+	protected UUHelperModel getData(Cursor c) throws Exception {
+		int _id = c.getInt(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.ID));
+		long timeSend = c.getLong(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.TIME_SEND));
+		String imageUrl = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.IMAGE_URL));
+		String iconUrl = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.ICON_URL));
+		String linkUrl = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.LINK_URL));
+		String content = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.CONTENT));
+		String date = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.DATE));
+		String title = c.getString(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.TITLE));
+		int type = c.getInt(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.TYPE));
+		boolean readed = c.getInt(c.getColumnIndex(DatabaseTables.UUHelperTable.Cols.READED)) > 0;
+		return new UUHelperModel(timeSend, date, type)
+				.setId(_id)
+				.setIconUrl(iconUrl)
+				.setImageUrl(imageUrl)
+				.setLinkUrl(linkUrl)
+				.setContent(content)
+				.setTitle(title)
+				.setReaded(readed);
+	}
+
+
+	public boolean saveData(UUHelperModel uuHelperItem) {
+		return insert(uuHelperItem, null, null);
+	}
+
+	public List<UUHelperModel> getAllModels() {
+		String orderBy = DatabaseTables.UUHelperTable.Cols.DATE + " asc";
+		String where = DatabaseTables.UUHelperTable.Cols.USER_ID + " =?";
+		String[] whereArgs = {MyApplication.getInstance().getLoginUserId()};
+		return query(null, where, whereArgs, orderBy);
+	}
+
+	public boolean deleteData(int id) {
+		if (id == -1) {
+			return clear();
+		} else {
+			return delete("id=?", new String[]{String.valueOf(id)});
+		}
+	}
+
+	public boolean updateRead(int id) {
+		long i = 0;
+		try {
+			String where = DatabaseTables.UUHelperTable.Cols.ID + " =?";
+			String[] whereArgs = {String.valueOf(id)};
+			SQLiteDatabase db = DatabaseManager.getInstance().openDatabase();
+			ContentValues values = new ContentValues();
+			values.put(DatabaseTables.UUHelperTable.Cols.READED, 1);
+			i = db.update(getTable(), values, where, whereArgs);
+		} finally {
+			DatabaseManager.getInstance().closeDatabase();
+			return i > 0;
+		}
+	}
+
+	public boolean updateRead(boolean readed) {
+		long i = 0;
+		try {
+			String where = null;
+			String[] whereArgs = null;
+			SQLiteDatabase db = DatabaseManager.getInstance().openDatabase();
+			ContentValues values = new ContentValues();
+			values.put(DatabaseTables.UUHelperTable.Cols.READED, readed ? 1 : 0);
+			i = db.update(getTable(), values, where, whereArgs);
+		} finally {
+			DatabaseManager.getInstance().closeDatabase();
+			return i > 0;
+		}
+	}
 }

+ 3 - 6
app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/ApprovalAdapter.java

@@ -161,7 +161,7 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
         int textColor = R.color.hintColor;
         int reId = R.drawable.weishenpi;
         if (!StringUtil.isEmpty(approval.getIdKey())) {
-            holder.valuesTv.setText(approval.getIdKey());
+            holder.valuesTv.setText(approval.getIdKey().replace("\\n","\n"));
             if (approval.getIdKey().startsWith("待审批")) {
                 textColor = R.color.approvaling;
                 reId = R.drawable.daishenpi;
@@ -292,7 +292,6 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
         final CustomProgressDialog progressDialog = CustomProgressDialog.createDialog(ct);
         progressDialog.setTitile("正在下载");
         progressDialog.setMessage("正在下载,请勿关闭程序");
-        LogUtil.i("gotoReadEnclosure");
         if (!StringUtil.isEmpty(approval.getCaption())) {
             if (isImage(approval.getCaption())) {
                 Intent intent = new Intent("com.modular.tool.SingleImagePreviewActivity");
@@ -304,7 +303,6 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
                     public void onLoadIng(int progress, int allProgress) {
                         if (progressDialog != null)
                             progressDialog.show();
-                        LogUtil.i("TODO 下载进行中回调");
                     }
 
                     @Override
@@ -379,7 +377,6 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
             if (isWeb(approval.getValues())) {
                 setViewShowAble(true, holder.valueWeb);
                 setViewShowAble(false, holder.valueEt, holder.valueTv);
-                LogUtil.i(approval.getValues());
                 holder.valueWeb.loadDataWithBaseURL(null, approval.getValues(), "text/html", "utf-8", null);
             } else {
                 setViewShowAble(true, holder.valueTv);
@@ -392,7 +389,8 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
                     if (approval.isNumber()) {
                         holder.valueTv.setText(approval.getNumber());
                     } else {
-                        holder.valueTv.setText(Html.fromHtml(approval.getValues()));
+                        LogUtil.i("bindBaseRVView="+approval.getValues());
+                        holder.valueTv.setText(Html.fromHtml(approval.getValues().replace("\n","<br />")));
                     }
                 }
             }
@@ -415,7 +413,6 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
             @Override
             public void onDatePicked(String year, String month, String day) {
                 String time = year + "-" + month + "-" + day;
-                LogUtil.i("time=" + time);
                 showView.setText(time);
                 approvals.get(position).setValues(time);
             }

+ 23 - 2
app_modular/appmessages/src/main/java/com/modular/appmessages/presenter/MessagePresenter.java

@@ -776,7 +776,28 @@ public class MessagePresenter implements OnHttpResultListener {
 //            MessageDao.getInstance().upStatusByType(friend.getDescription(), true);
 //            loadData();
 		} else if (friend.getType() == XmppMessage.TYPE_UUHELPER) {
-			UUHelperDao.getInstance().updateRead();
+			UUHelperDao.getInstance().updateRead(true);
+		} else {
+			if (friend.getUnReadNum() > 0) {
+				MsgBroadcast.broadcastMsgNumUpdate(ct, false, friend.getUnReadNum());
+				friend.setUnReadNum(0);
+				iMessageView.showModel(mFriendList);
+			}
+		}
+	}
+
+	/**
+	 * 设置未阅读该类型文件
+	 *
+	 * @param position
+	 */
+	public void unReaderAllByType(int position) {
+		if (ListUtils.isEmpty(mFriendList) || mFriendList.size() < position) return;
+		Friend friend = mFriendList.get(position).getBean();
+		if (friend.getType() == XmppMessage.TYPE_ERP) {
+			MessageDao.getInstance().upStatusByType(friend.getDescription(), false);
+		} else if (friend.getType() == XmppMessage.TYPE_UUHELPER) {
+			UUHelperDao.getInstance().updateRead(false);
 		} else {
 			if (friend.getUnReadNum() > 0) {
 				MsgBroadcast.broadcastMsgNumUpdate(ct, false, friend.getUnReadNum());
@@ -874,7 +895,7 @@ public class MessagePresenter implements OnHttpResultListener {
 			return;
 		} else if (friend.getType() == XmppMessage.TYPE_UUHELPER) {
 			ct.startActivity(new Intent(ct, UUHelperActivity.class));
-			UUHelperDao.getInstance().updateRead();
+			UUHelperDao.getInstance().updateRead(true);
 			return;
 		}
 		if (friend.getRoomFlag() == 0) {