feat(spraying): 添加喷洒作业补充拍照和提交功能
- 在离线命令服务中增加补充照片、确认提交、提交、确认等语音指令 - 集成SprayingPhotoManager管理器用于照片操作 - 在拍照前和提交后调用SprayingPhotoManager.clear()清理照片 - 在OCR识别和结果页面添加照片到管理器 - 新增SprayingFinishActivity用于处理完成操作 - 实现finishLauncher处理补充拍照和提交动作 - 更新AndroidManifest.xml注册新活动
这个提交包含在:
父节点
eedb57afe3
当前提交
19997b4d54
@ -90,6 +90,9 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".ui.SprayingManualResultActivity"
|
android:name=".ui.SprayingManualResultActivity"
|
||||||
android:exported="false" />
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".ui.SprayingFinishActivity"
|
||||||
|
android:exported="false" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.WelcomeActivity"
|
android:name=".ui.WelcomeActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
|
|||||||
@ -163,6 +163,10 @@ object OfflineCmdServiceHelper {
|
|||||||
add(OfflineCmdBean("结束", "jie shu"))
|
add(OfflineCmdBean("结束", "jie shu"))
|
||||||
add(OfflineCmdBean("完成", "wan cheng"))
|
add(OfflineCmdBean("完成", "wan cheng"))
|
||||||
add(OfflineCmdBean("完成任务", "wan cheng ren wu"))
|
add(OfflineCmdBean("完成任务", "wan cheng ren wu"))
|
||||||
|
add(OfflineCmdBean("补充照片", "bu chong zhao pian"))
|
||||||
|
add(OfflineCmdBean("确认提交", "que ren ti jiao"))
|
||||||
|
add(OfflineCmdBean("提交", "ti jiao"))
|
||||||
|
add(OfflineCmdBean("确认", "que ren"))
|
||||||
//
|
//
|
||||||
}
|
}
|
||||||
fun init(){
|
fun init(){
|
||||||
|
|||||||
@ -7,6 +7,7 @@ import com.nova.brain.glass.R
|
|||||||
import com.nova.brain.glass.databinding.ActivitySprayingBinding
|
import com.nova.brain.glass.databinding.ActivitySprayingBinding
|
||||||
import com.nova.brain.glass.helper.OfflineCmdListener
|
import com.nova.brain.glass.helper.OfflineCmdListener
|
||||||
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
||||||
|
import com.nova.brain.glass.helper.SprayingPhotoManager
|
||||||
import com.nova.brain.glass.model.ItemItem
|
import com.nova.brain.glass.model.ItemItem
|
||||||
import com.nova.brain.glass.viewmodel.SprayingVM
|
import com.nova.brain.glass.viewmodel.SprayingVM
|
||||||
import com.rokid.security.glass3.open.sdk.GlassSdk
|
import com.rokid.security.glass3.open.sdk.GlassSdk
|
||||||
@ -40,6 +41,7 @@ class SprayingActivity :
|
|||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
binding.hint.text = "拍照中,请稍后..."
|
binding.hint.text = "拍照中,请稍后..."
|
||||||
}
|
}
|
||||||
|
SprayingPhotoManager.clear()
|
||||||
isPhoto = true
|
isPhoto = true
|
||||||
takePhoto()
|
takePhoto()
|
||||||
}
|
}
|
||||||
@ -82,6 +84,7 @@ class SprayingActivity :
|
|||||||
"相机异常".showMessage()
|
"相机异常".showMessage()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
SprayingPhotoManager.addPhoto(path)
|
||||||
startActivity(Intent(this@SprayingActivity, SprayingOCRActivity::class.java).apply {
|
startActivity(Intent(this@SprayingActivity, SprayingOCRActivity::class.java).apply {
|
||||||
putExtra("path", path)
|
putExtra("path", path)
|
||||||
})
|
})
|
||||||
@ -122,6 +125,7 @@ class SprayingActivity :
|
|||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
binding.hint.text = "拍照中,请稍后..."
|
binding.hint.text = "拍照中,请稍后..."
|
||||||
}
|
}
|
||||||
|
SprayingPhotoManager.clear()
|
||||||
isPhoto = true
|
isPhoto = true
|
||||||
takePhoto()
|
takePhoto()
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import com.nova.brain.glass.R
|
|||||||
import com.nova.brain.glass.databinding.ActivitySprayingOcrBinding
|
import com.nova.brain.glass.databinding.ActivitySprayingOcrBinding
|
||||||
import com.nova.brain.glass.helper.OfflineCmdListener
|
import com.nova.brain.glass.helper.OfflineCmdListener
|
||||||
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
||||||
|
import com.nova.brain.glass.helper.SprayingPhotoManager
|
||||||
import com.nova.brain.glass.model.ItemItem
|
import com.nova.brain.glass.model.ItemItem
|
||||||
import com.nova.brain.glass.viewmodel.SprayingOCRVM
|
import com.nova.brain.glass.viewmodel.SprayingOCRVM
|
||||||
import com.nova.brain.glass.viewmodel.SprayingVM
|
import com.nova.brain.glass.viewmodel.SprayingVM
|
||||||
@ -85,6 +86,7 @@ class SprayingOCRActivity :
|
|||||||
"相机异常".showMessage()
|
"相机异常".showMessage()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
SprayingPhotoManager.addPhoto(path)
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
binding.hint.text = "单击或语音输入“重拍”,可重新拍摄"
|
binding.hint.text = "单击或语音输入“重拍”,可重新拍摄"
|
||||||
showPhoto(path)
|
showPhoto(path)
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import com.nova.brain.glass.R
|
|||||||
import com.nova.brain.glass.databinding.ActivitySprayingResultBinding
|
import com.nova.brain.glass.databinding.ActivitySprayingResultBinding
|
||||||
import com.nova.brain.glass.helper.OfflineCmdListener
|
import com.nova.brain.glass.helper.OfflineCmdListener
|
||||||
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
import com.nova.brain.glass.helper.OfflineCmdServiceHelper
|
||||||
|
import com.nova.brain.glass.helper.SprayingPhotoManager
|
||||||
import com.nova.brain.glass.model.ItemItem
|
import com.nova.brain.glass.model.ItemItem
|
||||||
import com.nova.brain.glass.viewmodel.SprayingResultVM
|
import com.nova.brain.glass.viewmodel.SprayingResultVM
|
||||||
import com.rokid.security.glass3.open.sdk.GlassSdk
|
import com.rokid.security.glass3.open.sdk.GlassSdk
|
||||||
@ -50,6 +51,26 @@ class SprayingResultActivity :
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
private val finishLauncher =
|
||||||
|
registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
|
||||||
|
if (result.resultCode != Activity.RESULT_OK) {
|
||||||
|
return@registerForActivityResult
|
||||||
|
}
|
||||||
|
when (result.data?.getStringExtra(SprayingFinishActivity.EXTRA_FINISH_ACTION)) {
|
||||||
|
SprayingFinishActivity.ACTION_SUPPLEMENT -> {
|
||||||
|
runOnUiThread {
|
||||||
|
binding.hint.text = "拍照中,请稍后..."
|
||||||
|
}
|
||||||
|
isPhoto = true
|
||||||
|
takePhoto()
|
||||||
|
}
|
||||||
|
|
||||||
|
SprayingFinishActivity.ACTION_SUBMIT -> {
|
||||||
|
SprayingPhotoManager.clear()
|
||||||
|
finish()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private val listener = object : OfflineCmdListener {
|
private val listener = object : OfflineCmdListener {
|
||||||
override fun onOfflineCmd(cmd: String) {
|
override fun onOfflineCmd(cmd: String) {
|
||||||
@ -91,7 +112,9 @@ class SprayingResultActivity :
|
|||||||
fun rest() {
|
fun rest() {
|
||||||
manualResultLauncher.launch(Intent(this, SprayingManualResultActivity::class.java))
|
manualResultLauncher.launch(Intent(this, SprayingManualResultActivity::class.java))
|
||||||
}
|
}
|
||||||
fun taskFinish(){}
|
fun taskFinish() {
|
||||||
|
finishLauncher.launch(Intent(this, SprayingFinishActivity::class.java))
|
||||||
|
}
|
||||||
|
|
||||||
private val photoCallbackId = UUID.randomUUID().toString()
|
private val photoCallbackId = UUID.randomUUID().toString()
|
||||||
|
|
||||||
@ -117,6 +140,7 @@ class SprayingResultActivity :
|
|||||||
"相机异常".showMessage()
|
"相机异常".showMessage()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
SprayingPhotoManager.addPhoto(path)
|
||||||
startActivity(
|
startActivity(
|
||||||
Intent(
|
Intent(
|
||||||
this@SprayingResultActivity, SprayingOCRActivity::class.java
|
this@SprayingResultActivity, SprayingOCRActivity::class.java
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户