|
@@ -33,12 +33,13 @@ import org.greenrobot.eventbus.Subscribe
|
|
import org.greenrobot.eventbus.ThreadMode
|
|
import org.greenrobot.eventbus.ThreadMode
|
|
import java.io.File
|
|
import java.io.File
|
|
|
|
|
|
-class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImListBinding>(), ChannelImContract.View {
|
|
|
|
|
|
+class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImListBinding>(), ChannelImContract.View, ChannelImItemAdapter.CallBack {
|
|
|
|
|
|
private lateinit var adapter: ChannelImItemAdapter
|
|
private lateinit var adapter: ChannelImItemAdapter
|
|
private lateinit var virtualLayoutManager: VirtualLayoutManager
|
|
private lateinit var virtualLayoutManager: VirtualLayoutManager
|
|
private lateinit var delegateAdapter: DelegateAdapter
|
|
private lateinit var delegateAdapter: DelegateAdapter
|
|
private var page: Int = 1
|
|
private var page: Int = 1
|
|
|
|
+ private val page_size: Int = 10
|
|
|
|
|
|
var downTime : Long = 0
|
|
var downTime : Long = 0
|
|
var upTime : Long = 0
|
|
var upTime : Long = 0
|
|
@@ -73,9 +74,11 @@ class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImList
|
|
rv_channel_im_list.layoutManager = virtualLayoutManager
|
|
rv_channel_im_list.layoutManager = virtualLayoutManager
|
|
rv_channel_im_list.adapter = delegateAdapter
|
|
rv_channel_im_list.adapter = delegateAdapter
|
|
|
|
|
|
|
|
+ adapter.setCallBack(this)
|
|
|
|
+
|
|
Constants.allowVoiceMsg = false
|
|
Constants.allowVoiceMsg = false
|
|
|
|
|
|
- presenter.getChannelIm(page, 10, memberId!!, channelId)
|
|
|
|
|
|
+ presenter.getChannelIm(page, page_size, memberId!!, channelId)
|
|
|
|
|
|
if (RecordHelper.getInstance().isRecording()) {
|
|
if (RecordHelper.getInstance().isRecording()) {
|
|
IMDialogHelper.showIMDialog(activity)
|
|
IMDialogHelper.showIMDialog(activity)
|
|
@@ -85,11 +88,11 @@ class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImList
|
|
override fun bindEvent() {
|
|
override fun bindEvent() {
|
|
srl_channel_im_list.setOnLoadMoreListener {
|
|
srl_channel_im_list.setOnLoadMoreListener {
|
|
page += 1
|
|
page += 1
|
|
- presenter.getChannelIm(page, 10, memberId!!, channelId)
|
|
|
|
|
|
+ presenter.getChannelIm(page, page_size, memberId!!, channelId)
|
|
}
|
|
}
|
|
srl_channel_im_list.setOnRefreshListener {
|
|
srl_channel_im_list.setOnRefreshListener {
|
|
page = 1
|
|
page = 1
|
|
- presenter.getChannelIm(page, 10, memberId!!, channelId)
|
|
|
|
|
|
+ presenter.getChannelIm(page, page_size, memberId!!, channelId)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -160,7 +163,7 @@ class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImList
|
|
showMessage("留言发送成功!")
|
|
showMessage("留言发送成功!")
|
|
//刷新列表
|
|
//刷新列表
|
|
page = 1
|
|
page = 1
|
|
- presenter.getChannelIm(page, 10, memberId!!, channelId)
|
|
|
|
|
|
+ presenter.getChannelIm(page, page_size, memberId!!, channelId)
|
|
} else {
|
|
} else {
|
|
showMessage("留言发送失败!")
|
|
showMessage("留言发送失败!")
|
|
}
|
|
}
|
|
@@ -207,6 +210,24 @@ class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImList
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ override fun onChannelImRead(item: ChannelIMVO, pos: Int) {
|
|
|
|
+ //该条留言已读,刷新状态
|
|
|
|
+ var update = false
|
|
|
|
+ for (e in adapter.data) {
|
|
|
|
+ if (e.id == item.id) {
|
|
|
|
+ e.readed = true
|
|
|
|
+ update = true
|
|
|
|
+ break
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (update && pos < adapter.data.size) {
|
|
|
|
+ runOnUiThread {
|
|
|
|
+ adapter.notifyItemChanged(pos)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
override fun onError(message: String, type: Int) {
|
|
override fun onError(message: String, type: Int) {
|
|
srl_channel_im_list.finishRefresh()
|
|
srl_channel_im_list.finishRefresh()
|
|
}
|
|
}
|
|
@@ -228,7 +249,7 @@ class ChannelImActivity : BaseActivity<ChannelImPresenter, ActivityChannelImList
|
|
if (messageEvent.tag == 3 || messageEvent.tag == Constants.EVENT_CHANNEL_IM_UPDATE) {
|
|
if (messageEvent.tag == 3 || messageEvent.tag == Constants.EVENT_CHANNEL_IM_UPDATE) {
|
|
//刷新列表
|
|
//刷新列表
|
|
page = 1
|
|
page = 1
|
|
- presenter.getChannelIm(page, 10, memberId!!, channelId)
|
|
|
|
|
|
+ presenter.getChannelIm(page, page_size, memberId!!, channelId)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|