Преглед изворни кода

1.添加修改推送消息状态接口

王鹏鹏 пре 2 година
родитељ
комит
f396794289

+ 17 - 5
push/src/main/java/com/yingyang/push/activity/MessgeListActivity.kt

@@ -21,7 +21,7 @@ class MessgeListActivity : BaseMVVMActivity<ActivityMessgeListBinding, PushViewM
     /**
      * 消息类型adapter
      */
-    private var type = ""
+    private var msgType = ""
     private var pushTypeList = mutableListOf<PushMessageTypeBean>()
     private val pushTypeAdapter by lazy { PushTypeAdapter() }
 
@@ -36,12 +36,13 @@ class MessgeListActivity : BaseMVVMActivity<ActivityMessgeListBinding, PushViewM
             //消息类型
             rvPushType.adapter = pushTypeAdapter
             pushTypeAdapter.onPushClickListener = { bean ->
-                getMeaageList(bean.dictValue)
+                msgType = bean.dictValue
+                getMeaageList()
             }
             //消息列表
             rvPush.adapter = pushListAdapter
             pushListAdapter.onPushClickListener = { bean ->
-
+                updateReadMsg("")
             }
         }
     }
@@ -54,7 +55,7 @@ class MessgeListActivity : BaseMVVMActivity<ActivityMessgeListBinding, PushViewM
 
     override fun initData() {
         getPushList()
-        getMeaageList("")
+        getMeaageList()
     }
 
     /**
@@ -82,7 +83,7 @@ class MessgeListActivity : BaseMVVMActivity<ActivityMessgeListBinding, PushViewM
     /**
      * 获取推送消息列表
      */
-    private fun getMeaageList(msgType: String) {
+    private fun getMeaageList() {
         pushList.clear()
         viewModel.getPushList(msgType, fail = {
             it.toast()
@@ -94,4 +95,15 @@ class MessgeListActivity : BaseMVVMActivity<ActivityMessgeListBinding, PushViewM
         })
     }
 
+    /**
+     * 更改消息状态
+     */
+    private fun updateReadMsg(msgId: String) {
+        viewModel.updateReadMsg(msgId, fail = {
+            it.toast()
+        }, success = {
+            getMeaageList()
+        })
+    }
+
 }

+ 14 - 0
push/src/main/java/com/yingyang/push/activity/PushViewModel.kt

@@ -37,4 +37,18 @@ class PushViewModel : BaseViewModel() {
         success,
         fail
     )
+
+    /**
+     * 更改消息状态
+     */
+    fun updateReadMsg(
+        msgId: String,
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: Unit) -> Unit)? = null,
+    ) = launchFlow(true) {
+        PUSH_API.updateReadMsg(msgId)
+    }.runUI(
+        success,
+        fail
+    )
 }

+ 6 - 0
push/src/main/java/com/yingyang/push/net/PushApiService.kt

@@ -20,4 +20,10 @@ interface PushApiService {
     @POST("app/warn/list")
     suspend fun getPushList(@Query("msgType") msgType: String): BaseResp<List<PushMessageBean>>
 
+    /**
+     * 更改消息状态
+     */
+    @POST("app/warn/readMsg")
+    suspend fun updateReadMsg(@Query("msgId") msgId: String): BaseResp<Unit>
+
 }