关联用户2

This commit is contained in:
2026-05-20 16:30:24 +08:00
parent 133ea5a88b
commit 246b39ca1a
15 changed files with 254 additions and 172 deletions

View File

@@ -163,19 +163,17 @@ object ApiConfig {
val requestBuilder = chain.request().newBuilder()
val token = authToken
val langHeader = LanguageHeaderManager.getLanguageHeaderValue()
// 添加必要的请求头
requestBuilder.header("clientid", "428a8310cd442757ae699df5d894f051")
requestBuilder.header("content-language", langHeader)
// 如果有 token添加 Authorization 头
if (token.isNotBlank()) {
Log.d("ApiConfig", buildAuthorizationValue(token))
requestBuilder.header("Authorization", buildAuthorizationValue(token))
requestBuilder.header("clientid", "428a8310cd442757ae699df5d894f051")
requestBuilder.header("content-language", langHeader)
}
requestBuilder
// .header("Client-Toc", "Y")
// .header("Accept-Language", LanguageHelper.getLanguageServiceStr(BrightApp.getInstance()))
// .header("model", "Android")
// .header("X-App-Version", AppUtils.getAppVersionName())
chain.proceed(requestBuilder.build())
}

View File

@@ -8,8 +8,10 @@ import com.example.defenseapplication.bean.GetCodeBean
import bean.LoginBean
import bean.LoginRequest
import bean.RegisterRequest
import com.example.defenseapplication.bean.AddDeviceUserRequest
import com.example.defenseapplication.bean.DeleteBean
import com.example.defenseapplication.bean.DeleteDeviceUserRequest
import com.example.defenseapplication.bean.FamilyMembersBean
import com.example.defenseapplication.bean.MessageGroup
import com.example.defenseapplication.bean.SwitchFamilyRequest
import retrofit2.http.Body
@@ -104,5 +106,29 @@ interface ApiService {
@POST("/app/deleteDeviceUser")
suspend fun deleteDeviceUser(@Body request: DeleteDeviceUserRequest): GetCodeBean<Any>
/**
* 查看家庭成员表
*/
@GET("/app/familyMembers/list")
suspend fun getFamilyMembers(
@Query("createDept") createDept: Long? = null,
@Query("createBy") createBy: Long? = null,
@Query("createTime") createTime: String? = null,
@Query("updateBy") updateBy: Long? = null,
@Query("updateTime") updateTime: String? = null,
@Query("params.key.key") paramsKey: String? = null,
@Query("id") id: Long? = null,
@Query("parentId") parentId: Long? = null,
@Query("parentName") parentName: String? = null,
@Query("userId") userId: Long? = null,
@Query("status") status: String? = null
): GetCodeBean<List<FamilyMembersBean>>
/**
* 添加设备关联用户
*/
@POST("/app/addDeviceUser")
suspend fun addDeviceUser(@Body request: AddDeviceUserRequest): GetCodeBean<Any>
}

View File

@@ -0,0 +1,23 @@
package com.example.defenseapplication.utils
object DeviceUserUpdateEvent {
private val listeners = mutableListOf<DeviceUserUpdateListener>()
interface DeviceUserUpdateListener {
fun onDeviceUserUpdated()
}
fun addListener(listener: DeviceUserUpdateListener) {
if (!listeners.contains(listener)) {
listeners.add(listener)
}
}
fun removeListener(listener: DeviceUserUpdateListener) {
listeners.remove(listener)
}
fun notifyUpdate() {
listeners.forEach { it.onDeviceUserUpdated() }
}
}

View File

@@ -1,3 +1,5 @@
package com.example.defenseapplication.utils
import android.content.Context
import androidx.core.content.edit
@@ -6,7 +8,7 @@ enum class AppLanguage(val code: String) {
SIMPLIFIED_CHINESE("zh_CN"),
TRADITIONAL_CHINESE("zh_TW")
}
//语言枚举与管理器
object LanguageHeaderManager {
private const val PREF_NAME = "app_lang_pref"
private const val KEY_LANGUAGE = "selected_language"