package com.example.firstapp.database.service
|
|
import com.example.firstapp.database.entity.ApiResponse
|
import com.example.firstapp.database.entity.KeywordConfig
|
import com.example.firstapp.database.response.ContentResponse
|
import com.example.firstapp.database.response.DictResponse
|
import retrofit2.Retrofit
|
import retrofit2.converter.gson.GsonConverterFactory
|
import retrofit2.http.GET
|
import retrofit2.http.Query
|
|
/**
|
* API调用接口
|
*/
|
interface ApiService {
|
|
@GET("keywords")
|
suspend fun getKeywords():ApiResponse<List<KeywordConfig>> //异步挂起
|
|
@GET("cloudContent/getByType")
|
suspend fun getContentByType(@Query("type") type: String): ContentResponse
|
|
@GET("sysDict/getByDictCodeAndItemText")
|
suspend fun getDictValue(@Query("dictCode") dictCode: String, @Query("itemText") itemText: String): DictResponse
|
}
|
|
// 创建Retrofit实例(单例)
|
object RetrofitClient{
|
|
private const val BASE_URL ="http://192.168.1.213:8888/jshERP-boot/"
|
|
//添加Gson解析器,用于自动将JSON响应转换为Kotlin/Java对象
|
private val retrofit = Retrofit.Builder().baseUrl(BASE_URL).addConverterFactory(GsonConverterFactory.create()).build()
|
|
//通过动态代理技术创建ApiService接口的具体实现类
|
val apiService:ApiService = retrofit.create(ApiService::class.java)
|
|
}
|