From 8c9ef04ac20a6de685cd1fdb8be33c4cd14c8b4a Mon Sep 17 00:00:00 2001 From: bxb Date: Wed, 26 Apr 2023 17:55:06 +0800 Subject: [PATCH] =?UTF-8?q?[sweeper-cloud]=E5=AD=90=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=B8=83=E5=B1=80=E6=90=AD=E5=BB=BA=E5=8F=8A?= =?UTF-8?q?=E5=85=B6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/och/sweepercloud/view/SubTaskView.kt | 19 +- .../view/SweeperCurrentTaskInfoView.kt | 138 +--------- .../drawable-xhdpi/icon_manual_driving.png | Bin 0 -> 5140 bytes .../res/layout/sweeper_current_task_info.xml | 248 +++++++----------- .../main/res/layout/sweeper_subtask_view.xml | 57 ++-- 5 files changed, 134 insertions(+), 328 deletions(-) create mode 100755 OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_manual_driving.png diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SubTaskView.kt b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SubTaskView.kt index 2138ce3e83..cef3af8496 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SubTaskView.kt +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SubTaskView.kt @@ -6,7 +6,6 @@ import android.util.AttributeSet import android.view.LayoutInflater import android.view.View import androidx.constraintlayout.widget.ConstraintLayout -import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.sweepercloud.R import com.mogo.och.sweepercloud.bean.SubInfo import kotlinx.android.synthetic.main.sweeper_subtask_view.view.* @@ -32,25 +31,11 @@ class SubTaskView : ConstraintLayout { */ fun setData(taskInfo: SubInfo, isSelect: Boolean = false, isLastTask: Boolean = false) { tvSubTaskName.text = taskInfo.taskName - var mileage: String = if (taskInfo.mileage < 1000) { - "${taskInfo.mileage}米" - } else { - "${taskInfo.mileage / 1000F}千米" - } - val time=taskInfo.timeSpent.toLong() - var timeSpent=if(DateTimeUtil.secondsToHourStr(time)!=""){ - "${DateTimeUtil.secondsToHourStr(time)}小时${DateTimeUtil.secondsToMinuteStr(time)}分钟" - }else{ - "${DateTimeUtil.secondsToMinuteStr(time)}分钟" - } - tvSubTaskDesc.text = "全程约${mileage},预计耗时$timeSpent" tvSubTaskName.setTextColor(if (isSelect) Color.parseColor("#3BD2FF") else Color.parseColor("#FFFFFF")) if (isSelect) { - ivSubTaskSelect.visibility = View.VISIBLE - ivSubTask.visibility = View.GONE + ivSubTask.setImageResource(R.drawable.sweeper_icon_select_subtask) } else { - ivSubTaskSelect.visibility = View.GONE - ivSubTask.visibility = View.VISIBLE + ivSubTask.setImageResource(R.drawable.sweeper_icon_not_select_subtask) } ivRightDownArrow.visibility = if (isLastTask) View.GONE else View.VISIBLE } diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperCurrentTaskInfoView.kt b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperCurrentTaskInfoView.kt index 00d79fdf04..301b513e3e 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperCurrentTaskInfoView.kt +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/view/SweeperCurrentTaskInfoView.kt @@ -1,21 +1,15 @@ package com.mogo.och.sweepercloud.view import android.content.Context -import android.graphics.Color import android.util.AttributeSet import android.view.LayoutInflater import android.view.View import androidx.constraintlayout.widget.ConstraintLayout -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener -import com.mogo.eagle.core.utilcode.util.ClickUtils -import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.sweepercloud.R import com.mogo.och.sweepercloud.bean.SubInfo import com.mogo.och.sweepercloud.bean.SweeperSubTaskBean import com.mogo.och.sweepercloud.constant.SubTaskTypeEnum -import com.mogo.och.sweepercloud.presenter.SweeperPresenter -import com.mogo.och.sweepercloud.ui.popwindow.MenuPopWindow import kotlinx.android.synthetic.main.sweeper_current_task_info.view.* /** @@ -25,14 +19,10 @@ class SweeperCurrentTaskInfoView : ConstraintLayout { private val TAG: String = "SweeperCurrentTaskInfoView" //当前任务操作菜单 - private var mTaskMenuPopWindow: MenuPopWindow? = null - private var presenter: SweeperPresenter? = null private var mCurrentPosition = 0 private var listTask: List? = null private var mSubTaskType: SubTaskTypeEnum = SubTaskTypeEnum.AUTOPILOT_SUBTYPE private var mSubTaskStatus: Int = 1 - //当前自动驾驶状态 - private val mCurrentAutopilotStatus = 0 constructor(context: Context) : super(context) {} constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) { @@ -44,37 +34,17 @@ class SweeperCurrentTaskInfoView : ConstraintLayout { private fun initView(context: Context) { LayoutInflater.from(context).inflate(R.layout.sweeper_current_task_info, this) - setEnableClickBtn(false) - tvStartAuto.setOnClickListener { - if (ClickUtils.isFastClick()){//防止重复点击 - if (mSubTaskStatus==1){ - ToastUtils.showLong("任务未开始无轨迹,无法启动自驾") - return@setOnClickListener - } - if (mSubTaskType==SubTaskTypeEnum.MANUAL_DRIVING_SUBTYPE){ - ToastUtils.showLong("人工子任务无轨迹,无法启动自驾") - return@setOnClickListener - } - if (mCurrentAutopilotStatus!=IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING){ - presenter?.startAutopilot() - } - } - } + setSubTaskState(false) } /** * 设置当前任务数据 */ fun setData( - workModePanelView: SweeperWorkModeView, subTaskBean: SweeperSubTaskBean?, currentPosition: Int, - menuItemClickListener: MenuPopWindow.OnMenuItemOnClickListener, - presenter: SweeperPresenter? ) { - this.presenter = presenter this.mCurrentPosition = currentPosition - mTaskMenuPopWindow = MenuPopWindow(context, menuItemClickListener) subTaskBean?.apply { this@SweeperCurrentTaskInfoView.listTask = subList tvTaskName.text = taskName @@ -82,110 +52,24 @@ class SweeperCurrentTaskInfoView : ConstraintLayout { tvTaskTime.text = DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.HH_mm) } listTask?.let { - mSubTaskStatus=it[currentPosition].taskStatus - setEnableClickBtn(mSubTaskStatus==2) + mSubTaskStatus = it[currentPosition].taskStatus + setSubTaskState(mSubTaskStatus == 2) } setCurrentData(currentPosition) - //任务操作菜单打开关闭处理 - ivMore.setOnClickListener { - if (mTaskMenuPopWindow?.isShowing != true) { - mTaskMenuPopWindow?.showAsDropDown( - workModePanelView, - resources.getDimension(R.dimen.dp_580).toInt(), - resources.getDimension(R.dimen.dp_36).toInt() - ) - } else { - mTaskMenuPopWindow?.dismiss() - } - } - } /** - * 设置准备就绪按钮时都可以点击 + * 设置子任务的状态 */ - fun setEnableClickBtn(isWorking: Boolean) { - readyTaskBtn.isClickable=!isWorking - presenter?.setWorking(isWorking) + fun setSubTaskState(isWorking: Boolean) { if (isWorking) { tvTaskState.text = "正在作业" - readyTaskBtn.text="任务中" - readyTaskBtn.setTextColor(Color.parseColor("#FFFFFFFF")) tvTaskState.setBackgroundResource(R.drawable.bg_shape_task_state_working) - readyTaskBtn.setBackgroundResource(R.drawable.sweeper_task_working) } else { tvTaskState.text = "暂未准备" - readyTaskBtn.text="开始任务" - readyTaskBtn.setTextColor(Color.parseColor("#66FFFFFF")) tvTaskState.setBackgroundResource(R.drawable.bg_shape_task_state_not_ready) - readyTaskBtn.setBackgroundResource(R.drawable.sweeper_task_not_working) } } - - /** - * 设置准备就绪按钮时都可以点击 - */ - fun setStartAutoBtn(autopilotState: Int) { - when (autopilotState) { - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> { - tvStartAuto.text="自动驾驶" - tvStartAuto.setTextColor(Color.parseColor("#66FFFFFF")) - tvStartAuto.setBackgroundResource(R.drawable.sweeper_start_auto_not_running) - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> { - tvStartAuto.text="自动驾驶" - tvStartAuto.setTextColor(Color.parseColor("#66FFFFFF")) - tvStartAuto.setBackgroundResource(R.drawable.sweeper_start_auto_not_running) - } - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { - tvStartAuto.text="自动驾驶" - tvStartAuto.setTextColor(Color.parseColor("#FFFFFFFF")) - tvStartAuto.setBackgroundResource(R.drawable.sweeper_start_auto_running) - } - IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> { - tvStartAuto.text="平行驾驶" - tvStartAuto.setTextColor(Color.parseColor("#FFFFFFFF")) - tvStartAuto.setBackgroundResource(R.drawable.sweeper_start_auto_running) - } - } - } - - /** - * 开始子任务 - */ - private fun startSubTask() { - listTask?.let { - presenter?.startTask( - isFirstSubTask(), - isLastSubTask(), - it[mCurrentPosition].taskId, - if (it[mCurrentPosition].taskType == SubTaskTypeEnum.AUTOPILOT_SUBTYPE.code) SubTaskTypeEnum.AUTOPILOT_SUBTYPE else SubTaskTypeEnum.MANUAL_DRIVING_SUBTYPE, - mSubTaskStatus - ) - } - } - - /** - * 是否第一个子任务 - */ - private fun isFirstSubTask(): Boolean { - return mCurrentPosition == 0 - } - - /** - * 是否第一个子任务 - */ - private fun isLastSubTask(): Boolean { - return mCurrentPosition == (listTask?.size?.minus(1)) - } - - /** - * 设置任务状态 - */ - fun setTaskStatus(status: Int) { - this.mSubTaskStatus = status - } - /** * 填充数据 */ @@ -205,13 +89,13 @@ class SweeperCurrentTaskInfoView : ConstraintLayout { preSubTask.setData(it[mCurrentPosition - 1]) currentSubTask.setData(it[mCurrentPosition], isSelect = true, isLastTask = true) } - preSubTask.visibility=View.VISIBLE - currentSubTask.visibility=View.VISIBLE - lastSubTask.visibility=View.GONE + preSubTask.visibility = View.VISIBLE + currentSubTask.visibility = View.VISIBLE + lastSubTask.visibility = View.GONE } else { - preSubTask.visibility=View.VISIBLE - currentSubTask.visibility=View.VISIBLE - lastSubTask.visibility=View.VISIBLE + preSubTask.visibility = View.VISIBLE + currentSubTask.visibility = View.VISIBLE + lastSubTask.visibility = View.VISIBLE //当前正在执行的任务是第一个子任务 if (mCurrentPosition == 0) { preSubTask.setData(it[mCurrentPosition], isSelect = true) diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_manual_driving.png b/OCH/sweeper/sweeper-cloud/src/main/res/drawable-xhdpi/icon_manual_driving.png new file mode 100755 index 0000000000000000000000000000000000000000..8e1fa65d96606717a6497c4b367737d78ff125e5 GIT binary patch literal 5140 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 - + android:background="@drawable/bg_shape_task_panel"> - + + + + + + + android:layout_height="2dp" + android:layout_marginTop="@dimen/dp_26" + android:background="@drawable/sweeper_task_dividing_line1_selector" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/tvTaskTime" /> - + - + - + - + - - - - - - - - - - - - - - - - \ No newline at end of file + + \ No newline at end of file diff --git a/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_subtask_view.xml b/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_subtask_view.xml index 25964e716b..c23679c874 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_subtask_view.xml +++ b/OCH/sweeper/sweeper-cloud/src/main/res/layout/sweeper_subtask_view.xml @@ -3,64 +3,51 @@ android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" - xmlns:tools="http://schemas.android.com/tools"> + > + android:id="@+id/ivManualDriving" + android:layout_width="@dimen/dp_56" + android:layout_height="@dimen/dp_56" + android:src="@drawable/icon_manual_driving" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" + android:layout_marginEnd="@dimen/dp_26" + android:layout_marginTop="@dimen/dp_20" + /> - \ No newline at end of file