diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java index 7f1a70a0d1..90ae07ae4d 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java @@ -77,7 +77,7 @@ public class BusLinePresenter extends Presenter implements IB return; } BusLineModel.getInstance().queryBusLineTasksById(lineId,position); - subscribe = Observable.interval(5, TimeUnit.SECONDS).subscribe(aLong -> { + subscribe = Observable.interval(3, TimeUnit.MINUTES).subscribe(aLong -> { BusLineModel.getInstance().queryBusLineTasksById(lineId,position); }); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt index 1309e825f5..581690e7e4 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt @@ -161,12 +161,10 @@ class BusSwitchLineActivity : MvpActivity result.taskList.addAll(lineTaskInfo.data) // 打开操作 mAdapter.notifyItemChanged(position) - if((position==mData.size-1||position==mData.size-2)&&mData.size>6){ - linearLayoutManager.stackFromEnd = true - }else{ - linearLayoutManager.stackFromEnd = false - } + linearLayoutManager.stackFromEnd = (position==mData.size-1||position==mData.size-2)&&mData.size>6 mLinesListView.scrollToPosition(position) + }else if(lineTaskInfo.data.isEmpty()){ + mAdapter.notifyItemChanged(position) } } } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/adapter/SwitchLineAdapter.kt b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/adapter/SwitchLineAdapter.kt index 44d5a0fe25..8ff7865597 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/adapter/SwitchLineAdapter.kt +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/adapter/SwitchLineAdapter.kt @@ -11,6 +11,7 @@ import androidx.recyclerview.widget.RecyclerView import com.mogo.och.bus.R import com.mogo.och.bus.bean.BusQueryLinesResponse import com.mogo.och.bus.ui.adapter.SwitchLineAdapter.SwitchLineViewHolder +import kotlin.text.StringBuilder /** * 路线列表adapter @@ -39,8 +40,20 @@ class SwitchLineAdapter( override fun onBindViewHolder(holder: SwitchLineViewHolder, position: Int) { val currentPosition = holder.bindingAdapterPosition val line = mData[currentPosition] + if(line.name!=null&&line.name.length>10){ + line.name = line.name.substring(0,10)+"…" + } holder.lineName.text = line.name - holder.lineEndName.text = mContext.getString(R.string.bus_line_goto_end, line.endSiteName) + val sb = StringBuilder() + if (line.endSiteName!=null&&line.endSiteName.length>10) { + sb.append(line.endSiteName.substring(0,5)) + sb.append("…") + sb.append(line.endSiteName.substring(line.endSiteName.length-5,line.endSiteName.length)) + }else{ + sb.append(line.endSiteName) + } + val string = mContext.getString(R.string.bus_line_goto_end, sb.toString()) + holder.lineEndName.text = string holder.rvLineTask.layoutManager = GridLayoutManager(mContext, 3) val switchLineTaskAdapter = SwitchLineTaskAdapter( mContext, diff --git a/OCH/mogo-och-bus/src/main/res/layout/bus_switch_line_list_item.xml b/OCH/mogo-och-bus/src/main/res/layout/bus_switch_line_list_item.xml index 4d87d3ee0e..f983004340 100644 --- a/OCH/mogo-och-bus/src/main/res/layout/bus_switch_line_list_item.xml +++ b/OCH/mogo-och-bus/src/main/res/layout/bus_switch_line_list_item.xml @@ -49,13 +49,13 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/dp_20" android:layout_marginBottom="@dimen/dp_35" - android:ellipsize="end" - android:maxLines="2" + android:singleLine="true" android:textColor="@color/bus_color_b9c3e9" android:textSize="@dimen/dp_36" app:layout_constraintBottom_toTopOf="@+id/v_line_task" app:layout_constraintStart_toStartOf="@+id/switch_line_name" app:layout_constraintTop_toBottomOf="@+id/switch_line_name" + app:layout_constraintEnd_toStartOf="@+id/actv_show_more" tools:text="@string/bus_switch_line_end" /> 起点: 终点: 往%1$s方向 - 更换路线成功 - 更换路线失败 + 更换任务成功 + 更换任务失败 起点: 终点: diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt index a311da107f..8ee6064620 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt @@ -21,6 +21,8 @@ interface LoginService : IProvider { fun queryLoginStatusByNet() + fun showUiModel(show:Boolean) + /** * 登出 */ diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt index 352fa57e6b..dbaa5c5c53 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt @@ -28,6 +28,7 @@ class LoginServiceImpl : LoginService,ILoginViewCallback { private var fragment: Fragment?=null private var taxiLoginDialogFragment: WeakReference? = null private var presenter: OchCommonLoginStatusDefaultPresenter?=null + private var uiModel = true override fun init(context: Context) { @@ -53,40 +54,42 @@ class LoginServiceImpl : LoginService,ILoginViewCallback { override fun showLoginDialogFragment() { - fragment?.let { - CallerHmiManager.hideToolsView() - val parentFragmentManager = it.parentFragmentManager - val fragmentByTag: Fragment? = parentFragmentManager.findFragmentByTag(TAG) - if (fragmentByTag is DialogFragment) { - if (fragmentByTag.dialog != null && fragmentByTag.dialog!!.isShowing) { - return - } - if (fragmentByTag.dialog != null && fragmentByTag.isAdded) { - if (currentActivity() == null) { // 没有在当前应用内 在启动页面关闭应用 - d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 权限验证") + if(uiModel) { + fragment?.let { + CallerHmiManager.hideToolsView() + val parentFragmentManager = it.parentFragmentManager + val fragmentByTag: Fragment? = parentFragmentManager.findFragmentByTag(TAG) + if (fragmentByTag is DialogFragment) { + if (fragmentByTag.dialog != null && fragmentByTag.dialog!!.isShowing) { return } + if (fragmentByTag.dialog != null && fragmentByTag.isAdded) { + if (currentActivity() == null) { // 没有在当前应用内 在启动页面关闭应用 + d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 权限验证") + return + } + } } - } - if (taxiLoginDialogFragment?.get() == null) { - taxiLoginDialogFragment = WeakReference(newInstance()) - } - val taxiLoginDialog = taxiLoginDialogFragment?.get() - if (taxiLoginDialog != null) { - if (taxiLoginDialog.dialog != null && taxiLoginDialog.dialog!!.isShowing) { - return + if (taxiLoginDialogFragment?.get() == null) { + taxiLoginDialogFragment = WeakReference(newInstance()) } - if (taxiLoginDialog.isAdded) { //解决方法就是添加这行代码,如果已经添加了,就移除掉然后再show,就不会出现Fragment already added的错误了。 - parentFragmentManager.beginTransaction().remove(taxiLoginDialog) - .commitAllowingStateLoss() + val taxiLoginDialog = taxiLoginDialogFragment?.get() + if (taxiLoginDialog != null) { + if (taxiLoginDialog.dialog != null && taxiLoginDialog.dialog!!.isShowing) { + return + } + if (taxiLoginDialog.isAdded) { //解决方法就是添加这行代码,如果已经添加了,就移除掉然后再show,就不会出现Fragment already added的错误了。 + parentFragmentManager.beginTransaction().remove(taxiLoginDialog) + .commitAllowingStateLoss() + } + d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面") + taxiLoginDialog.show(parentFragmentManager, TAG) + taxiLoginDialog.setOnDismissListener(DialogInterface.OnDismissListener { dialog: DialogInterface? -> + taxiLoginDialogFragment?.clear() + presenter?.queryLoginStatus() + }) } - d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面") - taxiLoginDialog.show(parentFragmentManager, TAG) - taxiLoginDialog.setOnDismissListener(DialogInterface.OnDismissListener { dialog: DialogInterface? -> - taxiLoginDialogFragment?.clear() - presenter?.queryLoginStatus() - }) } } } @@ -104,6 +107,10 @@ class LoginServiceImpl : LoginService,ILoginViewCallback { presenter?.queryLoginStatus() } + override fun showUiModel(show:Boolean) { + uiModel = show; + } + override fun loginOut(mLatitude:Double,mLongitude:Double) { presenter?.logOut(mLatitude,mLongitude) } diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt index b08e15472d..9751bc46cd 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt @@ -8,6 +8,7 @@ import android.util.Log import android.view.* import androidx.appcompat.widget.AppCompatButton import androidx.appcompat.widget.AppCompatEditText +import androidx.appcompat.widget.AppCompatImageView import androidx.appcompat.widget.AppCompatTextView import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat @@ -15,7 +16,9 @@ import androidx.core.widget.addTextChangedListener import androidx.fragment.app.DialogFragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentTransaction +import com.alibaba.android.arouter.launcher.ARouter import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.commons.debug.DebugConfig import com.mogo.commons.mvp.MvpDialogFragment import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger @@ -23,7 +26,9 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.BarUtils import com.mogo.eagle.core.utilcode.util.KeyboardUtils import com.mogo.och.common.module.R +import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.presenter.OchCommonLoginPresenter +import com.mogo.och.common.module.biz.provider.LoginService /** @@ -40,6 +45,7 @@ class TaxiLoginDialogFragment : MvpDialogFragment @@ -81,6 +89,17 @@ class TaxiLoginDialogFragment : MvpDialogFragment { + acivLoginBg.setImageResource(R.drawable.taxi_ic_login_bg) + } + "fPadLenovoOchBus" -> { + acivLoginBg.setImageResource(R.drawable.bus_ic_login_bg) + } + } + } + private fun initListener() { mRootView.isFocusable = true mRootView.isFocusableInTouchMode = true @@ -121,6 +140,13 @@ class TaxiLoginDialogFragment : MvpDialogFragment if(itEditable.isNotEmpty()){ diff --git a/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp b/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp new file mode 100644 index 0000000000..7d76261863 Binary files /dev/null and b/OCH/mogo-och-common-module/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp differ diff --git a/OCH/mogo-och-common-module/src/main/res/layout/taxi_login_view.xml b/OCH/mogo-och-common-module/src/main/res/layout/taxi_login_view.xml index a75d2b576b..104d59e06a 100644 --- a/OCH/mogo-och-common-module/src/main/res/layout/taxi_login_view.xml +++ b/OCH/mogo-och-common-module/src/main/res/layout/taxi_login_view.xml @@ -7,6 +7,7 @@ android:layout_height="match_parent">