diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/GlobalData.kt b/app/src/main/java/com/shuwei/intelligent/shelves/GlobalData.kt index fd9d10d..b9a5a4b 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/GlobalData.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/GlobalData.kt @@ -20,7 +20,7 @@ object GlobalData { // const val LOCAL_BASE_URL = "http://192.168.1.201:14801" const val LOCAL_BASE_URL = "http://192.168.10.101:24801" const val TEST_BASE_URL = "https://dev.yixiong-tech.com:8081" - const val PROD_BASE_URL = "https://api.dm.yixiong-tech.com:8443" + const val PROD_BASE_URL = "https://platform-api.uat.shuziweidao.com" } diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/activity/ShelfV2Activity.kt b/app/src/main/java/com/shuwei/intelligent/shelves/activity/ShelfV2Activity.kt index 2929895..565e44c 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/activity/ShelfV2Activity.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/activity/ShelfV2Activity.kt @@ -21,6 +21,7 @@ import com.shuwei.intelligent.shelves.base.BaseActivity import com.shuwei.intelligent.shelves.databinding.ActivityShelfV2Binding import com.shuwei.intelligent.shelves.model.CleanPackageOption import com.shuwei.intelligent.shelves.model.MealPackageOption +import com.shuwei.intelligent.shelves.model.PageData import com.shuwei.intelligent.shelves.model.ShelfModelV2 import com.shuwei.intelligent.shelves.model.SendWeightEvent import com.shuwei.intelligent.shelves.net.Loading @@ -280,7 +281,7 @@ class ShelfV2Activity : BaseActivity() { binding.include?.root?.gone() binding.root.postDelayed({ Loading.dismiss() }, 200) @Suppress("UNCHECKED_CAST") - val items = data.data as? List + val items = (data.data as? PageData<*>)?.list as? List if (items.isNullOrEmpty()) { loadEmptyView(); return } @@ -295,7 +296,7 @@ class ShelfV2Activity : BaseActivity() { binding.include?.root?.gone() binding.root.postDelayed({ Loading.dismiss() }, 200) @Suppress("UNCHECKED_CAST") - val items = data.data as? List + val items = (data.data as? PageData<*>)?.list as? List if (items.isNullOrEmpty()) { loadEmptyView(); return } diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/model/CleanPackageOption.kt b/app/src/main/java/com/shuwei/intelligent/shelves/model/CleanPackageOption.kt index dd4b880..7a6bcf1 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/model/CleanPackageOption.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/model/CleanPackageOption.kt @@ -21,6 +21,14 @@ data class CleanPackageOption( val needQtyKg: BigDecimal? = null, /** 保质期至,格式 yyyy-MM-dd */ val expiryDate: String? = null, + /** 申领时间,格式 yyyy-MM-dd HH:mm:ss,仅订单有 */ + val applyTime: String? = null, + /** 数据来源:1=净菜订单,2=食材库 */ + val source: Short? = null, + /** 净菜类型 id,仅订单有 */ + val vegTypeId: Long? = null, + /** 食材库 id,source=2 时有值,sync 时回传 materId */ + val materId: Long? = null, var isSelected: Boolean = false ) { /** 将净菜包选项转换为格口记录 */ diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/model/MealPackageOption.kt b/app/src/main/java/com/shuwei/intelligent/shelves/model/MealPackageOption.kt index 4bcef32..9f5f953 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/model/MealPackageOption.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/model/MealPackageOption.kt @@ -21,6 +21,8 @@ data class MealPackageOption( val needQtyKg: BigDecimal? = null, /** 保质期至,格式 yyyy-MM-dd(包装完成后有值) */ val expiryDate: String? = null, + /** 数据来源:1=净菜订单,2=餐品库 */ + val source: Short? = null, var isSelected: Boolean = false ) { /** 将餐品净菜包选项转换为格口记录 */ diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/net/ApiServiceV2.kt b/app/src/main/java/com/shuwei/intelligent/shelves/net/ApiServiceV2.kt index 63912c0..b81cb80 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/net/ApiServiceV2.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/net/ApiServiceV2.kt @@ -3,6 +3,8 @@ package com.shuwei.intelligent.shelves.net import com.shuwei.intelligent.shelves.model.CabinetInitResult import com.shuwei.intelligent.shelves.model.CleanPackageOption import com.shuwei.intelligent.shelves.model.MealPackageOption +import com.shuwei.intelligent.shelves.model.PageData +import com.shuwei.intelligent.shelves.model.PageOptionsReq import com.shuwei.intelligent.shelves.model.SyncBody import retrofit2.http.Body import retrofit2.http.GET @@ -24,21 +26,23 @@ interface ApiServiceV2 { /** * 4.2.1 净菜包下拉列表(itemType=1) + * POST + JSON Body 分页请求,返回分页结构 PageData */ - @GET + @POST suspend fun getCleanPackageOptions( @Url url: String = UrlConfig.CLEAN_PACKAGE_OPTIONS, - @Query("keyword") keyword: String? = null - ): RespData> + @Body body: PageOptionsReq + ): RespData> /** * 4.2.2 餐品净菜包下拉列表(itemType=2) + * POST + JSON Body 分页请求,返回分页结构 PageData */ - @GET + @POST suspend fun getMealPackageOptions( @Url url: String = UrlConfig.MEAL_PACKAGE_OPTIONS, - @Query("keyword") keyword: String? = null - ): RespData> + @Body body: PageOptionsReq + ): RespData> /** * 4.3 全量同步整柜数据(定时上报) diff --git a/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModelV2.kt b/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModelV2.kt index 1e9adeb..f18bfe3 100644 --- a/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModelV2.kt +++ b/app/src/main/java/com/shuwei/intelligent/shelves/net/NetViewModelV2.kt @@ -6,6 +6,7 @@ import androidx.lifecycle.viewModelScope import com.shuwei.intelligent.shelves.model.CabinetInitResult import com.shuwei.intelligent.shelves.model.CleanPackageOption import com.shuwei.intelligent.shelves.model.MealPackageOption +import com.shuwei.intelligent.shelves.model.PageOptionsReq import com.shuwei.intelligent.shelves.model.SyncBody import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow @@ -47,7 +48,9 @@ class NetViewModelV2 : ViewModel() { viewModelScope.launch { _cleanPackageOptionsUiState.value = UiState.Loading runCatching { - val response = apiServiceV2.getCleanPackageOptions(keyword = keyword) + val response = apiServiceV2.getCleanPackageOptions( + body = PageOptionsReq(pageNum = 1, pageSize = 50, keyword = keyword) + ) if (response.isSuccess()) { _cleanPackageOptionsUiState.value = UiState.Success(response) } else { @@ -64,7 +67,9 @@ class NetViewModelV2 : ViewModel() { viewModelScope.launch { _mealPackageOptionsUiState.value = UiState.Loading runCatching { - val response = apiServiceV2.getMealPackageOptions(keyword = keyword) + val response = apiServiceV2.getMealPackageOptions( + body = PageOptionsReq(pageNum = 1, pageSize = 50, keyword = keyword) + ) if (response.isSuccess()) { _mealPackageOptionsUiState.value = UiState.Success(response) } else {