diff --git a/app/build.gradle b/app/build.gradle index 5d91a8d..970a491 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,7 +26,7 @@ android { testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" multiDexEnabled true - buildConfigField "String", "BASE_URL", "\"http://10.190.183.37:80\"" + buildConfigField "String", "BASE_URL", "\"http://10.190.183.37/\"" javaCompileOptions { annotationProcessorOptions { diff --git a/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt b/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt index 59df495..984bcd1 100644 --- a/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt +++ b/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt @@ -2,7 +2,6 @@ package com.project.survey.logic.viewmodel import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData -import com.project.survey.logic.bean.HahaReq import com.project.survey.model.ProjectBean import com.project.survey.network.RetrofitClient @@ -34,17 +33,12 @@ class ProjectViewModel : BaseViewModel() { /** * 获取流程审批列表 */ - fun fetchWorkTask(projectId: String, type: String, userName: String? = null, page: Int = 1) { + fun fetchWorkTask(projectId: String, type: String, page: Int = 1) { launch { - val res = api.fetchWorkTask(projectId, type, "", page) - if (res.success){ + val res = api.fetchWorkTask(projectId, type, page) + if (res.success) { _workTaskListResponse.postValue(res.data) } } } - fun fetchWorkTaskBody(projectId: String, type: String, userName: String? = null, page: Int = 1) { - launch { - val res = api.fetchWorkTaskBody(projectId, HahaReq(type, "", page)) - } - } } \ No newline at end of file diff --git a/app/src/main/java/com/project/survey/model/ApprovalBean.kt b/app/src/main/java/com/project/survey/model/ApprovalBean.kt index 8f3ab5e..5786473 100644 --- a/app/src/main/java/com/project/survey/model/ApprovalBean.kt +++ b/app/src/main/java/com/project/survey/model/ApprovalBean.kt @@ -1,5 +1,19 @@ package com.project.survey.model data class ApprovalBean( - val type: String + val badges: Badge, + val data: ApprovalData +) + +data class Badge( + val PI_PREAPPROV: Int, + val PI_APPROVED: Int, + val PI_INFORMIEREN: Int, + val PI_DELAY: Int, + val PI_OWNER: Int +) + +data class ApprovalData( + val rows: List, + val totalCount: Int ) \ No newline at end of file diff --git a/app/src/main/java/com/project/survey/network/Api.kt b/app/src/main/java/com/project/survey/network/Api.kt index 4998d94..a31d1dd 100644 --- a/app/src/main/java/com/project/survey/network/Api.kt +++ b/app/src/main/java/com/project/survey/network/Api.kt @@ -1,13 +1,12 @@ package com.project.survey.network -import com.project.survey.logic.bean.HahaReq import com.project.survey.model.LoginBean import com.project.survey.model.ProjectBean -import retrofit2.http.Body import retrofit2.http.Field import retrofit2.http.FormUrlEncoded import retrofit2.http.GET import retrofit2.http.Header +import retrofit2.http.Headers import retrofit2.http.POST import retrofit2.http.Query @@ -16,7 +15,7 @@ interface Api { /** * 登录 */ - @GET("/je/personInfo/externalEntry") + @GET("je/personInfo/externalEntry") suspend fun login( @Query("account") account: String, @Query("password") password: String @@ -25,7 +24,7 @@ interface Api { /** * 外部用户获取验证码 */ - @GET("/je/personInfo/sendSms") + @GET("je/personInfo/sendSms") suspend fun fetchExternalPersonSMSCode( @Query("account") account: String, @Query("password") password: String @@ -34,7 +33,7 @@ interface Api { /** * 外部用户登录 */ - @GET("/je/personInfo/externalEntry") + @GET("je/personInfo/externalEntry") suspend fun externalPersonLogin( @Query("account") account: String, @Query("password") password: String, @@ -44,7 +43,7 @@ interface Api { /** * 获取用户可访问的所有项目的信息 */ - @GET("/je/project/getAllProjectIDByAccount") + @GET("je/project/getAllProjectIDByAccount") suspend fun getAllProjectIDByAccount( @Query("account") account: String ): HttpResult> @@ -69,21 +68,16 @@ interface Api { /** * 获取流程审批列表 */ + @Headers("usePD:false") @FormUrlEncoded - @POST("/je/workflow/currentUserTask/getTask") + @POST("je/workflow/currentUserTask/getTask") suspend fun fetchWorkTask( @Header("Projectid") projectId: String, @Field("type") type: String, - @Field("userName") userName: String = "", +// @Field("userName") userName: String = "", @Field("page") page: Int, @Field("limit") limit: Int = 30, ): HttpResult - @POST("/je/workflow/currentUserTask/getTask") - suspend fun fetchWorkTaskBody( - @Header("Projectid") projectId: String, - @Body requestBody: HahaReq - ): HttpResult - } \ No newline at end of file diff --git a/app/src/main/java/com/project/survey/network/RetrofitClient.kt b/app/src/main/java/com/project/survey/network/RetrofitClient.kt index e0107c8..8d081b7 100644 --- a/app/src/main/java/com/project/survey/network/RetrofitClient.kt +++ b/app/src/main/java/com/project/survey/network/RetrofitClient.kt @@ -5,6 +5,7 @@ import com.bingce.http.HttpsTrustUtil import com.project.survey.BuildConfig import com.project.survey.constants.SPConstants import com.project.survey.util.SPUtils +import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.OkHttpClient import okhttp3.logging.HttpLoggingInterceptor import retrofit2.Retrofit @@ -37,19 +38,46 @@ object RetrofitClient { .connectTimeout(60L, TimeUnit.SECONDS) .readTimeout(60L, TimeUnit.SECONDS) .writeTimeout(60L, TimeUnit.SECONDS) + .addInterceptor { chain -> + //获取request + val request = chain.request() + //从request中获取原有的HttpUrl实例oldHttpUrl + val oldHttpUrl = request.url + //获取request的创建者builder + val builder = request.newBuilder() + //从request中获取headers + val headerValues = request.headers("usePD") + if (headerValues.isNotEmpty()){ + builder.removeHeader("pd") + } else { + builder.addHeader("pd", "jecloud-gcclzhglpt") + } + val token = SPUtils.getString(SPConstants.TOKEN) ?: "" + builder.removeHeader("Authorization") + if (token.isNotBlank()) { + builder.addHeader("Authorization", token) + } + + val baseURL = BuildConfig.BASE_URL.toHttpUrlOrNull()!! + //重建新的HttpUrl,需要重新设置的url部分 + val newHttpUrl = oldHttpUrl.newBuilder() + .scheme(baseURL.scheme) //http协议如:http或者https + .host(baseURL.host) //主机地址 + .port(baseURL.port) //端口 + .build() + //获取处理后的新newRequest + val newRequest = builder.url(newHttpUrl).build() + return@addInterceptor chain.proceed(newRequest) + } .addInterceptor { chain -> val token = SPUtils.getString(SPConstants.TOKEN) ?: "" - val originalRequest = chain.request() - val updateRequest = originalRequest.newBuilder().apply { - addHeader("pd", "jecloud-gcclzhglpt") + val builder = chain.request().newBuilder().apply { removeHeader("Authorization") - if (BuildConfig.DEBUG) - LogUtils.d(token) if (token.isNotBlank()) { addHeader("Authorization", token) } } - return@addInterceptor chain.proceed(updateRequest.build()) + return@addInterceptor chain.proceed(builder.build()) } .addInterceptor(HttpLoggingInterceptor().apply { level = if (BuildConfig.DEBUG) diff --git a/app/src/main/java/com/project/survey/ui/approval/ApprovalActivity.kt b/app/src/main/java/com/project/survey/ui/approval/ApprovalActivity.kt index fa19f7c..8a6b960 100644 --- a/app/src/main/java/com/project/survey/ui/approval/ApprovalActivity.kt +++ b/app/src/main/java/com/project/survey/ui/approval/ApprovalActivity.kt @@ -1,7 +1,6 @@ package com.project.survey.ui.approval import androidx.activity.viewModels -import com.project.survey.R import com.project.survey.constants.SPConstants import com.project.survey.ui.base.BaseBindingActivity import com.project.survey.databinding.ActivityApprovalBinding @@ -68,17 +67,20 @@ class ApprovalActivity : BaseBindingActivity() { viewModel.workTaskListResponse.observe(this) { adapter.submitList(emptyList()) } - if (type == PI_PREAPPROV) { - viewModel.fetchWorkTask(SPUtils.getString(SPConstants.PROJECT_ID) ?: "", type) - } else { - viewModel.fetchWorkTaskBody(SPUtils.getString(SPConstants.PROJECT_ID) ?: "", type) - } + viewModel.fetchWorkTask(SPUtils.getString(SPConstants.PROJECT_ID) ?: "", type) +// if (type == PI_PREAPPROV) { +// viewModel.fetchWorkTask(SPUtils.getString(SPConstants.PROJECT_ID) ?: "", type) +// } else if(type == PI_APPROVED) { +// EasyHttpUtil.post("je/workflow/currentUserTask/getTask", SPUtils.getString(SPConstants.PROJECT_ID) ?: "", PI_APPROVED) +// } else { +// EasyHttpUtil.get("je/workflow/currentUserTask/getTask") +// } } override fun initListener() { adapter.setOnItemClickListener { _, _, position -> adapter.getItem(position)?.let { bean -> - toast("item${bean.type}") + toast("item${bean}") } } } diff --git a/app/src/main/java/com/project/survey/ui/approval/ApprovalInitiatedFragment.kt b/app/src/main/java/com/project/survey/ui/approval/ApprovalInitiatedFragment.kt index 1581866..da93d4e 100644 --- a/app/src/main/java/com/project/survey/ui/approval/ApprovalInitiatedFragment.kt +++ b/app/src/main/java/com/project/survey/ui/approval/ApprovalInitiatedFragment.kt @@ -27,11 +27,11 @@ class ApprovalInitiatedFragment : BaseFragmentBinding() } override fun initData() { - val dataList = mutableListOf() - for (i in 0 until 3) { - dataList.add(ApprovalBean("")) - } - adapter.refreshData(dataList) +// val dataList = mutableListOf() +// for (i in 0 until 3) { +// dataList.add(ApprovalBean("")) +// } +// adapter.refreshData(dataList) } private fun initAdapter() { diff --git a/app/src/main/java/com/project/survey/ui/approval/ApprovalProcessedFragment.kt b/app/src/main/java/com/project/survey/ui/approval/ApprovalProcessedFragment.kt index 2c025dd..2c19f82 100644 --- a/app/src/main/java/com/project/survey/ui/approval/ApprovalProcessedFragment.kt +++ b/app/src/main/java/com/project/survey/ui/approval/ApprovalProcessedFragment.kt @@ -31,11 +31,11 @@ class ApprovalProcessedFragment : BaseFragmentBinding() } override fun initData() { - val dataList = mutableListOf() - for (i in 0 until 3) { - dataList.add(ApprovalBean("")) - } - adapter.refreshData(dataList) +// val dataList = mutableListOf() +// for (i in 0 until 3) { +// dataList.add(ApprovalBean("")) +// } +// adapter.refreshData(dataList) } private fun initAdapter() { diff --git a/app/src/main/java/com/project/survey/ui/approval/ApprovalWaitFragment.kt b/app/src/main/java/com/project/survey/ui/approval/ApprovalWaitFragment.kt index c734a97..7aeffea 100644 --- a/app/src/main/java/com/project/survey/ui/approval/ApprovalWaitFragment.kt +++ b/app/src/main/java/com/project/survey/ui/approval/ApprovalWaitFragment.kt @@ -32,11 +32,11 @@ class ApprovalWaitFragment : BaseFragmentBinding() { } override fun initData() { - val dataList = mutableListOf() - for (i in 0 until 3) { - dataList.add(ApprovalBean("")) - } - adapter.refreshData(dataList) +// val dataList = mutableListOf() +// for (i in 0 until 3) { +// dataList.add(ApprovalBean("")) +// } +// adapter.refreshData(dataList) } private fun initAdapter() {