feat: opt printer

This commit is contained in:
2026-02-05 15:15:42 +08:00
parent 120b2eb995
commit fd20585741
4 changed files with 88 additions and 37 deletions

View File

@@ -6,12 +6,17 @@ import androidx.lifecycle.MutableLiveData
import com.lukouguoji.gjc.R
import com.lukouguoji.gjc.holder.GjcBoxWeighingViewHolder
import com.lukouguoji.module_base.base.BasePageViewModel
import com.lukouguoji.module_base.bean.GjcUldUseBean
import com.lukouguoji.module_base.common.Constant
import com.lukouguoji.module_base.http.net.NetApply
import com.lukouguoji.module_base.ktx.commonAdapter
import com.lukouguoji.module_base.ktx.launchCollect
import com.lukouguoji.module_base.ktx.launchLoadingCollect
import com.lukouguoji.module_base.ktx.showToast
import com.lukouguoji.module_base.ktx.toRequestBody
import com.lukouguoji.module_base.model.BluetoothDialogModel
import com.lukouguoji.module_base.model.ScanModel
import com.lukouguoji.module_base.util.PrinterUtils
import dev.utils.common.DateUtils
import com.lukouguoji.module_base.ktx.formatDate
@@ -73,7 +78,27 @@ class GjcBoxWeighingViewModel : BasePageViewModel() {
* 挂签打印按钮点击
*/
fun printClick() {
// TODO: 实现挂签打印功能
// 获取列表中选中的记录
val list = pageModel.rv?.commonAdapter()?.items as? List<GjcUldUseBean> ?: return
val selectedItems = list.filter { it.isSelected }
// 校验未选择
if (selectedItems.isEmpty()) {
showToast("请选择要打印的数据")
return
}
// 校验多选
if (selectedItems.size > 1) {
showToast("只能选择一条记录进行打印")
return
}
// 执行打印
val bean = selectedItems.first()
BluetoothDialogModel().showCallBack {
PrinterUtils.printGjcBoxWeighing(bean)
}
}
/**