feat(servicing): 添加客户语音通知功能

- 新增 CustomerSpeechManager 对象,用于处理文本转语音功能
- 添加 AppForegroundListener 接口和 BaseActivityLifecycleCallbacks 类,用于监听应用前后台切换- 更新 BaseActivity,使其支持推送消息
- 新增 ServicePeopleConfirmActivity 活动
- 优化订单处理逻辑,过滤掉已接受的订单
- 更新版本号至 1.0.1.9.9.12
This commit is contained in:
songzhiling
2025-04-27 17:49:05 +08:00
parent b0c2f7352d
commit 863329d107
32 changed files with 1505 additions and 223 deletions

View File

@ -106,8 +106,8 @@ abstract class BaseObserver<T> : Observer<BaseResponse<T>> {
ThreadUtils.runOnUiThread {
try {
ToastUtils.showShort("登陆信息已过期,请重新登录")
GlobalData.clearUserCache()
ZdLocationManager.stopContinuousLocation()
GlobalData.clearUserCache()
ActivityUtils.startLauncherActivity()
} catch (e : Exception) {
LogUtil.print("handlerTokenExpired", e)

View File

@ -138,7 +138,7 @@ object CommonMethod {
success(it)
return
}
GlobalData.driverInfoBean=it
GlobalData.driverInfoBean = it
lastFetchGenerateInfoTime = System.currentTimeMillis()
LogUtil.print("GlobalData.driverInfoBean",
"${GlobalData.driverInfoBean?.toJson()}}")
@ -160,31 +160,34 @@ object CommonMethod {
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.subscribe(object : BaseObserver<JpushBean>() {
override fun doSuccess(order : JpushBean?) {
if (order == null) {
return
}
NewOrderActivity.goNewOrderActivity(context,
jpushBean = JpushBean(taskId = order?.taskId,
taskCode = order?.taskCode,
customerName = order?.customerName,
customerPhone = order?.customerPhone,
carBrand = order?.carBrand,
carModel = order?.carModel,
carNo = order?.carNo,
taskState = order?.taskState,
address = order?.address,
addressProperty = order?.addressProperty,
hotline = order?.hotline,
expectArriveTime = order?.expectArriveTime,
serviceTypeName = order?.serviceTypeName,
dispatchTime = order?.dispatchTime,
lat = order?.lat,
lng = order?.lng,
distLat = order?.distLat,
distLng = order?.distLng,
importantTip = order?.importantTip,
hasReplaceBatteryCapable = order?.hasReplaceBatteryCapable,
distAddress = order?.distAddress,
distAddressRemark = order?.distAddressRemark,
addressRemark = order?.addressRemark,
voiceType = order?.voiceType))
jpushBean = JpushBean(taskId = order.taskId,
taskCode = order.taskCode,
customerName = order.customerName,
customerPhone = order.customerPhone,
carBrand = order.carBrand,
carModel = order.carModel,
carNo = order.carNo,
taskState = order.taskState,
address = order.address,
addressProperty = order.addressProperty,
hotline = order.hotline,
expectArriveTime = order.expectArriveTime,
serviceTypeName = order.serviceTypeName,
dispatchTime = order.dispatchTime,
lat = order.lat,
lng = order.lng,
distLat = order.distLat,
distLng = order.distLng,
importantTip = order.importantTip,
hasReplaceBatteryCapable = order.hasReplaceBatteryCapable,
distAddress = order.distAddress,
distAddressRemark = order.distAddressRemark,
addressRemark = order.addressRemark,
voiceType = order.voiceType))
}
override fun doFailure(code : Int, msg : String?) {
@ -211,7 +214,8 @@ object CommonMethod {
}
val inServicingOrder = it.find { it.isCurrent == true }
val waitServiceOrders = it.filter { it.isCurrent == false }
val waitServiceOrders =
it.filter { it.isCurrent == false && it.taskState != "ACCEPT" }
if (inServicingOrder == null) {
success(null, waitServiceOrders)