feat: 国际进港-电报详情

This commit is contained in:
2025-12-26 20:56:33 +08:00
parent 7aa3b58c4b
commit f291a73b5b
7 changed files with 183 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
package com.lukouguoji.gjj.activity
import android.content.Context
import android.content.Intent
import android.os.Bundle
import com.alibaba.android.arouter.facade.annotation.Route
import com.lukouguoji.gjj.R
import com.lukouguoji.gjj.databinding.ActivityIntArrTelegramDetailsBinding
import com.lukouguoji.gjj.viewModel.IntArrTelegramDetailsViewModel
import com.lukouguoji.module_base.base.BaseBindingActivity
import com.lukouguoji.module_base.common.Constant
import com.lukouguoji.module_base.router.ARouterConstants
/**
* 国际进港电报详情
*/
@Route(path = ARouterConstants.ACTIVITY_URL_INT_ARR_TELEGRAM_DETAILS)
class IntArrTelegramDetailsActivity : BaseBindingActivity<ActivityIntArrTelegramDetailsBinding, IntArrTelegramDetailsViewModel>() {
override fun layoutId() = R.layout.activity_int_arr_telegram_details
override fun viewModelClass() = IntArrTelegramDetailsViewModel::class.java
override fun initOnCreate(savedInstanceState: Bundle?) {
setBackArrow("国际进港电报详情")
binding.viewModel = viewModel
// 初始化数据
viewModel.initOnCreated(intent)
}
companion object {
/**
* 启动电报详情页面
* @param context 上下文
* @param id 电报ID
* @param flow 流向(接收0、发送1)
*/
@JvmStatic
fun start(context: Context, id: String, flow: String) {
val starter = Intent(context, IntArrTelegramDetailsActivity::class.java)
.putExtra(Constant.Key.ID, id)
.putExtra(Constant.Key.FLOW, flow)
context.startActivity(starter)
}
}
}

View File

@@ -0,0 +1,56 @@
package com.lukouguoji.gjj.viewModel
import android.content.Intent
import androidx.lifecycle.MutableLiveData
import com.lukouguoji.module_base.base.BaseViewModel
import com.lukouguoji.module_base.bean.TelegramBean
import com.lukouguoji.module_base.common.Constant
import com.lukouguoji.module_base.http.net.NetApply
import com.lukouguoji.module_base.ktx.launchLoadingCollect
import com.lukouguoji.module_base.ktx.showToast
/**
* 国际进港电报详情 ViewModel
*/
class IntArrTelegramDetailsViewModel : BaseViewModel() {
var id = ""
var flow = ""
// 电报内容
val telegramContent = MutableLiveData<String>("")
/**
* 初始化
*/
fun initOnCreated(intent: Intent) {
id = intent.getStringExtra(Constant.Key.ID) ?: ""
flow = intent.getStringExtra(Constant.Key.FLOW) ?: ""
if (id.isNotEmpty() && flow.isNotEmpty()) {
getData()
}
}
/**
* 获取电报详情
*/
private fun getData() {
launchLoadingCollect({ NetApply.api.getTelegramDetails(flow, id) }) {
onSuccess = { result ->
val data = result.data
if (data is TelegramBean) {
telegramContent.value = data.teleContent
} else if (data is Map<*, *>) {
telegramContent.value = data["teleContent"]?.toString() ?: ""
}
}
}
}
/**
* 修改报文按钮点击
*/
fun onModifyClick() {
showToast("修改报文功能待实现")
}
}