[6.7.0]
[fea] [bean 改为dbbean]
This commit is contained in:
@@ -14,7 +14,7 @@ import com.mogo.och.weaknet.repository.db.repository.LineRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskSiteRepository
|
||||
import com.mogo.och.weaknet.ui.fragment.ShuttleFragment
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.util.BusAnalyticsManager
|
||||
|
||||
/**
|
||||
@@ -43,14 +43,14 @@ class ShuttleDriverProvider : CommonServiceImpl() {
|
||||
busFragment = ShuttleFragment()
|
||||
}
|
||||
OchAutopilotAnalytics.ochEventKey = BusAnalyticsManager
|
||||
BusLineModel.init();
|
||||
LineModel.init();
|
||||
return busFragment!!
|
||||
}
|
||||
|
||||
override fun resetFragment() {
|
||||
busFragment = null
|
||||
OchAutopilotAnalytics.ochEventKey = null
|
||||
BusLineModel.release()
|
||||
LineModel.release()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
package com.mogo.och.weaknet.bean;
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author: wangmingjun
|
||||
* @date: 2022/2/9
|
||||
*/
|
||||
public class BusQueryLineTaskResponse extends BaseData {
|
||||
|
||||
public List<Result> data;
|
||||
|
||||
public static class Result {
|
||||
public long id;
|
||||
public long taskStartTime;
|
||||
}
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
package com.mogo.och.weaknet.bean;
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author: wangmingjun
|
||||
* @date: 2022/2/9
|
||||
*/
|
||||
public class BusQueryLinesResponse extends BaseData {
|
||||
public List<Result> data;
|
||||
|
||||
public static class Result {
|
||||
|
||||
public long lineId;//线路id
|
||||
public String name;//线路名字
|
||||
public int choose; // 1:绑定 2:未被绑定
|
||||
public String startSiteName;//始发站名称
|
||||
public String endSiteName;//终点名称
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
|
||||
Result result = (Result) o;
|
||||
return lineId == result.lineId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Long.hashCode(lineId);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -1,160 +0,0 @@
|
||||
package com.mogo.och.weaknet.bean
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData
|
||||
import com.mogo.och.weaknet.repository.db.bean.ContrailDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.SiteDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import com.mogo.och.weaknet.repository.db.repository.ContraiRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.LineRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.SiteRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskRepository
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
data class CarExecutableTaskResponse(val data: List<Result>?) : BaseData(){
|
||||
|
||||
data class Result(
|
||||
var line: LineInfo?,
|
||||
var siteList: List<SiteInfo>?,//站点名称
|
||||
val contrail: ContrailInfo?,//站点名称
|
||||
val taskList: List<TaskInfo>?,//站点名称
|
||||
)
|
||||
|
||||
data class LineInfo(
|
||||
val lineId:Long?,
|
||||
var lineName:String?,
|
||||
) {
|
||||
/**
|
||||
* 把线路net bean 转为db bean
|
||||
*/
|
||||
fun toDbBean(endStationName:String?): LineDataBean {
|
||||
val result = LineDataBean()
|
||||
result.lineId = lineId
|
||||
result.lineName = lineName
|
||||
result.endStationName = endStationName
|
||||
return result
|
||||
}
|
||||
}
|
||||
|
||||
data class SiteInfo(
|
||||
val siteId:Long?,
|
||||
var name:String?,
|
||||
var seq:Int?,
|
||||
var gcjLon:Double?,
|
||||
var gcjLat:Double?,
|
||||
var lon:Double?,
|
||||
var lat:Double?,
|
||||
){
|
||||
companion object{
|
||||
/**
|
||||
* 把net站点信息转为数据库bean信息并保存
|
||||
*/
|
||||
fun toDbBeans(siteListInfo: List<SiteInfo>,lineId: Long?): List<SiteDataBean> {
|
||||
val reuslts = mutableListOf<SiteDataBean>()
|
||||
var tempSiteDataBean:SiteDataBean?=null
|
||||
siteListInfo.forEach {
|
||||
tempSiteDataBean = SiteDataBean()
|
||||
tempSiteDataBean?.lineId = lineId
|
||||
tempSiteDataBean?.siteId = it.siteId
|
||||
tempSiteDataBean?.name = it.name
|
||||
tempSiteDataBean?.seq = it.seq
|
||||
tempSiteDataBean?.gcjLon = it.gcjLon
|
||||
tempSiteDataBean?.gcjLat = it.gcjLat
|
||||
tempSiteDataBean?.lon = it.lon
|
||||
tempSiteDataBean?.lat = it.lat
|
||||
reuslts.add(tempSiteDataBean!!)
|
||||
}
|
||||
return reuslts
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
data class ContrailInfo(
|
||||
val csvFileUrl:String?,
|
||||
val csvFileMd5:String?,
|
||||
val txtFileUrl:String?,
|
||||
val txtFileMd5:String?,
|
||||
val contrailSaveTime:Long?,
|
||||
) {
|
||||
/**
|
||||
* 把net bean转为数据库bean
|
||||
*/
|
||||
fun toDbBean(lineId: Long?): ContrailDataBean {
|
||||
val result = ContrailDataBean()
|
||||
result.lineId = lineId
|
||||
result.csvFileUrl = csvFileUrl
|
||||
result.csvFileMd5 = csvFileMd5
|
||||
result.txtFileUrl = txtFileUrl
|
||||
result.txtFileMd5 = txtFileMd5
|
||||
result.contrailSaveTime = contrailSaveTime
|
||||
return result
|
||||
}
|
||||
}
|
||||
|
||||
data class TaskInfo(
|
||||
val id:Long?,
|
||||
val lineId:Long?,
|
||||
val taskDate:Long?,
|
||||
val taskStartTime:Long?,
|
||||
) {
|
||||
companion object {
|
||||
|
||||
/**
|
||||
* 把网络传来的任务信息转成数据库结构
|
||||
*/
|
||||
fun toDbBeans(taskInfs: List<TaskInfo>, lineId: Long?
|
||||
): List<TaskDataBean> {
|
||||
val reuslts = mutableListOf<TaskDataBean>()
|
||||
var tempTaskDataBean:TaskDataBean?=null
|
||||
taskInfs.forEach {
|
||||
tempTaskDataBean = TaskDataBean()
|
||||
tempTaskDataBean?.lineId = lineId
|
||||
tempTaskDataBean?.taskId = it.id
|
||||
tempTaskDataBean?.taskDate = it.taskDate
|
||||
tempTaskDataBean?.taskStartTime = it.taskStartTime
|
||||
reuslts.add(tempTaskDataBean!!)
|
||||
}
|
||||
return reuslts
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
companion object{
|
||||
/**
|
||||
* 保存 线路信息、自驾轨迹信息、站点信息和任务到数据库
|
||||
*/
|
||||
fun save2Db(data: CarExecutableTaskResponse) {
|
||||
val lineList = mutableListOf<LineDataBean>()
|
||||
val contrailList = mutableListOf<ContrailDataBean>()
|
||||
val siteList = mutableListOf<SiteDataBean>()
|
||||
|
||||
data.data?.forEach { dataInfo->
|
||||
var lineId:Long?=null
|
||||
dataInfo.line?.let { lineInfo->
|
||||
lineId = lineInfo.lineId
|
||||
val lastStation = dataInfo.siteList?.last()
|
||||
lineList.add(lineInfo.toDbBean(lastStation?.name))
|
||||
}
|
||||
dataInfo.contrail?.let { contrailInfo->
|
||||
contrailList.add(contrailInfo.toDbBean(lineId))
|
||||
}
|
||||
dataInfo.siteList?.let {siteListInfo->
|
||||
siteList.addAll(SiteInfo.toDbBeans(siteListInfo,lineId))
|
||||
}
|
||||
dataInfo.taskList?.let { taskInfs ->
|
||||
val taskList = TaskInfo.toDbBeans(taskInfs, lineId)
|
||||
TaskRepository.addOrUpdate(taskList,lineId)
|
||||
}
|
||||
}
|
||||
|
||||
LineRepository.checkAndUpdate(lineList)
|
||||
ContraiRepository.addOrUpdate(contrailList)
|
||||
SiteRepository.addOrUpdate(siteList)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.weaknet.bean;
|
||||
package com.mogo.och.weaknet.bean.request;
|
||||
|
||||
import com.mogo.commons.storage.SharedPrefsMgr;
|
||||
|
||||
@@ -1,14 +1,11 @@
|
||||
package com.mogo.och.weaknet.bean
|
||||
package com.mogo.och.weaknet.bean.request
|
||||
|
||||
import com.mogo.commons.storage.SharedPrefsMgr
|
||||
import com.mogo.eagle.core.network.utils.digest.DigestUtils
|
||||
import com.mogo.och.weaknet.repository.db.bean.EventDataBean
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2021/3/22
|
||||
*
|
||||
* 根据车机行驶线路站点信息
|
||||
* 上报事件
|
||||
*/
|
||||
data class ShuttleEventRequest(val requestId: String, val sn: String, val businessType: Int,val eventList:MutableList<Event>){
|
||||
companion object{
|
||||
@@ -16,19 +13,20 @@ data class ShuttleEventRequest(val requestId: String, val sn: String, val busine
|
||||
fun transformDb2Net(waitUpdateEvent: List<EventDataBean>): ShuttleEventRequest {
|
||||
val md5Hex = DigestUtils.md5Hex(waitUpdateEvent.toString())
|
||||
val eventList4Request = mutableListOf<Event>()
|
||||
var tempEvent:Event?=null
|
||||
var tempEvent: Event?=null
|
||||
waitUpdateEvent.forEach {
|
||||
tempEvent = Event(it.eventType,
|
||||
EventData(it.taskId,it.businessTime,it.writeVersion,it.siteId,it.seq,it.driverId)
|
||||
)
|
||||
eventList4Request.add(tempEvent!!)
|
||||
}
|
||||
return ShuttleEventRequest(md5Hex, SharedPrefsMgr.getInstance().sn,businessTypeShuttle,eventList4Request)
|
||||
return ShuttleEventRequest(md5Hex, SharedPrefsMgr.getInstance().sn,
|
||||
businessTypeShuttle,eventList4Request)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
data class Event(var eventType: String?,val eventData:EventData)
|
||||
data class Event(var eventType: String?,val eventData: EventData)
|
||||
|
||||
data class EventData(
|
||||
var taskId: Long?,
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.mogo.och.weaknet.bean
|
||||
package com.mogo.och.weaknet.bean.response
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData
|
||||
import com.mogo.och.common.module.manager.autopilot.line.LineManager
|
||||
import com.mogo.och.data.bean.BusRoutesResult
|
||||
import com.mogo.och.data.bean.BusStationBean
|
||||
import com.mogo.och.data.bean.LineInfo
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskSiteDataBean
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskSiteRepository
|
||||
import java.lang.Boolean
|
||||
@@ -59,7 +59,7 @@ class BusRoutesResponse : BaseData() {
|
||||
if (lineInfo == null && taskAndsite.lineId != null && taskAndsite.lineName != null) {
|
||||
lineInfo = LineInfo(taskAndsite.lineId!!, taskAndsite.lineName!!)
|
||||
}
|
||||
lineInfo?.multiMap?.put("taskInfo",BusLineModel.getTaskTime())
|
||||
lineInfo?.multiMap?.put("taskInfo",LineModel.getTaskTime())
|
||||
}
|
||||
LineManager.setLineInfo(lineInfo)
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
package com.mogo.och.weaknet.bean.response
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData
|
||||
import com.mogo.och.weaknet.repository.db.bean.ContrailDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.SiteDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import com.mogo.och.weaknet.repository.db.repository.ContraiRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.LineRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.SiteRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskRepository
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
data class CarExecutableTaskResponse(val data: List<Result>?) : BaseData(){
|
||||
|
||||
data class Result(
|
||||
var line: LineDataBean?,
|
||||
var siteList: List<SiteDataBean>?,//站点名称
|
||||
val contrail: ContrailDataBean?,//站点名称
|
||||
val taskList: List<TaskDataBean>?,//站点名称
|
||||
)
|
||||
|
||||
|
||||
companion object{
|
||||
/**
|
||||
* 保存 线路信息、自驾轨迹信息、站点信息和任务到数据库
|
||||
*/
|
||||
fun save2Db(data: CarExecutableTaskResponse) {
|
||||
val lineList = mutableListOf<LineDataBean>()
|
||||
val contrailList = mutableListOf<ContrailDataBean>()
|
||||
val siteList = mutableListOf<SiteDataBean>()
|
||||
|
||||
data.data?.forEach { dataInfo->
|
||||
var lineId:Long?=null
|
||||
dataInfo.line?.let { lineInfo->
|
||||
lineId = lineInfo.lineId
|
||||
lineInfo.endStationName = dataInfo.siteList?.last()?.name?:""
|
||||
lineList.add(lineInfo)
|
||||
}
|
||||
dataInfo.contrail?.let { contrailInfo->
|
||||
contrailInfo.lineId = lineId
|
||||
contrailList.add(contrailInfo)
|
||||
}
|
||||
dataInfo.siteList?.let {siteListInfo->
|
||||
siteListInfo.forEach {
|
||||
it.lineId = lineId
|
||||
}
|
||||
siteList.addAll(siteListInfo)
|
||||
}
|
||||
dataInfo.taskList?.let { taskInfs ->
|
||||
taskInfs.forEach {
|
||||
it.lineId = lineId
|
||||
}
|
||||
TaskRepository.addOrUpdate(taskInfs,lineId)
|
||||
}
|
||||
}
|
||||
|
||||
LineRepository.checkAndUpdate(lineList)
|
||||
ContraiRepository.addOrUpdate(contrailList)
|
||||
SiteRepository.addOrUpdate(siteList)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.weaknet.bean;
|
||||
package com.mogo.och.weaknet.bean.response;
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.mogo.och.weaknet.callback;
|
||||
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse;
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse;
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean;
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -10,9 +10,9 @@ import java.util.List;
|
||||
* @date: 2022/2/9
|
||||
*/
|
||||
public interface IBusLinesCallback {
|
||||
default void onBusLinesChange(List<BusQueryLinesResponse.Result> data){}
|
||||
default void onBusLinesChange(List<LineDataBean> data){}
|
||||
default void onChangeLineIdSuccess(){}
|
||||
default void onBusLineTasks(List<BusQueryLineTaskResponse.Result> o){}
|
||||
default void onBusLineTasks(List<TaskDataBean> o){}
|
||||
|
||||
default void onRefreshSuccess(long currentTimeStamp){}
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.common.module.network.OchCommonServiceCallback
|
||||
import com.mogo.och.weaknet.bean.ShuttleEventRequest
|
||||
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest
|
||||
import com.mogo.och.weaknet.bean.WaitUploadLine
|
||||
import com.mogo.och.weaknet.bean.WaitUploadTask
|
||||
import com.mogo.och.weaknet.repository.net.OrderServiceManager
|
||||
import com.mogo.och.weaknet.repository.net.shuttlesaas.OrderServiceManager
|
||||
import com.mogo.och.weaknet.repository.db.bean.EventDataBean
|
||||
import com.mogo.och.weaknet.repository.db.repository.EventRepository
|
||||
import io.reactivex.Observable
|
||||
|
||||
@@ -19,23 +19,20 @@ import com.mogo.och.common.module.utils.DateTimeUtil
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.data.bean.BusStationBean
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.bean.BusRoutesResponse
|
||||
import com.mogo.och.weaknet.bean.CarExecutableTaskResponse
|
||||
import com.mogo.och.weaknet.bean.response.BusRoutesResponse
|
||||
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse
|
||||
import com.mogo.och.weaknet.callback.IBusLinesCallback
|
||||
import com.mogo.och.weaknet.constant.BusConst
|
||||
import com.mogo.och.weaknet.repository.net.OrderServiceManager
|
||||
import com.mogo.och.weaknet.repository.net.shuttlesaas.OrderServiceManager
|
||||
import com.mogo.och.weaknet.repository.db.bean.ContrailDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskSiteDataBean
|
||||
import com.mogo.och.weaknet.repository.db.repository.ContraiRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.EventRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.LineRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskRepository
|
||||
import com.mogo.och.weaknet.repository.db.repository.TaskSiteRepository
|
||||
import com.mogo.och.weaknet.repository.db.transform.FRetryWithTime11
|
||||
import com.mogo.och.weaknet.repository.db.transform.TransformTask
|
||||
import com.mogo.och.weaknet.repository.db.transform.transform4DataBase
|
||||
import io.reactivex.Observer
|
||||
import io.reactivex.disposables.Disposable
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
@@ -46,7 +43,7 @@ import java.util.concurrent.atomic.AtomicBoolean
|
||||
* @date: 2022/2/9
|
||||
*/
|
||||
@SuppressLint("StaticFieldLeak")
|
||||
object BusLineModel {
|
||||
object LineModel {
|
||||
private var mContext: Context? = null
|
||||
|
||||
private val mBusLinesCallbackMap: MutableMap<String, IBusLinesCallback> = ConcurrentHashMap()
|
||||
@@ -178,8 +175,7 @@ object BusLineModel {
|
||||
@JvmStatic
|
||||
fun queryBusLines() {
|
||||
LineRepository.queryCanUseLine()
|
||||
?.transform4DataBase(FRetryWithTime11())
|
||||
?.subscribe(object : Observer<List<BusQueryLinesResponse.Result>> {
|
||||
?.subscribe(object : Observer<List<LineDataBean>?> {
|
||||
override fun onSubscribe(d: Disposable) {
|
||||
d(TAG, "onSubscribe")
|
||||
}
|
||||
@@ -192,7 +188,7 @@ object BusLineModel {
|
||||
d(TAG, "onComplete")
|
||||
}
|
||||
|
||||
override fun onNext(data: List<BusQueryLinesResponse.Result>) {
|
||||
override fun onNext(data: List<LineDataBean>) {
|
||||
mBusLinesCallbackMap.forEach {
|
||||
it.value.onBusLinesChange(data)
|
||||
}
|
||||
@@ -208,8 +204,7 @@ object BusLineModel {
|
||||
@JvmStatic
|
||||
fun queryBusLineTasksById(lineId: Long) {
|
||||
TaskRepository.queryCanUserTask(lineId)
|
||||
?.transform4DataBase(TransformTask())
|
||||
?.subscribe(object : Observer<List<BusQueryLineTaskResponse.Result>> {
|
||||
?.subscribe(object : Observer<List<TaskDataBean?>?> {
|
||||
override fun onSubscribe(d: Disposable) {
|
||||
d(TAG, "onSubscribe")
|
||||
}
|
||||
@@ -222,7 +217,7 @@ object BusLineModel {
|
||||
d(TAG, "onComplete")
|
||||
}
|
||||
|
||||
override fun onNext(data: List<BusQueryLineTaskResponse.Result>) {
|
||||
override fun onNext(data: List<TaskDataBean?>) {
|
||||
mBusLinesCallbackMap.forEach {
|
||||
it.value.onBusLineTasks(data)
|
||||
}
|
||||
@@ -235,28 +230,33 @@ object BusLineModel {
|
||||
* 开始任务
|
||||
*/
|
||||
@JvmStatic
|
||||
fun commitSwitchLineId(task: BusQueryLineTaskResponse.Result, line: BusQueryLinesResponse.Result) {
|
||||
TaskRepository.startTask(
|
||||
task.id,
|
||||
line.lineId,
|
||||
line.name,
|
||||
object : TaskRepository.TaskStatusCallback {
|
||||
override fun startSuccess() {
|
||||
com.mogo.och.weaknet.repository.db.repository.EventRepository.saveEventTaskStart(task.id,line.lineId,task.taskStartTime,line.name)
|
||||
OrderModel.queryBusRoutes()
|
||||
mBusLinesCallbackMap.forEach {
|
||||
it.value.onChangeLineIdSuccess()
|
||||
}
|
||||
}
|
||||
fun commitSwitchLineId(task: TaskDataBean, line: LineDataBean) {
|
||||
line.getLineIdAndName { lineId, lineName ->
|
||||
task.getLineIdAndName { taskId, taskTime ->
|
||||
TaskRepository.startTask(
|
||||
taskId,
|
||||
lineId,
|
||||
lineName,
|
||||
object : TaskRepository.TaskStatusCallback {
|
||||
override fun startSuccess() {
|
||||
EventRepository.saveEventTaskStart(taskId,lineId,taskTime,lineName)
|
||||
OrderModel.queryBusRoutes()
|
||||
mBusLinesCallbackMap.forEach {
|
||||
it.value.onChangeLineIdSuccess()
|
||||
}
|
||||
}
|
||||
|
||||
override fun startFail(msg: String) {
|
||||
ToastUtils.showShort("选择任务失败:$msg")
|
||||
mBusLinesCallbackMap.forEach {
|
||||
it.value.onChangeLineIdFail()
|
||||
}
|
||||
}
|
||||
override fun startFail(msg: String) {
|
||||
ToastUtils.showShort("选择任务失败:$msg")
|
||||
mBusLinesCallbackMap.forEach {
|
||||
it.value.onChangeLineIdFail()
|
||||
}
|
||||
}
|
||||
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
// 1、从别的数据库加载任务
|
||||
@@ -314,7 +314,7 @@ object BusLineModel {
|
||||
}
|
||||
val tempList = sorted.toMutableList()
|
||||
val possible = tempList.removeFirst()
|
||||
val queryLastData = com.mogo.och.weaknet.repository.db.repository.EventRepository.queryLastData()
|
||||
val queryLastData = EventRepository.queryLastData()
|
||||
if(queryLastData!=null){
|
||||
if(possible.taskId==queryLastData.taskId){
|
||||
// 最后一个事件和最新的task一直 恢复数据
|
||||
@@ -418,7 +418,7 @@ object BusLineModel {
|
||||
OchChainLogManager.writeChainLogDb("滑动出发", "task:${currentTask}__taskId:${currentTask?.taskId}")
|
||||
// 设置滑动出发任务
|
||||
LineManager.lineInfos?.lineName?.let { lineName->
|
||||
com.mogo.och.weaknet.repository.db.repository.EventRepository.saveEventTaskLeaveSite(
|
||||
EventRepository.saveEventTaskLeaveSite(
|
||||
task.taskId!!,
|
||||
task.lineId!!,
|
||||
it.siteId.toLong(),
|
||||
@@ -455,7 +455,7 @@ object BusLineModel {
|
||||
TaskSiteRepository.updateDrivingStatusAndLeave(task.taskId!!,start.siteId.toLong(),TaskSiteDataBean.drivingStatusPassed,false)
|
||||
// 设置到站任务
|
||||
LineManager.lineInfos?.let {lineInfo ->
|
||||
com.mogo.och.weaknet.repository.db.repository.EventRepository.saveEventTaskArriveSite(task.taskId!!,task.lineId!!,start.siteId.toLong(),start.seq,task.taskStartTime,lineInfo.lineName)
|
||||
EventRepository.saveEventTaskArriveSite(task.taskId!!,task.lineId!!,start.siteId.toLong(),start.seq,task.taskStartTime,lineInfo.lineName)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -510,7 +510,7 @@ object BusLineModel {
|
||||
if (task.taskId!=null&&task.lineId!=null) {
|
||||
TaskRepository.endTask(task.taskId!!)
|
||||
LineManager.lineInfos?.lineName?.let {lineName->
|
||||
com.mogo.och.weaknet.repository.db.repository.EventRepository.saveEventTaskEnd(task.taskId!!,task.lineId!!,task.taskStartTime,lineName)
|
||||
EventRepository.saveEventTaskEnd(task.taskId!!,task.lineId!!,task.taskStartTime,lineName)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,6 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS
|
||||
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
|
||||
import com.mogo.eagle.core.utilcode.util.StringUtils
|
||||
@@ -204,8 +203,8 @@ object OrderModel {
|
||||
fun queryBusRoutes() {
|
||||
d(M_BUS + TAG, "查询小巴路线")
|
||||
ThreadUtils.getIoPool().execute {
|
||||
BusLineModel.loadStartedTaskAndDefaultInfo()
|
||||
if(BusLineModel.stationList.isNullOrEmpty()){
|
||||
LineModel.loadStartedTaskAndDefaultInfo()
|
||||
if(LineModel.stationList.isNullOrEmpty()){
|
||||
d(M_BUS + TAG, "获取到小巴路线数据:空 ")
|
||||
LineManager.setLineInfo(null)
|
||||
updateBusStatus()
|
||||
@@ -223,11 +222,11 @@ object OrderModel {
|
||||
*/
|
||||
private fun updateBusTaskStatus() {
|
||||
var arrivingOrArrivedStationIndex = 0 //已经到站或者即将到站的索引呢
|
||||
if(BusLineModel.stationList.isNullOrEmpty()){
|
||||
OchChainLogManager.writeChainLog("更新UI出错","${BusLineModel.currentTask}")
|
||||
if(LineModel.stationList.isNullOrEmpty()){
|
||||
OchChainLogManager.writeChainLog("更新UI出错","${LineModel.currentTask}")
|
||||
return
|
||||
}
|
||||
BusLineModel.stationList?.let {
|
||||
LineModel.stationList?.let {
|
||||
for (i in it.indices) {
|
||||
val station = it[i]
|
||||
|
||||
@@ -251,7 +250,7 @@ object OrderModel {
|
||||
}
|
||||
}
|
||||
val arrivingOrArrivedStation = it[arrivingOrArrivedStationIndex]
|
||||
val lineTime = BusLineModel.getTaskTime()
|
||||
val lineTime = LineModel.getTaskTime()
|
||||
LineManager.lineInfos?.let {lineInfo->
|
||||
if (arrivingOrArrivedStationIndex == 0 || (
|
||||
arrivingOrArrivedStation.drivingStatus == BusConst.STATION_STATUS_STOPPED
|
||||
@@ -283,7 +282,7 @@ object OrderModel {
|
||||
isGoingToNextStation = false
|
||||
|
||||
ThirdDeviceData.endTask()
|
||||
BusLineModel.endTask()
|
||||
LineModel.endTask()
|
||||
ThirdDeviceData.sendTaskDetailsToClients()
|
||||
mADASStatusCallback?.clearBusStationsMarkers()
|
||||
removeTipRunnables()
|
||||
@@ -410,7 +409,7 @@ object OrderModel {
|
||||
*/
|
||||
@JvmStatic
|
||||
fun autoDriveToNextStation() {
|
||||
if (BusLineModel.isLastStation()==true) {
|
||||
if (LineModel.isLastStation()==true) {
|
||||
// 当前站是最后一站,结束当前行程
|
||||
abortTask()
|
||||
return
|
||||
@@ -424,7 +423,7 @@ object OrderModel {
|
||||
|
||||
ThirdDeviceData.leaveStation()
|
||||
|
||||
BusLineModel.leaveStation()
|
||||
LineModel.leaveStation()
|
||||
|
||||
updateBusStatus()
|
||||
}
|
||||
@@ -435,8 +434,8 @@ object OrderModel {
|
||||
* 车机端展示 三站: 中间为即将到到达或者刚到达的站
|
||||
*/
|
||||
private fun updateBusStatus() {
|
||||
BusLineModel.stationList?.let {
|
||||
if (BusLineModel.startTaskMessage()) { //默认是第一站到站查询
|
||||
LineModel.stationList?.let {
|
||||
if (LineModel.startTaskMessage()) { //默认是第一站到站查询
|
||||
LineManager.lineInfos?.lineName?.let { lineName->
|
||||
LedScreenManager.sendTripInfo2Led(
|
||||
LedScreenManager.START_TRIP,
|
||||
@@ -450,7 +449,7 @@ object OrderModel {
|
||||
}
|
||||
|
||||
|
||||
BusLineModel.setDemoMode()
|
||||
LineModel.setDemoMode()
|
||||
|
||||
LineManager.getStartStation {
|
||||
isGoingToNextStation = it.isLeaving
|
||||
@@ -467,11 +466,11 @@ object OrderModel {
|
||||
}
|
||||
|
||||
private fun beforeTaskTips() {
|
||||
if (BusLineModel.currentTask == null) return
|
||||
if (LineModel.currentTask == null) return
|
||||
|
||||
removeTipRunnables()
|
||||
|
||||
val taskTime = BusLineModel.currentTask!!.taskStartTime?:return
|
||||
val taskTime = LineModel.currentTask!!.taskStartTime?:return
|
||||
val tip3Time = taskTime - 3 * 60 * 1000 - DateTimeUtil.getCurrentTimeStamp() // 首站离开前3分钟提示
|
||||
val tip1Time = taskTime - 60 * 1000 - DateTimeUtil.getCurrentTimeStamp() // 首站离开前1分钟提示
|
||||
|
||||
@@ -486,7 +485,7 @@ object OrderModel {
|
||||
|
||||
private var tip3Runnable = Runnable {
|
||||
|
||||
if (BusLineModel.startTaskMessage()) {
|
||||
if (LineModel.startTaskMessage()) {
|
||||
tipStartTask("3")
|
||||
} else {
|
||||
removeTipRunnables()
|
||||
@@ -494,7 +493,7 @@ object OrderModel {
|
||||
}
|
||||
|
||||
private var tip1Runnable = Runnable {
|
||||
if (BusLineModel.startTaskMessage()) {
|
||||
if (LineModel.startTaskMessage()) {
|
||||
tipStartTask("1")
|
||||
} else {
|
||||
removeTipRunnables()
|
||||
@@ -572,7 +571,7 @@ object OrderModel {
|
||||
isGoingToNextStation = false
|
||||
|
||||
ThirdDeviceData.arriveStation()
|
||||
BusLineModel.arrivedStation()
|
||||
LineModel.arrivedStation()
|
||||
updateBusStatus()
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ object ThirdDeviceData {
|
||||
LineManager.lineInfos!!.lineName,
|
||||
start.name,
|
||||
end.name,
|
||||
BusLineModel.isLastStation()==true
|
||||
LineModel.isLastStation()==true
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -47,7 +47,7 @@ object ThirdDeviceData {
|
||||
LineManager.lineInfos!!.lineName,
|
||||
start.name,
|
||||
end.name,
|
||||
BusLineModel.isLastStation()==true
|
||||
LineModel.isLastStation()==true
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -65,17 +65,17 @@ object ThirdDeviceData {
|
||||
}
|
||||
|
||||
fun sendTaskDetailsToClients() {
|
||||
if (LineManager.lineInfos==null|| BusLineModel.currentTask ==null|| BusLineModel.stationList.isNullOrEmpty()) {
|
||||
if (LineManager.lineInfos==null|| LineModel.currentTask ==null|| LineModel.stationList.isNullOrEmpty()) {
|
||||
val data = BusTransferData(if (LoginStatusManager.isLogin()) 1 else 0, null)
|
||||
val msg = TaskDetailsMsg(GsonUtils.toJson(data), BusinessType.shuttle)
|
||||
d(M_BUS + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(msg))
|
||||
LanSocketManager.sendMsgToClient(msg)
|
||||
}else{
|
||||
busRoutesResult.setSite(BusLineModel.stationList)
|
||||
busRoutesResult.setSite(LineModel.stationList)
|
||||
busRoutesResult.lineId = LineManager.lineInfos!!.lineId.toInt()
|
||||
busRoutesResult.name = LineManager.lineInfos!!.lineName
|
||||
busRoutesResult.taskId = BusLineModel.currentTask!!.taskId!!.toInt()
|
||||
busRoutesResult.taskTime = BusLineModel.currentTask!!.taskStartTime!!
|
||||
busRoutesResult.taskId = LineModel.currentTask!!.taskId!!.toInt()
|
||||
busRoutesResult.taskTime = LineModel.currentTask!!.taskStartTime!!
|
||||
val data = BusTransferData(if (LoginStatusManager.isLogin()) 1 else 0, busRoutesResult)
|
||||
val msg = TaskDetailsMsg(GsonUtils.toJson(data), BusinessType.shuttle)
|
||||
d(M_BUS + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(msg))
|
||||
|
||||
@@ -22,9 +22,9 @@ import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
|
||||
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.WriteOffCountResponse
|
||||
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
|
||||
import com.mogo.och.weaknet.bean.WriteOffPassenger
|
||||
import com.mogo.och.weaknet.repository.net.OrderServiceManager
|
||||
import com.mogo.och.weaknet.repository.net.shuttlesaas.OrderServiceManager
|
||||
import com.mogo.och.weaknet.util.ShuttleVoiceManager
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.ObservableEmitter
|
||||
@@ -33,9 +33,9 @@ import io.reactivex.schedulers.Schedulers
|
||||
|
||||
object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
|
||||
|
||||
private val TAG = "TicketModel"
|
||||
private const val TAG = "TicketModel"
|
||||
|
||||
private val SELECTWRITEOFFCOUNT = "SELECTWRITEOFFCOUNT"
|
||||
private const val SELECTWRITEOFFCOUNT = "SELECTWRITEOFFCOUNT"
|
||||
|
||||
private var emitterMain: ObservableEmitter<Int>?=null
|
||||
|
||||
@@ -98,7 +98,7 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
|
||||
|
||||
private fun selectWriteOffCount(){
|
||||
LineManager.endStation?.let { endStation->
|
||||
BusLineModel.currentTask?.let {currentTask->
|
||||
LineModel.currentTask?.let { currentTask->
|
||||
OrderServiceManager.queryBusTaskByLineId(AbsMogoApplication.getApp(),
|
||||
"${currentTask.taskId}",
|
||||
"${endStation.siteId}",
|
||||
@@ -133,12 +133,6 @@ object TicketModel : IOchOnMessageListener<WriteOffPassenger>{
|
||||
if(writeOffMsg.ticketSize==null||writeOffMsg.ticketSize==0){
|
||||
return
|
||||
}
|
||||
// playPassenger(
|
||||
// writeOffMsg.ticketSize?:0,
|
||||
// writeOffMsg.phone ?: "",
|
||||
// writeOffMsg.ticketName ?: "",
|
||||
// writeOffMsg.orderNo?:""
|
||||
// )
|
||||
} else { // 核验失败
|
||||
ShuttleVoiceManager.writeOffFaile(writeOffMsg.failedReason ?: "")
|
||||
var tempPhone = writeOffMsg.phone
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.mogo.och.weaknet.repository.db.bean
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
import androidx.room.PrimaryKey
|
||||
import com.google.gson.annotations.SerializedName
|
||||
|
||||
@Entity(tableName = LineDataBean.lineDataTable)
|
||||
data class LineDataBean(
|
||||
@@ -26,6 +27,7 @@ data class LineDataBean(
|
||||
* 终点站名称
|
||||
*/
|
||||
@ColumnInfo(name = "end_station_name", typeAffinity = ColumnInfo.TEXT)
|
||||
@SerializedName("endSiteName")
|
||||
var endStationName: String? = null,
|
||||
|
||||
/**
|
||||
@@ -49,4 +51,12 @@ data class LineDataBean(
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
fun getLineIdAndName(function: (lineId:Long,lineName:String) -> Unit) {
|
||||
lineId?.let {id->
|
||||
lineName?.let {name->
|
||||
function(id,name)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,16 +3,20 @@ package com.mogo.och.weaknet.repository.db.bean
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
import androidx.room.PrimaryKey
|
||||
import com.google.gson.annotations.SerializedName
|
||||
|
||||
@Entity(tableName = TaskDataBean.taskDataTable)
|
||||
class TaskDataBean(
|
||||
|
||||
@PrimaryKey(autoGenerate = true) var id: Int = 0,
|
||||
@PrimaryKey(autoGenerate = true)
|
||||
@SerializedName("idtemp")
|
||||
var id: Int = 0,
|
||||
|
||||
/**
|
||||
* 任务id
|
||||
*/
|
||||
@ColumnInfo(name = "task_id", typeAffinity = ColumnInfo.INTEGER, index = true)
|
||||
@SerializedName("id")
|
||||
var taskId: Long? = null,
|
||||
|
||||
/**
|
||||
@@ -83,5 +87,13 @@ class TaskDataBean(
|
||||
return result
|
||||
}
|
||||
|
||||
fun getLineIdAndName(function: (lineId:Long,lineName:Long) -> Unit) {
|
||||
taskId?.let {id->
|
||||
taskStartTime?.let {time->
|
||||
function(id,time)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
package com.mogo.och.weaknet.repository.db.transform
|
||||
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.ObservableSource
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||
@@ -16,31 +12,3 @@ fun <T,V> Observable<T>.transform4DataBase(transfor:Function<T, ObservableSource
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
}
|
||||
|
||||
class FRetryWithTime11 : Function<List<LineDataBean>?, ObservableSource<List<BusQueryLinesResponse.Result>>> {
|
||||
override fun apply(baseData: List<LineDataBean>): ObservableSource<List<BusQueryLinesResponse.Result>> {
|
||||
val result = mutableListOf<BusQueryLinesResponse.Result>()
|
||||
var temp:BusQueryLinesResponse.Result? = null
|
||||
baseData.forEach {
|
||||
temp = BusQueryLinesResponse.Result()
|
||||
temp?.lineId = it.lineId
|
||||
temp?.name = it.lineName
|
||||
temp?.endSiteName = it.endStationName
|
||||
result.add(temp!!)
|
||||
}
|
||||
return Observable.just(result)
|
||||
}
|
||||
}
|
||||
|
||||
class TransformTask : Function<List<TaskDataBean>?, ObservableSource<List<BusQueryLineTaskResponse.Result>>> {
|
||||
override fun apply(baseData: List<TaskDataBean>): ObservableSource<List<BusQueryLineTaskResponse.Result>> {
|
||||
val result = mutableListOf<BusQueryLineTaskResponse.Result>()
|
||||
var temp:BusQueryLineTaskResponse.Result? = null
|
||||
baseData.forEach {
|
||||
temp = BusQueryLineTaskResponse.Result()
|
||||
temp?.id = it.taskId
|
||||
temp?.taskStartTime = it.taskStartTime
|
||||
result.add(temp!!)
|
||||
}
|
||||
return Observable.just(result)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.mogo.och.weaknet.repository.net;
|
||||
package com.mogo.och.weaknet.repository.net.shuttlesaas;
|
||||
|
||||
import com.mogo.eagle.core.data.BaseData;
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineStationsRequest;
|
||||
import com.mogo.och.weaknet.bean.BusRoutesResponse;
|
||||
import com.mogo.och.weaknet.bean.CarExecutableTaskResponse;
|
||||
import com.mogo.och.weaknet.bean.ShuttleEventRequest;
|
||||
import com.mogo.och.weaknet.bean.WriteOffCountResponse;
|
||||
import com.mogo.och.weaknet.bean.request.BusQueryLineStationsRequest;
|
||||
import com.mogo.och.weaknet.bean.response.BusRoutesResponse;
|
||||
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 io.reactivex.Observable;
|
||||
import retrofit2.http.Body;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.weaknet.repository.net
|
||||
package com.mogo.och.weaknet.repository.net.shuttlesaas
|
||||
|
||||
import android.content.Context
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
|
||||
@@ -9,11 +9,11 @@ import com.mogo.och.common.module.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.network.OchCommonServiceCallback
|
||||
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
|
||||
import com.mogo.och.common.module.network.interceptor.transformIoTry
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineStationsRequest
|
||||
import com.mogo.och.weaknet.bean.BusRoutesResponse
|
||||
import com.mogo.och.weaknet.bean.CarExecutableTaskResponse
|
||||
import com.mogo.och.weaknet.bean.ShuttleEventRequest
|
||||
import com.mogo.och.weaknet.bean.WriteOffCountResponse
|
||||
import com.mogo.och.weaknet.bean.request.BusQueryLineStationsRequest
|
||||
import com.mogo.och.weaknet.bean.response.BusRoutesResponse
|
||||
import com.mogo.och.weaknet.bean.response.CarExecutableTaskResponse
|
||||
import com.mogo.och.weaknet.bean.request.ShuttleEventRequest
|
||||
import com.mogo.och.weaknet.bean.response.WriteOffCountResponse
|
||||
|
||||
/**
|
||||
* @author: wangmingjun
|
||||
@@ -10,7 +10,7 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.common.module.wigets.WindowRelativeLayout
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_switch_biz.view.loading_biz
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_switch_biz.view.swtichLine
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_switch_biz.view.swtichTask
|
||||
@@ -70,7 +70,7 @@ class SwitchBizView: WindowRelativeLayout, SwtichBizeModel.SwtichLineViewCallbac
|
||||
swtichLine.loadingDatas()
|
||||
}
|
||||
|
||||
override fun showSwitchTaskByLineInfo(lineInfo: BusQueryLinesResponse.Result) {
|
||||
override fun showSwitchTaskByLineInfo(lineInfo: LineDataBean) {
|
||||
// 展示loading
|
||||
showLoadingView()
|
||||
swtichTask.queryTaskByLineInfo(lineInfo)
|
||||
|
||||
@@ -3,9 +3,9 @@ package com.mogo.och.weaknet.ui.bizswitch
|
||||
import androidx.lifecycle.ViewModel
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.callback.IBusLinesCallback
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
|
||||
/**
|
||||
* @author XuXinChao
|
||||
@@ -20,19 +20,19 @@ class SwtichBizeModel : ViewModel(), IBusLinesCallback {
|
||||
|
||||
|
||||
override fun onCleared() {
|
||||
BusLineModel.setBusLinesCallback(TAG, null)
|
||||
LineModel.setBusLinesCallback(TAG, null)
|
||||
}
|
||||
|
||||
fun setDistanceCallback(viewCallback: SwtichLineViewCallback) {
|
||||
this.viewCallback = viewCallback
|
||||
BusLineModel.setBusLinesCallback(TAG, this)
|
||||
LineModel.setBusLinesCallback(TAG, this)
|
||||
this.viewCallback?.showLoadingView()
|
||||
ThreadUtils.getIoPool().execute {
|
||||
BusLineModel.loadStartedTaskAndDefaultInfo()
|
||||
LineModel.loadStartedTaskAndDefaultInfo()
|
||||
}
|
||||
}
|
||||
|
||||
fun loadingSwitchTask(lineInfo: BusQueryLinesResponse.Result) {
|
||||
fun loadingSwitchTask(lineInfo: LineDataBean) {
|
||||
viewCallback?.showSwitchTaskByLineInfo(lineInfo)
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ class SwtichBizeModel : ViewModel(), IBusLinesCallback {
|
||||
interface SwtichLineViewCallback {
|
||||
fun showSwtichLineView()
|
||||
fun showLoadingView()
|
||||
fun showSwitchTaskByLineInfo(lineInfo: BusQueryLinesResponse.Result)
|
||||
fun showSwitchTaskByLineInfo(lineInfo: LineDataBean)
|
||||
fun showSwitchTaskInfo()
|
||||
fun loadLineData()
|
||||
fun loadRunningTask()
|
||||
@@ -77,7 +77,7 @@ class SwtichBizeModel : ViewModel(), IBusLinesCallback {
|
||||
override fun onCompleteTask() {
|
||||
super.onCompleteTask()
|
||||
ThreadUtils.getIoPool().execute {
|
||||
BusLineModel.loadStartedTaskAndDefaultInfo()
|
||||
LineModel.loadStartedTaskAndDefaultInfo()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ import com.mogo.och.common.module.manager.autopilot.autopilot.IOchAutopilotStatu
|
||||
import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutoPilotStatusListenerManager
|
||||
import com.mogo.och.data.bean.BusStationBean
|
||||
import com.mogo.och.weaknet.callback.IBusADASStatusCallback
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.model.OrderModel
|
||||
import com.mogo.och.weaknet.util.BusTrajectoryManager
|
||||
import mogo_msg.MogoReportMsg.MogoReportMessage
|
||||
@@ -103,7 +103,7 @@ class BusPresenter(view: ShuttleFragment?) : Presenter<ShuttleFragment?>(view),
|
||||
when (state) {
|
||||
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE, IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING, IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {
|
||||
if (FunctionBuildConfig.isDemoMode
|
||||
&& ((mCurrentStation >= 0 && mCurrentStation <= BusLineModel.stationList!!.size - 1) && OrderModel.isGoingToNextStation)
|
||||
&& ((mCurrentStation >= 0 && mCurrentStation <= LineModel.stationList!!.size - 1) && OrderModel.isGoingToNextStation)
|
||||
) {
|
||||
d(SceneConstant.M_BUS + "BusOrderModel=", "有美化功能")
|
||||
return
|
||||
|
||||
@@ -4,34 +4,29 @@ import android.content.Context
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageView
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.recyclerview.widget.DiffUtil
|
||||
import androidx.recyclerview.widget.DiffUtil.Callback
|
||||
import androidx.recyclerview.widget.GridLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.ui.switchline.SwitchLineAdapter.SwitchLineViewHolder
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
|
||||
/**
|
||||
* 路线列表adapter
|
||||
*/
|
||||
class SwitchLineAdapter(
|
||||
private val mContext: Context,
|
||||
val mData: MutableList<BusQueryLinesResponse.Result>
|
||||
val mData: MutableList<LineDataBean>
|
||||
) : RecyclerView.Adapter<SwitchLineViewHolder>() {
|
||||
companion object{
|
||||
const val TAG = "SwitchLineAdapter"
|
||||
}
|
||||
// RecyclerView设置点击事件
|
||||
private var mItemClickListener: LineItemClickListener? = null
|
||||
var checkLine:BusQueryLinesResponse.Result? = null
|
||||
var checkTask: BusQueryLineTaskResponse.Result? = null
|
||||
|
||||
fun setDataList(dataList: List<BusQueryLinesResponse.Result>) {
|
||||
fun setDataList(dataList: List<LineDataBean>) {
|
||||
if (this.mData == dataList) {
|
||||
// 如果新旧列表一致,则直接返回
|
||||
return
|
||||
@@ -57,8 +52,8 @@ class SwitchLineAdapter(
|
||||
val currentPosition = holder.bindingAdapterPosition
|
||||
val line = mData[currentPosition]
|
||||
|
||||
holder.lineName.text = line.name
|
||||
val string = mContext.getString(R.string.bus_line_goto_end, line.endSiteName)
|
||||
holder.lineName.text = line.lineName
|
||||
val string = mContext.getString(R.string.bus_line_goto_end, line.endStationName)
|
||||
holder.lineEndName.text = string
|
||||
|
||||
|
||||
@@ -82,10 +77,10 @@ class SwitchLineAdapter(
|
||||
}
|
||||
|
||||
interface LineItemClickListener {
|
||||
fun onItemClick(data: BusQueryLinesResponse.Result)
|
||||
fun onItemClick(data: LineDataBean)
|
||||
}
|
||||
|
||||
inner class MyDiffCallback(private val oldData:List<BusQueryLinesResponse.Result>, private val newData:List<BusQueryLinesResponse.Result>):
|
||||
inner class MyDiffCallback(private val oldData:List<LineDataBean>, private val newData:List<LineDataBean>):
|
||||
Callback(){
|
||||
override fun getOldListSize(): Int {
|
||||
return oldData.size
|
||||
|
||||
@@ -9,18 +9,14 @@ import android.view.View
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.lifecycle.findViewTreeViewModelStoreOwner
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import com.mogo.commons.storage.SharedPrefsMgr
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.common.module.wigets.WindowRelativeLayout
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.ui.bizswitch.SwtichBizeModel
|
||||
import kotlinx.android.synthetic.main.shuttle_wadk_task_running.view.no_order_data_view
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_switch_line.view.aciv_refresh_task
|
||||
@@ -74,7 +70,7 @@ class SwitchLineView: WindowRelativeLayout, SwtichLineModel.SwtichLineViewCallba
|
||||
switch_line_rv.setAdapter(mAdapter)
|
||||
//设置item 点击事件
|
||||
mAdapter.setOnLineItemClickListener(object : SwitchLineAdapter.LineItemClickListener{
|
||||
override fun onItemClick(data: BusQueryLinesResponse.Result) {
|
||||
override fun onItemClick(data: LineDataBean) {
|
||||
viewbizModel?.loadingSwitchTask(data)
|
||||
}
|
||||
})
|
||||
@@ -117,7 +113,7 @@ class SwitchLineView: WindowRelativeLayout, SwtichLineModel.SwtichLineViewCallba
|
||||
|
||||
}
|
||||
|
||||
override fun onBusLinesChange(data: MutableList<BusQueryLinesResponse.Result>?) {
|
||||
override fun onBusLinesChange(data: MutableList<LineDataBean>?) {
|
||||
if (data.isNullOrEmpty()) {
|
||||
showNoData(true)
|
||||
}else{
|
||||
|
||||
@@ -3,10 +3,10 @@ package com.mogo.och.weaknet.ui.switchline
|
||||
import androidx.lifecycle.ViewModel
|
||||
import com.mogo.commons.storage.SharedPrefsMgr
|
||||
import com.mogo.och.common.module.utils.DateTimeUtil
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.callback.IBusLinesCallback
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.BusLineModel.EXECUTABLECHANGETIME
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.model.LineModel.EXECUTABLECHANGETIME
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
|
||||
/**
|
||||
* @author XuXinChao
|
||||
@@ -21,16 +21,16 @@ class SwtichLineModel : ViewModel(), IBusLinesCallback {
|
||||
|
||||
|
||||
override fun onCleared() {
|
||||
BusLineModel.setBusLinesCallback(TAG,null)
|
||||
LineModel.setBusLinesCallback(TAG,null)
|
||||
}
|
||||
|
||||
fun setDistanceCallback(viewCallback:SwtichLineViewCallback){
|
||||
this.viewCallback = viewCallback
|
||||
BusLineModel.setBusLinesCallback(TAG,this)
|
||||
LineModel.setBusLinesCallback(TAG,this)
|
||||
}
|
||||
|
||||
fun queryBusLines() {
|
||||
BusLineModel.queryBusLines()
|
||||
LineModel.queryBusLines()
|
||||
}
|
||||
|
||||
fun setRefreshTime() {
|
||||
@@ -41,16 +41,16 @@ class SwtichLineModel : ViewModel(), IBusLinesCallback {
|
||||
}
|
||||
|
||||
fun refreshTask() {
|
||||
BusLineModel.refreshTask()
|
||||
LineModel.refreshTask()
|
||||
}
|
||||
|
||||
interface SwtichLineViewCallback{
|
||||
fun startTaskState(success: Boolean)
|
||||
fun onBusLinesChange(data: MutableList<BusQueryLinesResponse.Result>?)
|
||||
fun onBusLinesChange(data: MutableList<LineDataBean>?)
|
||||
fun refreshDate(formatLongToString: String?)
|
||||
}
|
||||
|
||||
override fun onBusLinesChange(data: MutableList<BusQueryLinesResponse.Result>?) {
|
||||
override fun onBusLinesChange(data: MutableList<LineDataBean>?) {
|
||||
viewCallback?.onBusLinesChange(data)
|
||||
}
|
||||
|
||||
|
||||
@@ -9,9 +9,10 @@ import androidx.recyclerview.widget.DiffUtil
|
||||
import androidx.recyclerview.widget.DiffUtil.Callback
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.weaknet.ui.switchtask.SwitchLineTaskAdapter.SwitchLineTaskViewHolder
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
|
||||
/**
|
||||
* 路线列表adapter
|
||||
@@ -19,11 +20,11 @@ import com.mogo.och.shuttle.weaknet.R
|
||||
@Suppress("UNUSED_EXPRESSION")
|
||||
class SwitchLineTaskAdapter(
|
||||
private val mContext: Context,
|
||||
private var checkTask:BusQueryLineTaskResponse.Result?,
|
||||
private val mData: MutableList<BusQueryLineTaskResponse.Result>,
|
||||
private var checkTask:TaskDataBean?,
|
||||
private val mData: MutableList<TaskDataBean>,
|
||||
) : RecyclerView.Adapter<SwitchLineTaskViewHolder>() {
|
||||
|
||||
fun setDataList(dataList: List<BusQueryLineTaskResponse.Result>) {
|
||||
fun setDataList(dataList: List<TaskDataBean>) {
|
||||
if (this.mData == dataList) {
|
||||
// 如果新旧列表一致,则直接返回
|
||||
return
|
||||
@@ -37,7 +38,7 @@ class SwitchLineTaskAdapter(
|
||||
diffResult.dispatchUpdatesTo(this)
|
||||
}
|
||||
|
||||
fun getCheckTask():BusQueryLineTaskResponse.Result?{
|
||||
fun getCheckTask(): TaskDataBean?{
|
||||
return checkTask
|
||||
}
|
||||
|
||||
@@ -57,17 +58,17 @@ class SwitchLineTaskAdapter(
|
||||
override fun onBindViewHolder(holder: SwitchLineTaskViewHolder, position: Int) {
|
||||
val currentPosition = holder.bindingAdapterPosition
|
||||
val task = mData[currentPosition]
|
||||
val taskStartTime = TimeUtils.millis2String(task.taskStartTime, "HH:mm")
|
||||
val taskStartTime = TimeUtils.millis2String(task.taskStartTime?:System.currentTimeMillis(), "HH:mm")
|
||||
holder.taskTime.text = taskStartTime
|
||||
|
||||
holder.taskTime.isChecked = if(checkTask!=null) checkTask!!.id == task.id else false
|
||||
holder.taskTime.isChecked = if(checkTask!=null) checkTask!!.taskId == task.taskId else false
|
||||
holder.taskTime.setOnClickListener {
|
||||
if(checkTask==null){
|
||||
resetOther()
|
||||
checkTask = task
|
||||
mTaskItemClickListener?.onItemClick(currentPosition,true)
|
||||
}else{
|
||||
if(checkTask!!.id==task.id){
|
||||
if(checkTask!!.taskId==task.taskId){
|
||||
checkTask = null
|
||||
mTaskItemClickListener?.onItemClick(currentPosition,false)
|
||||
}else {
|
||||
@@ -84,7 +85,7 @@ class SwitchLineTaskAdapter(
|
||||
|
||||
private fun resetOther() {
|
||||
mData.forEachIndexed { index, result ->
|
||||
if(checkTask!=null && result.id==checkTask!!.id){
|
||||
if(checkTask!=null && result.taskId==checkTask!!.taskId){
|
||||
checkTask = null
|
||||
notifyItemChanged(index)
|
||||
}
|
||||
@@ -103,7 +104,7 @@ class SwitchLineTaskAdapter(
|
||||
fun onItemClick(position: Int,isCheck:Boolean)
|
||||
}
|
||||
|
||||
inner class MyDiffCallback(private val oldData:List<BusQueryLineTaskResponse.Result>, private val newData:List<BusQueryLineTaskResponse.Result>):
|
||||
inner class MyDiffCallback(private val oldData:List<TaskDataBean>, private val newData:List<TaskDataBean>):
|
||||
Callback(){
|
||||
override fun getOldListSize(): Int {
|
||||
return oldData.size
|
||||
@@ -116,13 +117,13 @@ class SwitchLineTaskAdapter(
|
||||
override fun areItemsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean {
|
||||
val oldItem = oldData[oldItemPosition]
|
||||
val newItem = newData[newItemPosition]
|
||||
return oldItem.id == newItem.id
|
||||
return oldItem.taskId == newItem.taskId
|
||||
}
|
||||
|
||||
override fun areContentsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean {
|
||||
val oldItem = oldData[oldItemPosition]
|
||||
val newItem = newData[newItemPosition]
|
||||
return oldItem.id == newItem.id
|
||||
return oldItem.taskId == newItem.taskId
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -8,13 +8,13 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner
|
||||
import androidx.recyclerview.widget.GridLayoutManager
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.common.module.wigets.WindowRelativeLayout
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import com.mogo.och.weaknet.ui.bizswitch.SwtichBizeModel
|
||||
import com.mogo.och.weaknet.ui.switchtask.SwitchLineTaskAdapter.TaskItemClickListener
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_switch_task.view.actvLineEndStationName
|
||||
@@ -98,20 +98,22 @@ class SwitchTaskView: WindowRelativeLayout, SwtichTaskModel.SwtichLineViewCallba
|
||||
viewModel?.setDistanceCallback(this)
|
||||
}
|
||||
|
||||
fun queryTaskByLineInfo(lineInfo: BusQueryLinesResponse.Result) {
|
||||
fun queryTaskByLineInfo(lineInfo: LineDataBean) {
|
||||
viewModel?.queryBusLineTasksById(lineInfo)
|
||||
busLineName.text = lineInfo.name
|
||||
actvLineEndStationName.text = "往${lineInfo.endSiteName}方向"
|
||||
busLineName.text = lineInfo.lineName
|
||||
actvLineEndStationName.text = "往${lineInfo.endStationName}方向"
|
||||
}
|
||||
|
||||
override fun showTaskByLineIdResult(taskList: MutableList<BusQueryLineTaskResponse.Result>) {
|
||||
if(taskList.isEmpty()){
|
||||
showEmptyView()
|
||||
}else {
|
||||
showData()
|
||||
mAdapter.setDataList(taskList)
|
||||
override fun showTaskByLineIdResult(taskList: MutableList<TaskDataBean>?) {
|
||||
BizLoopManager.runInMainThread{
|
||||
if(taskList.isNullOrEmpty()){
|
||||
showEmptyView()
|
||||
}else {
|
||||
showData()
|
||||
mAdapter.setDataList(taskList)
|
||||
}
|
||||
viewbizModel?.showSwitchTaskInfo()
|
||||
}
|
||||
viewbizModel?.showSwitchTaskInfo()
|
||||
}
|
||||
|
||||
private fun showData(){
|
||||
|
||||
@@ -5,10 +5,10 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.common.module.utils.RxUtils
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.weaknet.callback.IBusLinesCallback
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import io.reactivex.disposables.Disposable
|
||||
|
||||
/**
|
||||
@@ -22,38 +22,38 @@ class SwtichTaskModel : ViewModel(), IBusLinesCallback {
|
||||
|
||||
private var viewCallback:SwtichLineViewCallback?=null
|
||||
|
||||
private var tasksBelongLine: BusQueryLinesResponse.Result? = null
|
||||
private var tasksBelongLine: LineDataBean? = null
|
||||
|
||||
private var subscribe: Disposable? = null
|
||||
|
||||
override fun onCleared() {
|
||||
RxUtils.disposeSubscribe(subscribe)
|
||||
BusLineModel.setBusLinesCallback(TAG,null)
|
||||
LineModel.setBusLinesCallback(TAG,null)
|
||||
}
|
||||
|
||||
fun setDistanceCallback(viewCallback:SwtichLineViewCallback){
|
||||
this.viewCallback = viewCallback
|
||||
BusLineModel.setBusLinesCallback(TAG,this)
|
||||
LineModel.setBusLinesCallback(TAG,this)
|
||||
}
|
||||
|
||||
fun queryBusLineTasksById(lineInfo: BusQueryLinesResponse.Result) {
|
||||
fun queryBusLineTasksById(lineInfo: LineDataBean) {
|
||||
tasksBelongLine = lineInfo
|
||||
BusLineModel.queryBusLineTasksById(lineInfo.lineId)
|
||||
LineModel.queryBusLineTasksById(lineInfo.lineId?:-1L)
|
||||
}
|
||||
|
||||
interface SwtichLineViewCallback{
|
||||
fun showTaskByLineIdResult(taskList: MutableList<BusQueryLineTaskResponse.Result>)
|
||||
fun showTaskByLineIdResult(taskList: MutableList<TaskDataBean>?)
|
||||
fun showLoading()
|
||||
fun hideLoading()
|
||||
fun startTaskSuccess()
|
||||
}
|
||||
|
||||
override fun onBusLineTasks(o: MutableList<BusQueryLineTaskResponse.Result>) {
|
||||
override fun onBusLineTasks(o: MutableList<TaskDataBean>?) {
|
||||
viewCallback?.showTaskByLineIdResult(o)
|
||||
}
|
||||
|
||||
override fun onRefreshSuccess(currentTimeStamp: Long) {
|
||||
TODO("Not yet implemented")
|
||||
|
||||
}
|
||||
|
||||
// 选择线路成功
|
||||
@@ -75,13 +75,13 @@ class SwtichTaskModel : ViewModel(), IBusLinesCallback {
|
||||
viewCallback?.hideLoading()
|
||||
}
|
||||
|
||||
fun changeLineStart(checkTask:BusQueryLineTaskResponse.Result) {
|
||||
fun changeLineStart(checkTask:TaskDataBean) {
|
||||
if(tasksBelongLine==null){
|
||||
ToastUtils.showShort("请重新选择线路")
|
||||
return
|
||||
}
|
||||
viewCallback?.showLoading()
|
||||
BusLineModel.commitSwitchLineId(checkTask,tasksBelongLine!!)
|
||||
LineModel.commitSwitchLineId(checkTask,tasksBelongLine!!)
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -8,14 +8,10 @@ import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.appcompat.widget.AppCompatImageView
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.recyclerview.widget.DiffUtil
|
||||
import androidx.recyclerview.widget.DiffUtil.Callback
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.data.bean.BusStationBean
|
||||
import com.mogo.och.weaknet.bean.BusQueryLinesResponse
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.bean.BusQueryLineTaskResponse
|
||||
import com.mogo.och.weaknet.ui.writeoff.WriteOffView
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.mogo.och.weaknet.ui.taskrunning
|
||||
import androidx.lifecycle.ViewModel
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.weaknet.callback.IBusLinesCallback
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.model.OrderModel
|
||||
|
||||
/**
|
||||
@@ -23,7 +23,7 @@ class TaskRunningModel : ViewModel(), IBusLinesCallback {
|
||||
|
||||
fun setDistanceCallback(viewCallback:SwtichLineViewCallback){
|
||||
this.viewCallback = viewCallback
|
||||
BusLineModel.setBusLinesCallback(TAG,this)
|
||||
LineModel.setBusLinesCallback(TAG,this)
|
||||
}
|
||||
|
||||
fun leaveStation() {
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.mogo.och.weaknet.ui.taskrunning
|
||||
|
||||
import android.animation.ObjectAnimator
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
@@ -16,11 +15,9 @@ import com.mogo.och.common.module.manager.autopilot.line.LineManager
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.common.module.wigets.OCHCommitDialog
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.model.BusLineModel
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
import com.mogo.och.weaknet.ui.bizswitch.SwtichBizeModel
|
||||
import com.mogo.och.weaknet.ui.switchline.SwitchLineAdapter
|
||||
import com.mogo.och.weaknet.view.BizLeaveStationView.SlideListener
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_switch_line.view.switch_line_rv
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.aciv_task_leave_station_slide_bg
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_arriver_station
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_complete_task
|
||||
@@ -112,18 +109,18 @@ class TaskRunningView: ConstraintLayout, TaskRunningModel.SwtichLineViewCallback
|
||||
|
||||
override fun showRunningTaskInfo() {
|
||||
bus_task_running_line_name.text = LineManager.lineInfos?.lineName?:""
|
||||
actv_running_task_time.text = BusLineModel.getTaskTime()
|
||||
BusLineModel.stationList?.takeIf { it.size>2 }?.let {
|
||||
actv_running_task_time.text = LineModel.getTaskTime()
|
||||
LineModel.stationList?.takeIf { it.size>2 }?.let {
|
||||
actv_running_task_last_station.text = "往${it.last().name ?: ""}"
|
||||
mAdapter.setDataList(it,BusLineModel.startStationIndex)
|
||||
CallerLogger.d(TAG,"BusLineModel.startStationIndex:${BusLineModel.startStationIndex}___$it")
|
||||
val currentStation = it.get(BusLineModel.startStationIndex)
|
||||
mAdapter.setDataList(it,LineModel.startStationIndex)
|
||||
CallerLogger.d(TAG,"BusLineModel.startStationIndex:${LineModel.startStationIndex}___$it")
|
||||
val currentStation = it.get(LineModel.startStationIndex)
|
||||
if(currentStation.isLeaving){
|
||||
showArriverStationAndCompleteTask()
|
||||
}else{
|
||||
showLeaveStationView()
|
||||
}
|
||||
if(BusLineModel.startStationIndex==it.size-1){
|
||||
if(LineModel.startStationIndex==it.size-1){
|
||||
aciv_task_leave_station_slide_bg.setTextValue("单程结束")
|
||||
}else{
|
||||
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
|
||||
|
||||
@@ -11,12 +11,11 @@ import com.mogo.eagle.core.utilcode.util.GsonUtils;
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusManager;
|
||||
import com.mogo.och.common.module.manager.autopilot.line.LineManager;
|
||||
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager;
|
||||
import com.mogo.och.data.bean.BusRoutesResult;
|
||||
import com.mogo.och.data.bean.ContraiInfo;
|
||||
import com.mogo.och.data.bean.LineInfo;
|
||||
import com.mogo.och.weaknet.constant.BusConst;
|
||||
import com.mogo.och.weaknet.model.OrderModel;
|
||||
import com.mogo.och.weaknet.model.BusLineModel;
|
||||
import com.mogo.och.weaknet.model.LineModel;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@@ -54,8 +53,8 @@ public class BusTrajectoryManager {
|
||||
* 同步Bus路线信息
|
||||
*/
|
||||
public void syncTrajectoryInfo() {
|
||||
if (LoginStatusManager.isLogin() && BusLineModel.INSTANCE.getCurrentTask() != null
|
||||
&& BusLineModel.getStartStationIndex() == 0
|
||||
if (LoginStatusManager.isLogin() && LineModel.INSTANCE.getCurrentTask() != null
|
||||
&& LineModel.getStartStationIndex() == 0
|
||||
&& !OrderModel.isGoingToNextStation()) {
|
||||
CallerLogger.d(M_BUS + TAG, "syncTrajectoryInfo() start.");
|
||||
startTrajReqLoop();
|
||||
|
||||
Reference in New Issue
Block a user