feat: 国际进港舱单详情页展示交接图片缩略图并支持点击查看大图

从舱单列表接口新增的 pic/originalPic/picNumber 字段透传至详情页,
缩略图以水平 RecyclerView 展示,点击后通过 PreviewActivity 查看原图。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-01 19:10:58 +08:00
parent 624331ca68
commit 39934df970
8 changed files with 118 additions and 4 deletions

View File

@@ -2,12 +2,14 @@ package com.lukouguoji.gjj.activity
import android.content.Context
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.recyclerview.widget.LinearLayoutManager
import com.lukouguoji.gjj.R
import com.lukouguoji.gjj.databinding.ActivityGjjManifestDetailsBinding
import com.lukouguoji.gjj.holder.GjjManifestPicViewHolder
import com.lukouguoji.gjj.viewModel.GjjManifestDetailsViewModel
import com.lukouguoji.module_base.base.BaseBindingActivity
import com.lukouguoji.module_base.base.CommonAdapter
import com.lukouguoji.module_base.common.Constant
import com.lukouguoji.module_base.ktx.noNull
@@ -21,17 +23,33 @@ class GjjManifestDetailsActivity :
override fun initOnCreate(savedInstanceState: Bundle?) {
setBackArrow("国际进港舱单详情")
viewModel.id = intent.getStringExtra(Constant.Key.ID).noNull()
viewModel.pic = intent.getStringExtra(Constant.Key.PIC).noNull()
viewModel.originalPic = intent.getStringExtra(Constant.Key.ORIGINAL_PIC).noNull()
binding.viewModel = viewModel
val picAdapter = CommonAdapter(
this,
R.layout.item_gjj_manifest_pic,
GjjManifestPicViewHolder::class.java
)
binding.rvPic.layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false)
binding.rvPic.adapter = picAdapter
viewModel.picList.observe(this) { list ->
picAdapter.refresh(list)
}
viewModel.getData()
}
companion object {
@JvmStatic
fun start(context: Context, id: String) {
fun start(context: Context, id: String, pic: String = "", originalPic: String = "") {
val starter = Intent(context, GjjManifestDetailsActivity::class.java)
.putExtra(Constant.Key.ID, id)
.putExtra(Constant.Key.PIC, pic)
.putExtra(Constant.Key.ORIGINAL_PIC, originalPic)
context.startActivity(starter)
}
}