diff --git a/app/src/main/java/com/sw/inbound/ui/page/PurchaseOrderScreen.kt b/app/src/main/java/com/sw/inbound/ui/page/PurchaseOrderScreen.kt index dfee844..a48ee5d 100644 --- a/app/src/main/java/com/sw/inbound/ui/page/PurchaseOrderScreen.kt +++ b/app/src/main/java/com/sw/inbound/ui/page/PurchaseOrderScreen.kt @@ -85,7 +85,7 @@ fun PurchaseOrderScreen( val isMoreLoading by viewModel.isMoreLoading.collectAsState() var pageNum by remember { mutableIntStateOf(1) } val lifecycleOwner = LocalLifecycleOwner.current - + val first = viewModel.firstOperate.collectAsState() DisposableEffect(lifecycleOwner) { val observer = LifecycleEventObserver { _, event -> @@ -132,6 +132,10 @@ fun PurchaseOrderScreen( start = 30.dp, end = 30.dp, top = 30.dp, bottom = 90.dp ) ) { + if (first.value) { + viewModel.updateFirstState(false) + return@Box + } if (products.isEmpty()) { PurchaseEmptyItem() } else { diff --git a/app/src/main/java/com/sw/inbound/viewmodel/PurchaseOrderViewModel.kt b/app/src/main/java/com/sw/inbound/viewmodel/PurchaseOrderViewModel.kt index c37f2ab..fe4561c 100644 --- a/app/src/main/java/com/sw/inbound/viewmodel/PurchaseOrderViewModel.kt +++ b/app/src/main/java/com/sw/inbound/viewmodel/PurchaseOrderViewModel.kt @@ -1,5 +1,7 @@ package com.sw.inbound.viewmodel +import android.os.Handler +import android.os.Looper import com.sw.inbound.model.response.SupplierInfo import com.sw.inbound.repository.RemoteRepository import dagger.hilt.android.lifecycle.HiltViewModel @@ -21,6 +23,13 @@ class PurchaseOrderViewModel @Inject constructor( */ private val _supplierList = MutableStateFlow>(emptyList()) val supplierList: StateFlow> = _supplierList + private val _firstOperate = MutableStateFlow(true) + val firstOperate:StateFlow = _firstOperate + + fun updateFirstState(state: Boolean) { + _firstOperate.value = state + } + /** * 获取采购订单-供应商列表 */ @@ -29,7 +38,9 @@ class PurchaseOrderViewModel @Inject constructor( launch { updateMoreLoading(true) val response = repository.getReceiveList(pageNum, pageSize) - updateMoreLoading(false) + Handler(Looper.getMainLooper()).postDelayed({ + updateMoreLoading(false) + }, 1000) if (parseResponse(response)) { response.result?.let { updateCanLoadMore(it.size >= pageSize)