Commit 58f6ac2e by 罗翻

消息页面修改

parent 978834a3
package com.dayu.bigfish.presenter.systemmessage;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.NewMessage;
import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class SysMessagePresenter extends SystemMessageContract.Presenter {
@Override
public void onAttached() {
}
@Override
public void getHxMessage(String hxUserId, int category, int page, int pageSize) {
ApiFactory.getHxMessage(hxUserId, category, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<NewMessage>>() {
@Override
public void accept(BasePageBean<NewMessage> messageBasePageBean) throws Exception {
mView.getHxMessageSuccess(messageBasePageBean);
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
mView.getHxMessageFail();
}
}));
}
}
package com.dayu.bigfish.presenter.systemmessage;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.base.BasePresenter;
import com.dayu.bigfish.base.BaseView;
import com.dayu.bigfish.bean.NewMessage;
/**
* Created by luo on 2016/8/4.
*/
public interface SystemMessageContract {
interface View extends BaseView {
void getHxMessageSuccess(BasePageBean<NewMessage> message);
void getHxMessageFail();
}
abstract class Presenter extends BasePresenter<View> {
public abstract void getHxMessage(String hxUserId, int category, int page, int pageSize);
}
}
......@@ -107,7 +107,6 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
mAdapter.loadMoreComplete();
mPage += 1;
}
mAdapter.notifyDataSetChanged();
} else {
mRefreshLayout.setRefreshing(false);
mAdapter.setEmptyView(R.layout.tips_empty);
......
......@@ -9,7 +9,6 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.dayu.bigfish.R;
import com.dayu.bigfish.bean.ErrorOrder;
import com.dayu.bigfish.utils.DateUtils;
import com.dayu.bigfish.utils.UtilsDate;
import static com.dayu.bigfish.utils.UtilsDate.FORMAT_ONE;
......@@ -22,11 +21,9 @@ import static com.dayu.bigfish.utils.UtilsDate.SHORT_DATE_FORMAT;
*/
public class OrderThreeTabAdapter extends BaseQuickAdapter<ErrorOrder, BaseViewHolder> {
private DateUtils mDateUtils;
public OrderThreeTabAdapter(int layoutResId) {
super(layoutResId);
mDateUtils = new DateUtils();
}
......
package com.dayu.bigfish.ui.adapter;
import android.content.Context;
import android.content.res.AssetManager;
import android.graphics.Typeface;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.dayu.bigfish.R;
import com.dayu.bigfish.bean.NewMessage;
import com.dayu.bigfish.utils.DateUtils;
import com.dayu.bigfish.utils.UtilsDate;
import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
import static com.dayu.bigfish.utils.UtilsDate.FORMAT_ONE;
import static com.dayu.bigfish.utils.UtilsDate.LONG_TIME_FORMAT_TWO;
import static com.dayu.bigfish.utils.UtilsDate.SHORT_DATE_FORMAT;
/**
* 系统消息的适配器
* 2017/10/14.
*/
public class SystemMessageAdapter extends BaseAdapter {
private List<NewMessage> dataBeenList;
private DateUtils dateUtils = new DateUtils();
private Context context;
private String dataMD;
private String dataTime;
public SystemMessageAdapter(List<NewMessage> dataBeenList, Context context) {
this.dataBeenList = dataBeenList;
this.context = context;
}
@Override
public int getCount() {
return dataBeenList.size();
}
public class SystemMessageAdapter extends BaseQuickAdapter<NewMessage, BaseViewHolder> {
@Override
public Object getItem(int position) {
return position;
public SystemMessageAdapter(int layoutResId) {
super(layoutResId);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view;
ViewHolder viewHolder;
if (convertView == null) {
view = View.inflate(context, R.layout.message_adapter, null);
viewHolder = new ViewHolder(view,context);
view.setTag(viewHolder);
protected void convert(BaseViewHolder helper, NewMessage item) {
AssetManager mgr = mContext.getAssets();//得到AssetManager
Typeface tf = Typeface.createFromAsset(mgr, "fonts/DIN Alternate Bold.ttf");//根据路径得到Typeface
helper.setTypeface(R.id.message_date, tf);
if (item.getFlag() != null && item.getFlag().equals("1")) {
helper.getView(R.id.iv).setVisibility(View.GONE);
} else {
view = convertView;
viewHolder = (ViewHolder) view.getTag();
}
initData(position, viewHolder);
return view;
}
private void initData(int position, ViewHolder viewHolder) {
if (dataBeenList.get(position).getFlag() != null && dataBeenList.get(position).getFlag().equals("1")) {
viewHolder.view.setVisibility(View.GONE);
} else {
viewHolder.view.setVisibility(View.VISIBLE);
helper.getView(R.id.iv).setVisibility(View.VISIBLE);
}
try {
dataMD = dateUtils.stringDateToDate(dataBeenList.get(position).getCreateTime());
viewHolder.messageTime.setText(dataMD);
dataTime =dateUtils.stringTimeToDate(dataBeenList.get(position).getCreateTime());
viewHolder.messageDate.setText(dataTime);
String dateMD = UtilsDate.changeFormat(item.getCreateTime(), FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(item.getCreateTime(), FORMAT_ONE, LONG_TIME_FORMAT_TWO);
helper.setText(R.id.message_date, dateMD);
helper.setText(R.id.message_time, dateTime);
helper.setText(R.id.message_text_content, item.getTitle());
} catch (Exception e) {
e.printStackTrace();
}
viewHolder.messageTextContent.setText(dataBeenList.get(position).getTitle());
}
static class ViewHolder {
@BindView(R.id.line_textView)
TextView lineTextView;
@BindView(R.id.message_date)
TextView messageDate;
@BindView(R.id.message_time)
TextView messageTime;
@BindView(R.id.message_text_content)
TextView messageTextContent;
@BindView(R.id.item)
RelativeLayout item;
@BindView(R.id.iv)
TextView view;
ViewHolder(View view,Context context) {
ButterKnife.bind(this, view);
AssetManager mgr = context.getAssets();//得到AssetManager
Typeface tf = Typeface.createFromAsset(mgr, "fonts/DIN Alternate Bold.ttf");//根据路径得到Typeface
messageDate.setTypeface(tf);//设置字体
}
}
}
package com.dayu.bigfish.ui.fragment;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.dayu.bigfish.R;
import com.dayu.bigfish.ui.adapter.BigFishMessageAdapter;
import com.dayu.bigfish.api.ApiWrapper;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.NewMessage;
import com.dayu.bigfish.greendao.GreenDaoManager;
import com.dayu.bigfish.greendao.MessageBigFishDao;
import com.dayu.bigfish.sqlbean.MessageBigFish;
import com.dayu.bigfish.utils.DateUtils;
import com.dayu.bigfish.presenter.systemmessage.SysMessagePresenter;
import com.dayu.bigfish.presenter.systemmessage.SystemMessageContract;
import com.dayu.bigfish.ui.adapter.SystemMessageAdapter;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.ToastUtils;
import org.greenrobot.greendao.query.Query;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
import io.reactivex.functions.Consumer;
/**
* 大鱼运营官方通知
* on 2017/10/11.
*/
public class BigFishMessageFragment extends Fragment {
public class BigFishMessageFragment extends BaseFragment<SysMessagePresenter> implements SystemMessageContract.View, SwipeRefreshLayout.OnRefreshListener {
Unbinder unbinder;
@BindView(R.id.message_bigfish_listview)
ListView messageBigfishListview;
@BindView(R.id.big_image_empty)
ImageView bigImageEmpty;
@BindView(R.id.big_textView_empty)
TextView bigTextViewEmpty;
@BindView(R.id.big_message_view)
RelativeLayout bigMessageView;
private BigFishMessageAdapter bigFishAdapter;
private List<NewMessage> bigFishDataList = new ArrayList<>();
@BindView(R.id.rl_sysmessage)
RecyclerView mRecyclerView;
@BindView(R.id.receiving_refersh)
SwipeRefreshLayout mRefreshLayout;
@BindView(R.id.message_view)
RelativeLayout messageView;
private SystemMessageAdapter mAdapter;
private String hxUserId;
private String token;
private DateUtils dateUtils = new DateUtils();
private MessageBigFish ss;
private MessageBigFishDao mMessageBigfishDao;
private int mPage = 1;
private int mPageSize = 10;
private int mTotalPage = 1;
private int mRefreshState = 1; //1:刷新,2:下拉加载
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View layout = inflater.inflate(R.layout.fragment_message_bigfish, container, false);
token = GetUserInfo.getToken(getContext());
hxUserId = GetUserInfo.getHxUserId(getContext());
unbinder = ButterKnife.bind(this, layout);
mMessageBigfishDao = GreenDaoManager.getInstance().getmDaoSession().getMessageBigFishDao();
initData1();
initListener();
return layout;
public View initView(View view) {
hxUserId = GetUserInfo.getHxUserId(getActivity());
ProgressUtil.startLoad(getActivity());
mPresenter.getHxMessage(hxUserId, 1, mPage, mPageSize);
mAdapter = new SystemMessageAdapter(R.layout.message_adapter);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
mRecyclerView.setAdapter(mAdapter);
mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
mRefreshLayout.setOnRefreshListener(this);
return view;
}
private void initData1() {
initData(token, hxUserId);
bigFishAdapter = new BigFishMessageAdapter(bigFishDataList, getContext(), dateUtils);
messageBigfishListview.setAdapter(bigFishAdapter);
@Override
public int getLayoutId() {
return R.layout.fragment_message_system;
}
private void initListener() {
messageBigfishListview.setOnItemClickListener((parent, view, position, id) -> {
NewMessage lookMessagesBean = bigFishDataList.get(position);
Query query = mMessageBigfishDao.queryBuilder().where(
MessageBigFishDao.Properties.Ids.eq(String.valueOf(lookMessagesBean.getId())),
MessageBigFishDao.Properties.Id1.eq(GetUserInfo.getACCOUNT_ID(getContext())))
.build();
List<MessageBigFish> list = query.list();
if (list.size() != 0) {
if (list.get(0).getFlag().equals("0")) {
MessageBigFish types = list.get(0);
types.setFlag("1");
mMessageBigfishDao.update(types);
}
}
});
}
@Override
protected void lazyLoad() {
/**
* 初始化环信数据
*/
private void initData(String token, String hxUserId) {
ProgressUtil.startLoad(getActivity());
ApiWrapper wrapper = new ApiWrapper();
wrapper.getHxMessage(hxUserId, 2, 1, 10).subscribe(new Consumer<BasePageBean<NewMessage>>() {
@Override
public void accept(BasePageBean<NewMessage> newMessageBasePageBean) throws Exception {
ProgressUtil.stopLoad();
bigFishPager(newMessageBasePageBean.getData());
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
ProgressUtil.stopLoad();
ToastUtils.showShortToast("服务器异常,消息列表获取失败");
}
});
}
private void bigFishPager(List<NewMessage> dataBeen) {
if (dataBeen.size() == 0 || dataBeen == null) {
// mTipsHelper.showEmpty();
bigMessageView.setVisibility(View.VISIBLE);
messageBigfishListview.setVisibility(View.GONE);
} else {
messageBigfishListview.setVisibility(View.VISIBLE);
bigMessageView.setVisibility(View.GONE);
//查询数据库 当前用户
Query query = mMessageBigfishDao.queryBuilder().where(MessageBigFishDao.Properties.Id1.eq(String.valueOf(GetUserInfo.getACCOUNT_ID(getContext()))))
.build();
// 查询结果以 List 返回
List<MessageBigFish> list1 = query.list();
//如果用户数据库有值
if (list1.size() > 0) {
List list = new ArrayList();
for (int ks = 0; ks < list1.size(); ks++) {
list.add(list1.get(ks).getIds());
}
//判断接口返回数据与本地数据库值,如果接口数据不包含本地。就添加
for (int j = 0; j < dataBeen.size(); j++) {
if (!list.contains(String.valueOf(dataBeen.get(j).getId()))) {
ss = new MessageBigFish(null, String.valueOf(dataBeen.get(j).getId()), String.valueOf(GetUserInfo.getACCOUNT_ID(getContext())), "0");
//插入数据
mMessageBigfishDao.insert(ss);
}
}
@Override
public void getHxMessageSuccess(BasePageBean<NewMessage> message) {
mTotalPage = message.getTotalPages();
mPageSize = message.getPageSize();
if (message.getData() != null && message.getData().size() != 0) {
if (mRefreshState == 1) {
mRefreshLayout.setRefreshing(false);
mAdapter.setNewData(message.getData());
} else {
for (int i = 0; i < dataBeen.size(); i++) {
ss = new MessageBigFish(null, String.valueOf(dataBeen.get(i).getId()), String.valueOf(GetUserInfo.getACCOUNT_ID(getContext())), "0");
//插入数据
mMessageBigfishDao.insert(ss);
}
}
Map<String, String> map = new HashMap();
for (MessageBigFish pzIm : list1) {
map.put(pzIm.getIds(), pzIm.getFlag());
mAdapter.addData(message.getData());
}
NewMessage LookMessagesBean2;
bigFishDataList.clear();
for (int ixx = 0; ixx < dataBeen.size(); ixx++) {
NewMessage LookMessagesBean1 = dataBeen.get(ixx);
LookMessagesBean2 = new NewMessage();
LookMessagesBean2.setId(LookMessagesBean1.getId());
if (map.containsKey(String.valueOf(LookMessagesBean1.getId()))) {
LookMessagesBean2.setFlag(map.get(String.valueOf(LookMessagesBean1.getId())));
}
LookMessagesBean2.setCreateTime(LookMessagesBean1.getCreateTime());
LookMessagesBean2.setAction(LookMessagesBean1.getAction());
LookMessagesBean2.setBatchId(LookMessagesBean1.getBatchId());
LookMessagesBean2.setCategory(LookMessagesBean1.getCategory());
LookMessagesBean2.setContent(LookMessagesBean1.getContent());
LookMessagesBean2.setTitle(LookMessagesBean1.getTitle());
LookMessagesBean2.setEndTime(LookMessagesBean1.getEndTime());
LookMessagesBean2.setFunctionType(LookMessagesBean1.getFunctionType());
LookMessagesBean2.setReason(LookMessagesBean1.getReason());
LookMessagesBean2.setHxAccount(LookMessagesBean1.getHxAccount());
LookMessagesBean2.setType(LookMessagesBean1.getType());
LookMessagesBean2.setStatus(LookMessagesBean1.getStatus());
LookMessagesBean2.setSender(LookMessagesBean1.getSender());
LookMessagesBean2.setStartTime(LookMessagesBean1.getStartTime());
LookMessagesBean2.setCustomJson(LookMessagesBean1.getCustomJson());
bigFishDataList.add(LookMessagesBean2);
if (bigFishDataList.isEmpty()) {
Collections.sort(bigFishDataList, (o1, o2) -> o1.getCreateTime().toString().compareTo(o2.getCreateTime().toString()));
}
if (mPage == mTotalPage) {
mAdapter.loadMoreEnd();
} else {
mAdapter.loadMoreComplete();
mPage += 1;
}
bigFishAdapter.notifyDataSetChanged();
} else {
mRefreshLayout.setRefreshing(false);
messageView.setVisibility(View.VISIBLE);
}
}
@Override
public void onDestroyView() {
super.onDestroyView();
unbinder.unbind();
public void getHxMessageFail() {
messageView.setVisibility(View.VISIBLE);
}
@Override
public void onResume() {
super.onResume();
initData(token, hxUserId);
public void onRefresh() {
mRefreshState = 1;
mPage = 1;
mPresenter.getHxMessage(hxUserId, 1, mPage, mPageSize);
}
}
package com.dayu.bigfish.ui.fragment;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.dayu.bigfish.R;
import com.dayu.bigfish.ui.adapter.SystemMessageAdapter;
import com.dayu.bigfish.api.ApiWrapper;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.MessageJsonBean;
import com.dayu.bigfish.bean.NewMessage;
import com.dayu.bigfish.greendao.GreenDaoManager;
import com.dayu.bigfish.greendao.MessageSysDao;
import com.dayu.bigfish.sqlbean.MessageSys;
import com.dayu.bigfish.ui.OrderDetailsActivity;
import com.dayu.bigfish.presenter.systemmessage.SysMessagePresenter;
import com.dayu.bigfish.presenter.systemmessage.SystemMessageContract;
import com.dayu.bigfish.ui.adapter.SystemMessageAdapter;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.ToastUtils;
import com.dayu.bigfish.views.CustomProgressDialog;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import org.greenrobot.greendao.query.Query;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
import io.reactivex.functions.Consumer;
/**
......@@ -50,179 +24,76 @@ import io.reactivex.functions.Consumer;
* on 2017/10/11.
*/
public class SystemMessageFragment extends Fragment {
@BindView(R.id.message_system_listview)
ListView messageSystemListview;
@BindView(R.id.message_image_empty)
ImageView messageImageEmpty;
@BindView(R.id.message_textView_empty)
TextView messageTextViewEmpty;
public class SystemMessageFragment extends BaseFragment<SysMessagePresenter> implements SystemMessageContract.View, SwipeRefreshLayout.OnRefreshListener {
@BindView(R.id.rl_sysmessage)
RecyclerView mRecyclerView;
@BindView(R.id.receiving_refersh)
SwipeRefreshLayout mRefreshLayout;
@BindView(R.id.message_view)
RelativeLayout messageView;
private String token;
private SystemMessageAdapter systemAdapter;
private List<NewMessage> myDataList=new ArrayList<>();
private SystemMessageAdapter mAdapter;
private String hxUserId;
private CustomProgressDialog dialog;
private int orderId;
private String stringJson;
Unbinder unbinder;
private MessageSys ss;
private MessageSysDao mMessageSysDao;
private int mPage = 1;
private int mPageSize = 10;
private int mTotalPage = 1;
private int mRefreshState = 1; //1:刷新,2:下拉加载
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View layout = inflater.inflate(R.layout.fragment_message_system, container, false);
unbinder = ButterKnife.bind(this, layout);
dialog = new CustomProgressDialog(getContext(), R.style.CustomDialog);
token = GetUserInfo.getToken(getContext());
hxUserId = GetUserInfo.getHxUserId(getContext());
mMessageSysDao = GreenDaoManager.getInstance().getmDaoSession().getMessageSysDao();
initData1();
initListener();
return layout;
public View initView(View view) {
hxUserId = GetUserInfo.getHxUserId(getActivity());
ProgressUtil.startLoad(getActivity());
mPresenter.getHxMessage(hxUserId, 1, mPage, mPageSize);
mAdapter = new SystemMessageAdapter(R.layout.message_adapter);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
mRecyclerView.setAdapter(mAdapter);
mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
mRefreshLayout.setOnRefreshListener(this);
return view;
}
private void initData1() {
initData(token, hxUserId);
systemAdapter = new SystemMessageAdapter(myDataList, getContext());
messageSystemListview.setAdapter(systemAdapter);
@Override
public int getLayoutId() {
return R.layout.fragment_message_system;
}
private void initListener() {
messageSystemListview.setOnItemClickListener((parent, view1, position, id) -> {
NewMessage lookMessagesBean = myDataList.get(position);
Query query = mMessageSysDao.queryBuilder().where(
MessageSysDao.Properties.Ids.eq(String.valueOf(lookMessagesBean.getId())),
MessageSysDao.Properties.Id1.eq(GetUserInfo.getACCOUNT_ID(getContext())))
.build();
List<MessageSys> list = query.list();
if (list.size() != 0) {
if (list.get(0).getFlag().equals("0")) {
MessageSys types = list.get(0);
types.setFlag("1");
mMessageSysDao.update(types);
}
}
stringJson = myDataList.get(position).getCustomJson();
if (!TextUtils.isEmpty(stringJson)){
JsonObject returnData = new JsonParser().parse(stringJson).getAsJsonObject();
Gson gson = new Gson();
MessageJsonBean mess = gson.fromJson(returnData, MessageJsonBean.class);
orderId = mess.getOrderId();
Intent intent = new Intent(getContext(), OrderDetailsActivity.class);
intent.putExtra("orderId", orderId + "");
startActivity(intent);
}
});
}
@Override
protected void lazyLoad() {
/**
* 初始化环信数据
*/
private void initData(String token, String hxUserId) {
ProgressUtil.startLoad(getActivity());
ApiWrapper wrapper = new ApiWrapper();
wrapper.getHxMessage(hxUserId, 1, 1, 10).subscribe(new Consumer<BasePageBean<NewMessage>>() {
@Override
public void accept(BasePageBean<NewMessage> newMessageBasePageBean) throws Exception {
ProgressUtil.stopLoad();
loadPager(newMessageBasePageBean.getData());
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
ProgressUtil.stopLoad();
ToastUtils.showShortToast("服务器异常,消息列表获取失败");
}
});
}
private void loadPager(List<NewMessage> dataBeen) {
if (dataBeen.size() == 0 || dataBeen == null) {
// mTipsHelper.showEmpty();
messageView.setVisibility(View.VISIBLE);
messageSystemListview.setVisibility(View.GONE);
dialog.dismiss();
} else {
messageSystemListview.setVisibility(View.VISIBLE);
messageView.setVisibility(View.GONE);
//查询数据库 当前用户
Query query =mMessageSysDao.queryBuilder().where(MessageSysDao.Properties.Id1.eq(String.valueOf(GetUserInfo.getACCOUNT_ID(getContext()))))
.build();
// 查询结果以 List 返回
List<MessageSys> list1 = query.list();
//如果用户数据库有值
if (list1.size() > 0) {
List list = new ArrayList();
for (int ks = 0; ks < list1.size(); ks++) {
list.add(list1.get(ks).getIds());
}
//判断接口返回数据与本地数据库值,如果接口数据不包含本地。就添加
for (int j = 0; j < dataBeen.size(); j++) {
if (!list.contains(String.valueOf(dataBeen.get(j).getId()))) {
ss = new MessageSys(null, String.valueOf(dataBeen.get(j).getId()),String.valueOf(GetUserInfo.getACCOUNT_ID(getContext())),"0");
//插入数据
mMessageSysDao.insert(ss);
}
}
@Override
public void getHxMessageSuccess(BasePageBean<NewMessage> message) {
mTotalPage = message.getTotalPages();
mPageSize = message.getPageSize();
if (message.getData() != null && message.getData().size() != 0) {
if (mRefreshState == 1) {
mRefreshLayout.setRefreshing(false);
mAdapter.setNewData(message.getData());
} else {
for (int i = 0; i <dataBeen.size(); i++) {
ss = new MessageSys(null, String.valueOf(dataBeen.get(i).getId()),String.valueOf(GetUserInfo.getACCOUNT_ID(getContext())),"0");
//插入数据
mMessageSysDao.insert(ss);
}
}
Map<String, String> map = new HashMap();
for (MessageSys pzIm : list1) {
map.put(pzIm.getIds(), pzIm.getFlag());
mAdapter.addData(message.getData());
}
NewMessage LookMessagesBean2;
myDataList.clear();
for (int ixx = 0; ixx < dataBeen.size(); ixx++) {
NewMessage LookMessagesBean1 =dataBeen.get(ixx);
LookMessagesBean2 = new NewMessage();
LookMessagesBean2.setId(LookMessagesBean1.getId());
if (map.containsKey(String.valueOf(LookMessagesBean1.getId()))) {
LookMessagesBean2.setFlag(map.get(String.valueOf(LookMessagesBean1.getId())));
}
LookMessagesBean2.setCreateTime(LookMessagesBean1.getCreateTime());
LookMessagesBean2.setAction(LookMessagesBean1.getAction());
LookMessagesBean2.setBatchId(LookMessagesBean1.getBatchId());
LookMessagesBean2.setCategory(LookMessagesBean1.getCategory());
LookMessagesBean2.setContent(LookMessagesBean1.getContent());
LookMessagesBean2.setTitle(LookMessagesBean1.getTitle());
LookMessagesBean2.setEndTime(LookMessagesBean1.getEndTime());
LookMessagesBean2.setFunctionType(LookMessagesBean1.getFunctionType());
LookMessagesBean2.setReason(LookMessagesBean1.getReason());
LookMessagesBean2.setHxAccount(LookMessagesBean1.getHxAccount());
LookMessagesBean2.setType(LookMessagesBean1.getType());
LookMessagesBean2.setStatus(LookMessagesBean1.getStatus());
LookMessagesBean2.setSender(LookMessagesBean1.getSender());
LookMessagesBean2.setStartTime(LookMessagesBean1.getStartTime());
LookMessagesBean2.setCustomJson(LookMessagesBean1.getCustomJson());
myDataList.add(LookMessagesBean2);
if (myDataList.isEmpty()) {
Collections.sort(myDataList, (o1, o2) -> o1.getCreateTime().toString().compareTo(o2.getCreateTime().toString()));
}
if (mPage == mTotalPage) {
mAdapter.loadMoreEnd();
} else {
mAdapter.loadMoreComplete();
mPage += 1;
}
systemAdapter.notifyDataSetChanged();
dialog.dismiss();
} else {
mRefreshLayout.setRefreshing(false);
messageView.setVisibility(View.VISIBLE);
}
}
@Override
public void onDestroyView() {
super.onDestroyView();
unbinder.unbind();
public void getHxMessageFail() {
messageView.setVisibility(View.VISIBLE);
}
@Override
public void onResume() {
super.onResume();
initData(token, hxUserId);
public void onRefresh() {
mRefreshState = 1;
mPage = 1;
mPresenter.getHxMessage(hxUserId, 1, mPage, mPageSize);
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/cl_home_listview_bg"
android:orientation="vertical">
<ListView
android:id="@+id/message_system_listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/cl_home_listview_bg"
android:orientation="vertical">
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/receiving_refersh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null"
android:scrollbars="none"
android:background="@color/cl_home_listview_bg"
/>
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/rl_sysmessage"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f5f5f5"
/>
</RelativeLayout>
</android.support.v4.widget.SwipeRefreshLayout>
<RelativeLayout
android:id="@+id/message_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:visibility="gone"
>
<ImageView
android:id="@+id/message_image_empty"
android:layout_width="wrap_content"
android:src="@mipmap/yu"
android:layout_height="wrap_content"
android:src="@mipmap/yu"
/>
<TextView
android:id="@+id/message_textView_empty"
android:layout_marginTop="@dimen/dp_17"
android:layout_below="@id/message_image_empty"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/message_image_empty"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_17"
android:text="暂无通知"
android:textSize="@dimen/sp_13.3"
android:textColor="@color/cl_login_clearedittext_hint"
android:textSize="@dimen/sp_13.3"
/>
</RelativeLayout>
</RelativeLayout>
\ No newline at end of file
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_width="match_parent"
android:layout_height="@dimen/dp_80"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/item"
android:layout_width="@dimen/dp_333"
......@@ -9,58 +11,62 @@
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_12"
android:background="@drawable/item_shape">
<TextView
android:id="@+id/line_textView"
android:layout_width="1dp"
android:background="@color/line_color"
android:layout_height="match_parent"
android:layout_marginLeft="89dp"
android:background="@color/line_color"
/>
<TextView
android:id="@+id/message_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/sp_12"
android:textColor="@color/cl_home_title_text_color"
android:layout_marginTop="@dimen/dp_18"
android:layout_alignRight="@id/line_textView"
android:layout_marginRight="@dimen/dp_12"
android:layout_marginTop="@dimen/dp_18"
android:text="08-10"
android:textColor="@color/cl_home_title_text_color"
android:textSize="@dimen/sp_12"
/>
<TextView
android:id="@+id/message_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="24sp"
android:layout_marginTop="@dimen/dp_34"
android:textColor="@color/cl_home_title_text_color"
android:textStyle="bold"
android:layout_alignRight="@id/line_textView"
android:layout_marginRight="@dimen/dp_12"
android:layout_marginTop="@dimen/dp_34"
android:text="18:72"
android:textColor="@color/cl_home_title_text_color"
android:textSize="24sp"
android:textStyle="bold"
/>
<TextView
android:id="@+id/message_text_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工单被改派"
android:textSize="@dimen/sp_13.3"
android:textColor="@color/cl_home_title_text_color"
android:layout_alignLeft="@id/line_textView"
android:layout_marginLeft="@dimen/dp_16"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dp_16"
android:text="工单被改派"
android:textColor="@color/cl_home_title_text_color"
android:textSize="@dimen/sp_13.3"
/>
<TextView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/sp_10"
android:textColor="@color/cl_tab_read"
android:text="未读"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_21.3"
android:text="未读"
android:textColor="@color/cl_tab_read"
android:textSize="@dimen/sp_10"
/>
</RelativeLayout>
</RelativeLayout>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment