desc:数据查询。告警数据。历史视频。
							parent
							
								
									888ef2a590
								
							
						
					
					
						commit
						5e4009205b
					
				| @ -0,0 +1,30 @@ | ||||
| package com.yinuo.safetywatcher.watcher.adapter | ||||
| 
 | ||||
| import android.view.LayoutInflater | ||||
| import android.view.ViewGroup | ||||
| import com.yinuo.safetywatcher.databinding.LayoutItemHistoryBinding | ||||
| import com.yinuo.safetywatcher.watcher.base.BaseRvAdapter | ||||
| import com.yinuo.safetywatcher.watcher.bean.HistoryData | ||||
| import com.yinuo.safetywatcher.watcher.utils.DateUtils | ||||
| 
 | ||||
| class HistoryDataAdapter : | ||||
|     BaseRvAdapter<HistoryData, LayoutItemHistoryBinding, HistoryDataAdapter.HViewHolder>() { | ||||
| 
 | ||||
|     class HViewHolder(val binding: LayoutItemHistoryBinding) : | ||||
|         BaseRvAdapter.BaseViewHolder<HistoryData, LayoutItemHistoryBinding>(binding) { | ||||
|         override fun bindView(data: HistoryData) { | ||||
|             binding.tvTime.text = formatTime(data.time) | ||||
|             binding.tvSensor.text = data.sensor | ||||
|         } | ||||
| 
 | ||||
|         private fun formatTime(time: Long): CharSequence? { | ||||
|             return DateUtils.formatHistoryTime(time) | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): HViewHolder { | ||||
|         val binding = | ||||
|             LayoutItemHistoryBinding.inflate(LayoutInflater.from(parent.context), parent, false) | ||||
|         return HViewHolder(binding) | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,32 @@ | ||||
| package com.yinuo.safetywatcher.watcher.adapter | ||||
| 
 | ||||
| import android.view.LayoutInflater | ||||
| import android.view.ViewGroup | ||||
| import com.yinuo.safetywatcher.databinding.LayoutItemHistoryBinding | ||||
| import com.yinuo.safetywatcher.databinding.LayoutItemWarnBinding | ||||
| import com.yinuo.safetywatcher.watcher.base.BaseRvAdapter | ||||
| import com.yinuo.safetywatcher.watcher.bean.HistoryData | ||||
| import com.yinuo.safetywatcher.watcher.bean.WarnData | ||||
| import com.yinuo.safetywatcher.watcher.utils.DateUtils | ||||
| 
 | ||||
| class WarnDataAdapter : | ||||
|     BaseRvAdapter<WarnData, LayoutItemWarnBinding, WarnDataAdapter.WViewHolder>() { | ||||
| 
 | ||||
|     class WViewHolder(val binding: LayoutItemWarnBinding) : | ||||
|         BaseRvAdapter.BaseViewHolder<WarnData, LayoutItemWarnBinding>(binding) { | ||||
|         override fun bindView(data: WarnData) { | ||||
|             binding.tvTime.text = formatTime(data.time) | ||||
|             binding.tvSensor.text = data.error | ||||
|         } | ||||
| 
 | ||||
|         private fun formatTime(time: Long): CharSequence? { | ||||
|             return DateUtils.formatHistoryTime(time) | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): WViewHolder { | ||||
|         val binding = | ||||
|             LayoutItemWarnBinding.inflate(LayoutInflater.from(parent.context), parent, false) | ||||
|         return WViewHolder(binding) | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,3 @@ | ||||
| package com.yinuo.safetywatcher.watcher.bean | ||||
| 
 | ||||
| data class HistoryData(val time:Long, val sensor:String) | ||||
| @ -0,0 +1,3 @@ | ||||
| package com.yinuo.safetywatcher.watcher.bean | ||||
| 
 | ||||
| data class WarnData(val time:Long, val error:String) | ||||
| @ -0,0 +1,46 @@ | ||||
| package com.yinuo.safetywatcher.watcher.ui | ||||
| 
 | ||||
| import android.view.View | ||||
| import androidx.recyclerview.widget.LinearLayoutManager | ||||
| import com.yinuo.safetywatcher.R | ||||
| import com.yinuo.safetywatcher.databinding.ActivityHistoryVideoBinding | ||||
| import com.yinuo.safetywatcher.databinding.ActivityWarndataBinding | ||||
| import com.yinuo.safetywatcher.watcher.adapter.HistoryDataAdapter | ||||
| import com.yinuo.safetywatcher.watcher.adapter.WarnDataAdapter | ||||
| import com.yinuo.safetywatcher.watcher.base.BaseActivity | ||||
| import com.yinuo.safetywatcher.watcher.bean.HistoryData | ||||
| import com.yinuo.safetywatcher.watcher.bean.WarnData | ||||
| import com.yinuo.safetywatcher.watcher.view.CommonTopBar | ||||
| 
 | ||||
| class HistoryVideoActivity : BaseActivity() { | ||||
| 
 | ||||
|     private val mBinding: ActivityHistoryVideoBinding by lazy { | ||||
|         ActivityHistoryVideoBinding.inflate(layoutInflater) | ||||
|     } | ||||
| 
 | ||||
|     override fun onOptionClick(type: Int, target: View) { | ||||
|         if (0 == type) { | ||||
| 
 | ||||
|         } else if (1 == type) { | ||||
| 
 | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     override fun getOptions(): List<CommonTopBar.Option>? { | ||||
|         val ops = mutableListOf<CommonTopBar.Option>() | ||||
|         ops.add(CommonTopBar.Option(0, getString(R.string.search))) | ||||
|         ops.add(CommonTopBar.Option(1, getString(R.string.export))) | ||||
|         return ops | ||||
|     } | ||||
| 
 | ||||
|     override fun getTopBarTitle(): String? { | ||||
|         return getString(R.string.history_video) | ||||
|     } | ||||
| 
 | ||||
|     override fun generateContentView(): View { | ||||
|         return mBinding.root | ||||
|     } | ||||
| 
 | ||||
|     override fun initView() { | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,16 @@ | ||||
| package com.yinuo.safetywatcher.watcher.utils | ||||
| 
 | ||||
| import java.text.SimpleDateFormat | ||||
| import java.util.Locale | ||||
| 
 | ||||
| object DateUtils { | ||||
|     private val dataFormat = SimpleDateFormat("yyyy/MM/dd HH:mm:ss", Locale.ROOT) | ||||
| 
 | ||||
|     fun formatHistoryTime(time: Long): String? { | ||||
|         return dataFormat.format(time) | ||||
|     } | ||||
| 
 | ||||
|     fun formatTime(pattern: String, time: Long): String? { | ||||
|         return SimpleDateFormat(pattern, Locale.ROOT).format(time) | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,10 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||||
|     android:layout_width="match_parent" | ||||
|     android:layout_height="match_parent"> | ||||
| 
 | ||||
|     <androidx.recyclerview.widget.RecyclerView | ||||
|         android:id="@+id/rv_data" | ||||
|         android:layout_width="match_parent" | ||||
|         android:layout_height="wrap_content"/> | ||||
| </LinearLayout> | ||||
| @ -0,0 +1,23 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||||
|     android:orientation="horizontal" | ||||
|     android:layout_width="match_parent" | ||||
|     android:gravity="center_vertical" | ||||
|     android:layout_height="@dimen/_108dp" | ||||
|     android:paddingStart="@dimen/_172dp"> | ||||
| 
 | ||||
|     <TextView | ||||
|         android:id="@+id/tv_time" | ||||
|         android:layout_width="wrap_content" | ||||
|         android:layout_height="wrap_content" | ||||
|         android:textColor="@color/white" | ||||
|         android:textSize="@dimen/_30dp"/> | ||||
| 
 | ||||
|     <TextView | ||||
|         android:id="@+id/tv_sensor" | ||||
|         android:layout_width="wrap_content" | ||||
|         android:layout_height="wrap_content" | ||||
|         android:layout_marginStart="@dimen/_201dp" | ||||
|         android:textColor="@color/white" | ||||
|         android:textSize="@dimen/_30dp"/> | ||||
| </LinearLayout> | ||||
| @ -0,0 +1,23 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||||
|     android:orientation="horizontal" | ||||
|     android:layout_width="match_parent" | ||||
|     android:gravity="center_vertical" | ||||
|     android:layout_height="@dimen/_108dp" | ||||
|     android:paddingStart="@dimen/_172dp"> | ||||
| 
 | ||||
|     <TextView | ||||
|         android:id="@+id/tv_time" | ||||
|         android:layout_width="wrap_content" | ||||
|         android:layout_height="wrap_content" | ||||
|         android:textColor="@color/color_error" | ||||
|         android:textSize="@dimen/_30dp"/> | ||||
| 
 | ||||
|     <TextView | ||||
|         android:id="@+id/tv_sensor" | ||||
|         android:layout_width="wrap_content" | ||||
|         android:layout_height="wrap_content" | ||||
|         android:layout_marginStart="@dimen/_201dp" | ||||
|         android:textColor="@color/color_error" | ||||
|         android:textSize="@dimen/_30dp"/> | ||||
| </LinearLayout> | ||||
					Loading…
					
					
				
		Reference in New Issue