取盘优化
This commit is contained in:
@@ -3,6 +3,7 @@ package com.sw.platecabinet.activity
|
||||
import android.content.Intent
|
||||
import android.util.Log
|
||||
import androidx.activity.viewModels
|
||||
import com.sw.inbound.utils.DateTimeUtils
|
||||
import com.sw.plate.utils.AppUtil
|
||||
import com.sw.plate.utils.ToastUtils
|
||||
import com.sw.platecabinet.GlobalData
|
||||
@@ -102,12 +103,26 @@ class DeviceInitActivity : BaseActivity<ActivityDeviceInitBinding>() {
|
||||
EquipmentUserInfo(
|
||||
equipmentBoxCode = "${index + 1}",
|
||||
// faceId = null,
|
||||
// plateNumber = if (index == 4) "011075" else null,
|
||||
// plateNumber = null,
|
||||
// updateTime = null
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
// TODO: 测试数据----------------------------⬇️
|
||||
// else {
|
||||
// list[0].let {
|
||||
// it.plateNumber = "013748"
|
||||
// it.faceId = "111111111"
|
||||
// it.updateTime = DateTimeUtils.getDateTimeString()
|
||||
// }
|
||||
// list[1].let {
|
||||
// it.plateNumber = "013749"
|
||||
// it.faceId = "222222222"
|
||||
// it.updateTime = DateTimeUtils.getDateTimeString()
|
||||
// }
|
||||
// }
|
||||
// TODO: 测试数据----------------------------⬆️
|
||||
MyApp.plateList = list
|
||||
}
|
||||
|
||||
|
||||
@@ -248,21 +248,23 @@ class LoginByFaceActivity : BaseActivity<ActivityLoginFaceBinding>(),
|
||||
*/
|
||||
private fun openPlate(userId: String?) {
|
||||
getPlateData { items ->
|
||||
Log.d(TAG, "openPlate: ${Gson().toJson(items)}")
|
||||
Log.d(TAG, "openPlate: items:${Gson().toJson(items)}")
|
||||
var item = items.firstOrNull { it.faceId == userId }
|
||||
Log.d(TAG, "openPlate: item1:${item}")
|
||||
if (item != null) {
|
||||
//餐盘已取
|
||||
ToastUtils.showToast("您已拿过餐盘!")
|
||||
return@getPlateData
|
||||
}
|
||||
// 未查询到当前用户
|
||||
item = items.firstOrNull { it.plateNumber.isNullOrEmpty().not() }
|
||||
// 未查询到当前用户,查询第一个未绑定的餐盘
|
||||
item = items.firstOrNull { it.plateNumber.isNullOrEmpty().not() && it.faceId.isNullOrBlank() }
|
||||
Log.d(TAG, "openPlate: item2:${item}")
|
||||
if (item == null) {
|
||||
//暂无餐盘
|
||||
ToastUtils.showToast("暂无餐盘,请联系管理人员!")
|
||||
return@getPlateData
|
||||
}
|
||||
// TODO: 待定如何在设置页面显示plateNumber,可以增加字段处理
|
||||
Log.d(TAG, "openPlate: item3:${item}")
|
||||
item.faceId = userId
|
||||
item.updateTime = DateTimeUtils.getDateTimeString()
|
||||
//打开柜子
|
||||
@@ -426,8 +428,7 @@ class LoginByFaceActivity : BaseActivity<ActivityLoginFaceBinding>(),
|
||||
return
|
||||
}
|
||||
binding.dualCameraFaceRectView.clearFaceInfo()
|
||||
val facePreviewInfoList: MutableList<FacePreviewInfo?>? =
|
||||
recognizeViewModel.onPreviewFrame(nv21, true)
|
||||
facePreviewInfoList = recognizeViewModel.onPreviewFrame(nv21, true)
|
||||
if (facePreviewInfoList != null && rgbFaceRectTransformer != null) {
|
||||
drawPreviewInfo(facePreviewInfoList)
|
||||
}
|
||||
@@ -481,12 +482,10 @@ class LoginByFaceActivity : BaseActivity<ActivityLoginFaceBinding>(),
|
||||
*
|
||||
* @param facePreviewInfoList RGB画面的实时人脸信息
|
||||
*/
|
||||
private fun drawPreviewInfo(facePreviewInfoList: MutableList<FacePreviewInfo?>) {
|
||||
private fun drawPreviewInfo(facePreviewInfoList: MutableList<FacePreviewInfo>?) {
|
||||
if (rgbFaceRectTransformer != null) {
|
||||
val rgbDrawInfoList: MutableList<DrawInfo?>? = recognizeViewModel.getDrawInfo(
|
||||
facePreviewInfoList,
|
||||
LivenessType.RGB,
|
||||
openRectInfoDraw
|
||||
val rgbDrawInfoList: MutableList<DrawInfo>? = recognizeViewModel.getDrawInfo(
|
||||
facePreviewInfoList, LivenessType.RGB, openRectInfoDraw
|
||||
)
|
||||
// 识别成功
|
||||
binding.dualCameraFaceRectView.drawRealtimeFaceInfo(rgbDrawInfoList)
|
||||
@@ -561,6 +560,10 @@ class LoginByFaceActivity : BaseActivity<ActivityLoginFaceBinding>(),
|
||||
|
||||
private fun collectFace() {
|
||||
//toast("currentUserId=$currentUserId")
|
||||
if (facePreviewInfoList.isNullOrEmpty()) {
|
||||
ToastUtils.showToast("未检测到人脸信息")
|
||||
return
|
||||
}
|
||||
if (currentUserId != null) {
|
||||
ToastUtils.showToast("您已采集过人脸信息")
|
||||
return
|
||||
@@ -607,7 +610,7 @@ class LoginByFaceActivity : BaseActivity<ActivityLoginFaceBinding>(),
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private var facePreviewInfoList: MutableList<FacePreviewInfo>?=null
|
||||
private var userFaceInfo: UserFaceInfo? = null
|
||||
private var countDownJob: Job? = null
|
||||
private var job: Job? = null
|
||||
|
||||
Reference in New Issue
Block a user