| app/src/main/java/com/xw/yunwei/ui/user/mine/scheduling/adapter/DateWeekAdapter.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/java/com/xw/yunwei/ui/work/car/detail/operations/charge/ChargeCarActivity.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/java/com/xw/yunwei/ui/work/car/detail/operations/charge/ChargeCarVM.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/res/layout/item_date_week.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/com/xw/yunwei/ui/user/mine/scheduling/adapter/DateWeekAdapter.kt
New file @@ -0,0 +1,44 @@ package com.xw.yunwei.ui.user.mine.scheduling.adapter import android.widget.TextView import com.chad.library.adapter.base.BaseQuickAdapter import com.chad.library.adapter.base.viewholder.BaseViewHolder import com.xw.yunwei.R import java.util.Calendar //日期星期适配器 class DateWeekAdapter() : BaseQuickAdapter<String, BaseViewHolder>(R.layout.item_date_week) { private val calendar = Calendar.getInstance() var selectDate: String? = null set(value) { data.indexOf(field).takeIf { it != -1 }?.also { notifyItemChanged(it) } field = value data.indexOf(field).takeIf { it != -1 }?.also { notifyItemChanged(it) } } override fun convert(holder: BaseViewHolder, item: String) { calendar.apply { val split = item.split("-") set(Calendar.YEAR, split[0].toInt()) set(Calendar.MONTH, split[1].toInt() - 1) set(Calendar.DAY_OF_MONTH, split[2].toInt()) holder.setText( R.id.tv_week, when (get(Calendar.DAY_OF_WEEK)) { Calendar.SUNDAY -> "日" Calendar.MONDAY -> "一" Calendar.TUESDAY -> "二" Calendar.WEDNESDAY -> "三" Calendar.THURSDAY -> "四" Calendar.FRIDAY -> "五" Calendar.SATURDAY -> "六" else -> "" } ) holder.getView<TextView>(R.id.tv_day).apply { text = split[2].toInt().toString() isSelected = selectDate == item } } } } app/src/main/java/com/xw/yunwei/ui/work/car/detail/operations/charge/ChargeCarActivity.kt
@@ -36,7 +36,6 @@ super.init() viewModel.carId = intent.getLongExtra("carId", 0L) viewModel.taskId = intent.getLongExtra("taskId", -1L) viewModel.queryInfo() viewModel.queryStatus() initAdapter() } app/src/main/java/com/xw/yunwei/ui/work/car/detail/operations/charge/ChargeCarVM.kt
@@ -21,7 +21,6 @@ import okhttp3.RequestBody.Companion.asRequestBody import org.koin.core.component.inject import java.io.File import kotlin.getValue class ChargeCarVM(application: Application) : BaseViewModel(application) { val workRepository: WorkRepository by inject() @@ -52,6 +51,9 @@ launchRequest { workRepository.queryCarInfo(carId)?.let { carInfo.postValue(it) val left = if ((it.mileageRange ?: 0.0) <= 0) "" else it.mileageRange!!.toInt().toString() leftCharge.postValue(left) } } } @@ -62,6 +64,7 @@ chargeRecord.postValue(it) } } queryInfo() } fun startCharging(block: (Boolean) -> Unit) { @@ -106,12 +109,20 @@ } } fun stopCharging(block: (Boolean) -> Unit){ fun stopCharging(block: (Boolean) -> Unit) { if (leftCharge.value.isNullOrEmpty()) { ToastUtilCommon.showError("请输入剩余里程") block(false) return } if (leftCharge.value!!.toDouble() <= (chargeRecord.value?.xpChargingRecord?.startRemainingBattery ?: 0) ) { ToastUtilCommon.showError("结束电量不得低于开始电量") block(false) return } if (adapterNow.data.isEmpty()) { ToastUtilCommon.showError("请上传照片") block(false) @@ -139,7 +150,11 @@ } } private fun uploadFile(files: List<FileSelectBean>,block: (Boolean) -> Unit, succ: () -> Unit) { private fun uploadFile( files: List<FileSelectBean>, block: (Boolean) -> Unit, succ: () -> Unit ) { val result = files.find { it.url.isEmpty() } if (result == null) { succ() app/src/main/res/layout/item_date_week.xml
New file @@ -0,0 +1,29 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:orientation="vertical"> <androidx.appcompat.widget.AppCompatTextView android:id="@+id/tv_week" android:layout_width="@dimen/dp_50" android:layout_height="wrap_content" android:gravity="center" android:textColor="@color/gray_9" android:textSize="@dimen/sp_12" tools:text="日" /> <androidx.appcompat.widget.AppCompatTextView android:id="@+id/tv_day" android:layout_width="@dimen/dp_44" android:layout_height="@dimen/dp_44" android:layout_marginTop="@dimen/dp_12" android:background="@drawable/selector_date_bg" android:gravity="center" android:textColor="@color/selector_grey9_to_white" android:textSize="@dimen/sp_20" android:textStyle="bold" tools:text="18" /> </LinearLayout>