[fea]
[核销]
This commit is contained in:
yangyakun
2024-11-12 18:37:21 +08:00
parent 13aa8b4d5c
commit 4420086918
13 changed files with 295 additions and 253 deletions

View File

@@ -2,15 +2,16 @@ package com.mogo.och.weaknet.model
import com.elegant.network.utils.GsonUtil
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.env.ProjectUtils
import com.mogo.eagle.core.data.enums.EventTypeEnumNew
import com.mogo.eagle.core.data.msgbox.MsgBoxBean
import com.mogo.eagle.core.data.msgbox.MsgBoxType
import com.mogo.eagle.core.data.msgbox.V2XMsg
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager.saveMsgBox
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
import com.mogo.och.common.module.manager.autopilot.line.LineManager
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.manager.loop.BizLoopManager
@@ -20,16 +21,22 @@ import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager
import com.mogo.och.common.module.manager.socket.lan.ILanMessageListener
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDetialMsg
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDevicesMsg
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffMsg
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.bean.WriteOffPassenger
import com.mogo.och.weaknet.repository.RepositoryManager
import com.mogo.och.weaknet.repository.exception.DataException
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse
import com.mogo.och.weaknet.util.ShuttleVoiceManager
import io.reactivex.Observable
import io.reactivex.ObservableEmitter
import io.reactivex.ObservableOnSubscribe
import io.reactivex.Observer
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.disposables.Disposable
import io.reactivex.schedulers.Schedulers
object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
@@ -42,26 +49,27 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
private val observable = Observable.create(ObservableOnSubscribe<Pair<Int,Int>> { emitter -> emitterMain = emitter })
private val writeOffMsg = object : ILanMessageListener<WriteOffMsg> {
override fun targetLan(): Class<WriteOffMsg> = WriteOffMsg::class.java
override fun onLanMsgReceived(obj: WriteOffMsg?) = receiveWrteOffInfo(obj)
}
private val writeOfDevicefMsg = object : ILanMessageListener<WriteOffDevicesMsg> {
override fun targetLan(): Class<WriteOffDevicesMsg> = WriteOffDevicesMsg::class.java
override fun onLanMsgReceived(obj: WriteOffDevicesMsg?) = receiveWrteOffDevicesInfo(obj)
}
private val writeOfDevicefDetialMsg = object : ILanMessageListener<WriteOffDetialMsg> {
override fun targetLan(): Class<WriteOffDetialMsg> = WriteOffDetialMsg::class.java
override fun onLanMsgReceived(obj: WriteOffDetialMsg?) = receiveWrteOffDefailtInfo(obj)
}
fun load(){
// 3s轮训站点核销人数
if(RepositoryManager.supportWriteOff()) {
// 3s轮训站点核销人数 人数本地核销 直接计算就好
if (RepositoryManager.supportWriteOff() && RepositoryManager.supportWriteOffDb()) {
BizLoopManager.setLoopFunction(
SELECTWRITEOFFCOUNT,
LoopInfo(3, TicketModel::selectWriteOffCount, scheduler = Schedulers.io())
)
}
// 核销信息
LanSocketManager.registerSocketMessageListener(DPMsgType.TYPE_WRITEOFF_INFO.type,writeOffMsg)
LanSocketManager.registerSocketMessageListener(DPMsgType.TYPE_WRITEOFF_INFO_DETAIL.type,writeOfDevicefDetialMsg)
// 核销设备信息
LanSocketManager.registerSocketMessageListener(DPMsgType.TYPE_WRITEOFF_DEVICES_INFO.type,writeOfDevicefMsg)
//监听核销乘客
@@ -72,7 +80,7 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
if(RepositoryManager.supportWriteOff()) {
BizLoopManager.removeLoopFunction(SELECTWRITEOFFCOUNT)
}
LanSocketManager.unRegisterSocketMessageListener(DPMsgType.TYPE_WRITEOFF_INFO.type,writeOffMsg)
LanSocketManager.unRegisterSocketMessageListener(DPMsgType.TYPE_WRITEOFF_INFO_DETAIL.type,writeOfDevicefDetialMsg)
LanSocketManager.unRegisterSocketMessageListener(DPMsgType.TYPE_WRITEOFF_DEVICES_INFO.type,writeOfDevicefMsg)
OCHSocketMessageManager.releaseSocketMessageListener(OCHSocketMessageManager.msgWriteOffPassengerType)
}
@@ -92,8 +100,8 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
passenger.passengerSize,
passenger.phone ?: "",
passenger.ticketName?:"",
passenger.orderNo?:""
)
TODO("服务器端核销需要在本地报备一下 用于计算数据")
selectWriteOffCount()
}
@@ -172,12 +180,167 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
}
}
}
private fun receiveWrteOffDefailtInfo(writeOffDetialMsg: WriteOffDetialMsg?) {
writeOffDetialMsg?.let {
if(writeOffDetialMsg.code!=0){
sendMessage2Driver(
writeOffDetialMsg.msg?:"",
writeOffDetialMsg.phone ?: ""
)
}else {
RepositoryManager.writeOff(writeOffDetialMsg)
?.subscribeOn(Schedulers.io())
?.observeOn(AndroidSchedulers.mainThread())
?.subscribe(object : Observer<PassengerWriteOffResponse.Result?> {
override fun onSubscribe(d: Disposable) {
d(TAG, "receiveWrteOffDefailtInfo onSubscribe")
}
private fun receiveWrteOffDevicesInfo(writeOffMsg: WriteOffDevicesMsg?) {
writeOffMsg?.let {
if (writeOffMsg.isConnectScanner != null) {
val reason = if (writeOffMsg.reason == null) "" else writeOffMsg.reason!!
if (writeOffMsg.isConnectScanner==true) { // 链接成功
override fun onError(e: Throwable) {
d(TAG, "receiveWrteOffDefailtInfo onError${e.printStackTrace()}")
if (e is DataException) {
CallerLogger.d(M_BUS_P + TAG, "核销失败 ${e.code}-----${e.msg}")
when (e.code) {
6002 -> {
sendMessage2Driver(
"同一订单核销间隔时间需大于2分钟",
writeOffDetialMsg.phone ?: ""
)
}
1009 -> {
sendMessage2Driver(
"车票所选乘车日期非今日",
writeOffDetialMsg.phone ?: ""
)
}
1005 -> {
sendMessage2Driver(
"车辆未登录、或没有任务",
writeOffDetialMsg.phone ?: ""
)
}
1006 -> {
sendMessage2Driver(
"车票路线信息与当前车辆执行任务的路线信息不符合",
writeOffDetialMsg.phone ?: ""
)
}
1008 -> {
sendMessage2Driver(
"车票剩余可用次数为0",
writeOffDetialMsg.phone ?: ""
)
}
6001 -> {
sendMessage2Driver(
"二维码已过期",
writeOffDetialMsg.phone ?: ""
)
}
1012 -> {
sendMessage2Driver(
"当前用户下单路线非当前的车辆所属公司",
writeOffDetialMsg.phone ?: ""
)
}
else -> {
when (e.msg) {
"6002" -> {
sendMessage2Driver(
"同一订单核销间隔时间需大于2分钟",
writeOffDetialMsg.phone ?: ""
)
}
"1009" -> {
sendMessage2Driver(
"车票所选乘车日期非今日",
writeOffDetialMsg.phone ?: ""
)
}
"1005" -> {
sendMessage2Driver(
"车辆未登录、或没有任务",
writeOffDetialMsg.phone ?: ""
)
}
"1006" -> {
sendMessage2Driver(
"车票路线信息与当前车辆执行任务的路线信息不符合",
writeOffDetialMsg.phone ?: ""
)
}
"1008" -> {
sendMessage2Driver(
"车票剩余可用次数为0",
writeOffDetialMsg.phone ?: ""
)
}
"6001" -> {
sendMessage2Driver(
"二维码已过期",
writeOffDetialMsg.phone ?: ""
)
}
"1012" -> {
sendMessage2Driver(
"当前用户下单路线非当前的车辆所属公司",
writeOffDetialMsg.phone ?: ""
)
}
else -> {
sendMessage2Driver(
e.msg,
writeOffDetialMsg.phone ?: ""
)
}
}
}
}
}
}
override fun onComplete() {
d(TAG, "receiveWrteOffDefailtInfo onComplete")
}
override fun onNext(data: PassengerWriteOffResponse.Result) {
d(TAG, "queryBusLines onNext ${data}")
selectWriteOffCount()
playPassenger(
data.ticketSize ?: 0,
data.phone ?: "",
data.ticketName ?: ""
)
}
})
}
}
}
private fun sendMessage2Driver(message:String,phone:String){
val msg = WriteOffMsg(false, phone, 0, "", "验票失败,${message}","")
receiveWrteOffInfo(msg)
}
private fun receiveWrteOffDevicesInfo(writeOffDevicesMsg: WriteOffDevicesMsg?) {
writeOffDevicesMsg?.let {
if (writeOffDevicesMsg.isConnectScanner != null) {
val reason = if (writeOffDevicesMsg.reason == null) "" else writeOffDevicesMsg.reason!!
if (writeOffDevicesMsg.isConnectScanner==true) { // 链接成功
saveMsgBox(
MsgBoxBean(
MsgBoxType.V2X,
@@ -206,7 +369,7 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
}
}
private fun playPassenger(ticketSize: Int,phone:String,ticketName:String,orderNo:String) {
private fun playPassenger(ticketSize: Int,phone:String,ticketName:String) {
ShuttleVoiceManager.writeOffCount(ticketSize)

View File

@@ -7,6 +7,7 @@ import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDetialMsg
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse
@@ -18,6 +19,7 @@ import com.mogo.och.weaknet.repository.db.repository.EventDb
import com.mogo.och.weaknet.repository.line.ILineRepository
import com.mogo.och.weaknet.repository.line.impl.NormalRepository
import com.mogo.och.weaknet.repository.line.impl.WeaknetRepository
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse
import com.mogo.och.weaknet.repository.writeoff.IWriteOffRepository
import com.mogo.och.weaknet.repository.writeoff.impl.WriteOffCacheRepository
import com.mogo.och.weaknet.repository.writeoff.impl.WriteOffNormallRepository
@@ -151,6 +153,12 @@ object RepositoryManager {
}
return false
}
fun supportWriteOffDb():Boolean{
if(supportWriteOff()){
return ProjectUtils.isSaas()
}
return false
}
fun queryCarExecutableTaskList(
ochCommonServiceCallback: OchCommonServiceCallback<CarExecutableTaskResponse>
@@ -170,8 +178,8 @@ object RepositoryManager {
}
}
fun writeOff(){
writeOffRepository?.writeOffEvent()
fun writeOff(writeOffDetialMsg: WriteOffDetialMsg): Observable<PassengerWriteOffResponse.Result>? {
return writeOffRepository?.writeOffEvent(writeOffDetialMsg)
}
fun closeDb() {

View File

@@ -1,8 +1,14 @@
package com.mogo.och.weaknet.repository.exception
class DataException: RuntimeException {
var code:Int = 0
var msg:String = ""
constructor() : super()
constructor(code:Int,message: String?) : super("${code}_${message}")
constructor(code:Int, message: String) : super("${code}_${message}"){
this.code = code
this.msg = message
}
companion object{
val startTaskErrorCode = 10010
}

View File

@@ -6,10 +6,11 @@ import com.mogo.och.common.module.network.OchCommonServiceCallback;
import com.mogo.och.data.bean.BusRoutesResult;
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest;
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse;
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.och.weaknet.repository.db.bean.LineDataBean;
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean;
import com.mogo.och.weaknet.repository.net.bean.request.PassengerWriteOffRequest;
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse;
import java.util.ArrayList;
import java.util.List;
@@ -47,7 +48,14 @@ public interface NetInterface {
return Observable.just(new BusRoutesResult());
}
default void writeOffCount(Context context , Long taskId, Long siteId, OchCommonServiceCallback<WriteOffCountResponse> callback){}
default Observable<Integer> writeOffCount(Context context , Long taskId, Long siteId){
return Observable.just(0);
}
default Observable<PassengerWriteOffResponse.Result> writeOffTicket(Context context,
PassengerWriteOffRequest ticketInfo){
return Observable.just(new PassengerWriteOffResponse.Result("",0,"",0L));
}
default void queryCarExecutableTaskList(Context context , OchCommonServiceCallback<CarExecutableTaskResponse> callback){}

View File

@@ -6,6 +6,7 @@ import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.manager.cache.OchSPManager
import com.mogo.och.common.module.network.OchCommonNet
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
@@ -14,56 +15,53 @@ import com.mogo.och.data.bean.BusRoutesResult
import com.mogo.och.weaknet.bean.request.BusQueryLineStationsRequest
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.repository.net.NetInterface
import com.mogo.och.weaknet.repository.net.bean.request.PassengerWriteOffRequest
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse
import io.reactivex.Observable
/**
* @author: wangmingjun
* @date: 2021/10/20
*/
object DaliShuttleServiceManager: NetInterface {
object DaliShuttleServiceManager : NetInterface {
private val mService: IDaliShuttleApiService = MoGoRetrofitFactory.getInstance(OchCommonConst.getShuttleUrl()).create(
IDaliShuttleApiService::class.java
)
private val mService: IDaliShuttleApiService =
MoGoRetrofitFactory.getInstance(OchCommonConst.getShuttleUrl()).create(
IDaliShuttleApiService::class.java
)
/**
* 查询小巴车当前任务
* @param context
* @param callback
*/
override fun queryBusRoutes(): Observable<BusRoutesResult?>? {
//获取当前高德坐标
return mService.queryBusRoutes(
return mService.queryBusRoutes(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
BusQueryLineStationsRequest()
) .transformIoTry()
.flatMap(OchCommonNet("saas shuttle queryBusRoutes",false))
).transformIoTry()
.flatMap(OchCommonNet("saas shuttle queryBusRoutes", false))
.flatMap {
Observable.just(it.data?:BusRoutesResult())
Observable.just(it.data ?: BusRoutesResult())
}
}
/**
* 只发生在大理和saas环境 查询当前站点核销的人数
*/
override fun writeOffCount(
context: Context,
taskId: Long?,
siteId: Long?,
callback: OchCommonServiceCallback<WriteOffCountResponse>?
) {
mService.writeOffCount(
override fun writeOffCount(context: Context?, taskId: Long?, siteId: Long?): Observable<Int> {
return mService.writeOffCount(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
taskId?.toString(),
siteId?.toString()
)
.transformIoTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "writeOffCount"))
.flatMap(OchCommonNet("saas shuttle writeOffCount", false))
.flatMap {
Observable.just(it.data ?: 0)
}
}
/**
@@ -98,5 +96,22 @@ object DaliShuttleServiceManager: NetInterface {
.subscribe(OchCommonSubscribeImpl(context, callback, "reportCabinEvent"))
}
override fun writeOffTicket(
context: Context,
ticketInfo: PassengerWriteOffRequest,
): Observable<PassengerWriteOffResponse.Result?>? {
ticketInfo.sn = OchSPManager.getSn()
return mService.daliwriteOffTicket(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
ticketInfo
)
.transformIoTry()
.flatMap(OchCommonNet("dali shuttle writeOffCount",false))
.flatMap {
Observable.just(it.data)
}
}
}

View File

@@ -14,7 +14,6 @@ import com.mogo.och.common.module.network.interceptor.transformIoTry
import com.mogo.och.data.bean.BusRoutesResult
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.repository.net.bean.request.WriteOffCountReqBean
import com.mogo.och.weaknet.repository.net.NetInterface
import io.reactivex.Observable
@@ -51,24 +50,17 @@ object SaasBusServiceManager: NetInterface {
/**
* 只发生在大理和saas环境 查询当前站点核销的人数
*/
override fun writeOffCount(
context: Context,
taskId: Long,
siteId: Long,
callback: OchCommonServiceCallback<WriteOffCountResponse>?
) {
OchSPManager.getSn()?.let {
mService.writeOffCount(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
WriteOffCountReqBean(it,taskId,
siteId,
)
)
.transformIoTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "writeOffCount"))
}
override fun writeOffCount(context: Context?, taskId: Long?, siteId: Long?): Observable<Int> {
return mService.writeOffCount(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
WriteOffCountReqBean(OchSPManager.getSn()?:"",taskId?:0, siteId?:0,)
)
.transformIoTry()
.flatMap(OchCommonNet("saas shuttle writeOffCount",false))
.flatMap {
Observable.just(it.data?:0)
}
}
/**

View File

@@ -15,8 +15,6 @@ import com.mogo.och.data.bean.BusRoutesResult
import com.mogo.och.weaknet.bean.request.BusQueryLineStationsRequest
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.repository.net.bean.request.WriteOffCountReqBean
import com.mogo.och.weaknet.repository.net.NetInterface
import io.reactivex.Observable
@@ -33,8 +31,6 @@ object SaasShuttleServiceManager: NetInterface {
/**
* 查询小巴车当前任务
* @param context
* @param callback
*/
override fun queryBusRoutes(): Observable<BusRoutesResult?>? {
//获取当前高德坐标
@@ -49,29 +45,6 @@ object SaasShuttleServiceManager: NetInterface {
}
}
/**
* 只发生在大理和saas环境 查询当前站点核销的人数
*/
override fun writeOffCount(
context: Context,
taskId: Long,
siteId: Long,
callback: OchCommonServiceCallback<WriteOffCountResponse>?
) {
OchSPManager.getSn()?.let {
mService.writeOffCount(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
WriteOffCountReqBean(
it, taskId,
siteId,
)
)
.transformIoTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "writeOffCount"))
}
}
/**
* 同步 线路、站点、任务、自驾轨迹信息
*/

View File

@@ -1,14 +1,17 @@
package com.mogo.och.weaknet.repository.writeoff
import android.content.Context
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDetialMsg
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse
import io.reactivex.Observable
interface IWriteOffRepository {
fun queryWriteoffCount(context: Context, taskId: Long, siteId: Long, callback: OchCommonServiceCallback<WriteOffCountResponse>?)
fun queryWriteoffCount(context: Context, taskId: Long, siteId: Long, callback: OchCommonServiceCallback<WriteOffCountResponse>?): Observable<Int>?
fun writeOffEvent()
fun writeOffEvent(writeOffDetialMsg: WriteOffDetialMsg): Observable<PassengerWriteOffResponse.Result>?
fun release()

View File

@@ -7,14 +7,16 @@ import com.mogo.commons.env.ProjectUtils
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDetialMsg
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.repository.net.exception.NetException
import com.mogo.och.weaknet.repository.net.NetInterface
import com.mogo.och.weaknet.repository.net.project.dali.shuttle.DaliShuttleServiceManager
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse
import com.mogo.och.weaknet.repository.net.project.saas.bus.SaasBusServiceManager
import com.mogo.och.weaknet.repository.net.project.saas.shuttle.SaasShuttleServiceManager
import com.mogo.och.weaknet.repository.writeoff.IWriteOffRepository
import io.reactivex.Observable
class WriteOffCacheRepository : IWriteOffRepository {
private val TAG = "ShuttleSaasRepository"
@@ -51,12 +53,12 @@ class WriteOffCacheRepository : IWriteOffRepository {
taskId: Long,
siteId: Long,
callback: OchCommonServiceCallback<WriteOffCountResponse>?
) {
weakNetInterface?.writeOffCount(context,taskId,siteId,callback)
): Observable<Int>? {
TODO("本地计算核销数量 数据来源有两个地方 1、本地数据库计算 + 2、服务器核销")
}
override fun writeOffEvent() {
override fun writeOffEvent(writeOffDetialMsg: WriteOffDetialMsg): Observable<PassengerWriteOffResponse.Result>? {
TODO("Not yet implemented")
}
override fun release() {

View File

@@ -1,20 +1,23 @@
package com.mogo.och.weaknet.repository.writeoff.impl
import android.content.Context
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.env.Project
import com.mogo.commons.env.ProjectUtils
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDetialMsg
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
import com.mogo.och.weaknet.repository.net.NetInterface
import com.mogo.och.weaknet.repository.net.bean.request.PassengerWriteOffRequest
import com.mogo.och.weaknet.repository.net.bean.response.PassengerWriteOffResponse
import com.mogo.och.weaknet.repository.net.exception.NetException
import com.mogo.och.weaknet.repository.net.project.dali.bus.DaliBusServiceManager
import com.mogo.och.weaknet.repository.net.project.dali.shuttle.DaliShuttleServiceManager
import com.mogo.och.weaknet.repository.net.project.mogo.bus.MogoBusServiceManager
import com.mogo.och.weaknet.repository.net.project.mogo.shuttle.MogoShuttleServiceManager
import com.mogo.och.weaknet.repository.writeoff.IWriteOffRepository
import io.reactivex.Observable
class WriteOffNormallRepository: IWriteOffRepository {
@@ -55,12 +58,17 @@ class WriteOffNormallRepository: IWriteOffRepository {
taskId: Long,
siteId: Long,
callback: OchCommonServiceCallback<WriteOffCountResponse>?
) {
normalNetInterface?.writeOffCount(context,taskId,siteId,callback)
): Observable<Int>? {
return normalNetInterface?.writeOffCount(context,taskId,siteId)
}
override fun writeOffEvent() {
override fun writeOffEvent(writeOffDetialMsg: WriteOffDetialMsg): Observable<PassengerWriteOffResponse.Result>? {
val passengerWriteOffRequest = PassengerWriteOffRequest(writeOffDetialMsg.orderNo, writeOffDetialMsg.uid)
return normalNetInterface?.writeOffTicket(
AbsMogoApplication.getApp(),
passengerWriteOffRequest,
)
}
override fun release() {