|
|
@ -6,6 +6,7 @@ import androidx.activity.result.contract.ActivityResultContracts
|
|
|
|
import androidx.lifecycle.lifecycleScope
|
|
|
|
import androidx.lifecycle.lifecycleScope
|
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager
|
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager
|
|
|
|
import com.yinuo.safetywatcher.R
|
|
|
|
import com.yinuo.safetywatcher.R
|
|
|
|
|
|
|
|
import com.yinuo.safetywatcher.TestUtils
|
|
|
|
import com.yinuo.safetywatcher.databinding.ActivityQueryDataBinding
|
|
|
|
import com.yinuo.safetywatcher.databinding.ActivityQueryDataBinding
|
|
|
|
import com.yinuo.safetywatcher.watcher.ui.adapter.HistoryDataAdapter
|
|
|
|
import com.yinuo.safetywatcher.watcher.ui.adapter.HistoryDataAdapter
|
|
|
|
import com.yinuo.safetywatcher.watcher.base.BaseActivity
|
|
|
|
import com.yinuo.safetywatcher.watcher.base.BaseActivity
|
|
|
@ -15,6 +16,7 @@ import com.yinuo.safetywatcher.watcher.db.DBUtils
|
|
|
|
import com.yinuo.safetywatcher.watcher.db.entity.Gas
|
|
|
|
import com.yinuo.safetywatcher.watcher.db.entity.Gas
|
|
|
|
import com.yinuo.safetywatcher.watcher.utils.DateUtils
|
|
|
|
import com.yinuo.safetywatcher.watcher.utils.DateUtils
|
|
|
|
import com.yinuo.safetywatcher.watcher.ui.view.CommonTopBar
|
|
|
|
import com.yinuo.safetywatcher.watcher.ui.view.CommonTopBar
|
|
|
|
|
|
|
|
import com.yinuo.safetywatcher.watcher.ui.view.CommonDialog
|
|
|
|
import kotlinx.coroutines.Dispatchers
|
|
|
|
import kotlinx.coroutines.Dispatchers
|
|
|
|
import kotlinx.coroutines.launch
|
|
|
|
import kotlinx.coroutines.launch
|
|
|
|
|
|
|
|
|
|
|
@ -24,11 +26,15 @@ class QueryDataActivity : BaseActivity() {
|
|
|
|
ActivityQueryDataBinding.inflate(layoutInflater)
|
|
|
|
ActivityQueryDataBinding.inflate(layoutInflater)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private val exportDialog by lazy {
|
|
|
|
|
|
|
|
CommonDialog(R.string.export_data_tip)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
override fun onOptionClick(type: Int, target: View) {
|
|
|
|
override fun onOptionClick(type: Int, target: View) {
|
|
|
|
if (0 == type) {
|
|
|
|
if (0 == type) {
|
|
|
|
|
|
|
|
queryData()
|
|
|
|
} else if (1 == type) {
|
|
|
|
} else if (1 == type) {
|
|
|
|
|
|
|
|
doExportData()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -154,13 +160,6 @@ class QueryDataActivity : BaseActivity() {
|
|
|
|
var gasValue = 0.0
|
|
|
|
var gasValue = 0.0
|
|
|
|
var startGas: Gas? = null
|
|
|
|
var startGas: Gas? = null
|
|
|
|
list.forEachIndexed { index, gas ->
|
|
|
|
list.forEachIndexed { index, gas ->
|
|
|
|
// 不能整除的时候,最后一个特殊处理
|
|
|
|
|
|
|
|
if (list.size - 1 == index) {
|
|
|
|
|
|
|
|
if (gasValue != 0.0) {
|
|
|
|
|
|
|
|
startGas!!.gasValue = gasValue / (list.size % step)
|
|
|
|
|
|
|
|
newMapList?.add(startGas!!)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (index % step == 0) {
|
|
|
|
if (index % step == 0) {
|
|
|
|
if (gasValue != 0.0) {
|
|
|
|
if (gasValue != 0.0) {
|
|
|
|
startGas!!.gasValue = gasValue / step
|
|
|
|
startGas!!.gasValue = gasValue / step
|
|
|
@ -171,6 +170,15 @@ class QueryDataActivity : BaseActivity() {
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
gasValue += gas.gasValue
|
|
|
|
gasValue += gas.gasValue
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// 最后一个特殊处理
|
|
|
|
|
|
|
|
if (list.size - 1 == index) {
|
|
|
|
|
|
|
|
// 不能整除的时候
|
|
|
|
|
|
|
|
val dev = if (list.size % step == 0) step else list.size % step
|
|
|
|
|
|
|
|
if (gasValue != 0.0) {
|
|
|
|
|
|
|
|
startGas!!.gasValue = gasValue / dev
|
|
|
|
|
|
|
|
newMapList?.add(startGas!!)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -187,4 +195,9 @@ class QueryDataActivity : BaseActivity() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private fun doExportData() {
|
|
|
|
|
|
|
|
exportDialog.showNow(supportFragmentManager, "export")
|
|
|
|
|
|
|
|
TestUtils.testExportExcel(this, mAdapter._data, exportDialog)
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|