【问题标题】:Retrieve MultiDimensional Array JSON in Kotlin Android在 Kotlin Android 中检索多维数组 JSON
【发布时间】:2021-06-19 03:48:52
【问题描述】:

我想得到这样的响应(如果用户搜索特定的关键字):

VendListRequest(row=50, page=1, query=[["vendorName", contains, "erlangga"],["status","true"]])

但我无法得到那种回应。 我有这样的数据类:

data class VendListRequest (
        val row : Int,
        val page : Int,
        val query : List<List<String>>
)

它只能像这样检索响应:

(row=50, page=1, query=[["vendorName", contains, "erlangga"])

我想要的情况如下:

  1. 当用户没有在搜索框输入任何关键字时,会出现列表,调试查询响应如下:

    VendListRequest(row=50, page=1, query=[["status", "true"]])

  2. 当用户在搜索框输入任意关键字时,列表会出现,调试查询响应如下:

    VendListRequest(row=50, page=1, query=[["vendorName", contains, "erlangga"],["status", "true"]])

这是我在 kotlin 类中检索数据的代码:

 override fun getVendorList(row: Int, page: Int, vendorName: String?, query: String?, status: String?, isLoadMore: Boolean): Observable<SearchListResponse<VendorItem>> {
            var searchList: List<List<String>> = emptyList()
            if (!vendorName.isNullOrEmpty() && !query.isNullOrEmpty()) {
                searchList = listOf(status, EQUALS, true)
            }
    //___________________________________________________________________
    }

【问题讨论】:

    标签: json kotlin multidimensional-array retrofit2 rx-java2


    【解决方案1】:

    我终于找到了答案。 这就是我所做的:

    1. 我在存储库中添加了一个新参数

    之前:

    fun getVendorList(row: Int, page: Int, vendorName: String?, query: String?, isLoadMore: Boolean) : Observable<Response<VendorItem>>
    

    之后:

    fun getVendorList(row: Int, page: Int, vendorName: String?, query: String?, status: String, isLoadMore: Boolean) : Observable<Response<VendorItem>>
    
    1. 新建一个List变量“statusList”并将其添加到模型类中,之后我们只需要调用REST API即可。

    val vendListReq= VendListReq(row, page, searchList + statusList)

    然后调用它:

    .concatMap { remRegData.getVendList(it, vendListReq) }

    【讨论】:

      猜你喜欢
      • 2014-11-08
      • 2019-03-23
      • 2015-10-20
      • 1970-01-01
      • 2022-11-07
      • 2017-10-07
      • 1970-01-01
      • 2014-09-09
      • 2016-12-25
      相关资源
      最近更新 更多