Ai列表的游客模式优化

This commit is contained in:
2025-09-01 16:14:53 +08:00
parent 2e176605f7
commit 337bda46a2
3 changed files with 27 additions and 6 deletions

View File

@@ -475,8 +475,13 @@ fun AgentCard2(viewModel: AgentViewModel,agentItem: AgentItem,navController: Nav
)
.clickable {
if (DebounceUtils.simpleDebounceClick(lastClickTime, 500L) {
viewModel.createSingleChat(agentItem.openId)
viewModel.goToChatAi(agentItem.openId, navController = navController)
// 检查游客模式,如果是游客则跳转登录
if (GuestLoginCheckOut.needLogin(GuestLoginCheckOutScene.CHAT_WITH_AGENT)) {
navController.navigate(NavigationRoute.Login.route)
} else {
viewModel.createSingleChat(agentItem.openId)
viewModel.goToChatAi(agentItem.openId, navController = navController)
}
}) {
lastClickTime = System.currentTimeMillis()
}

View File

@@ -27,9 +27,12 @@ import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.aiosman.ravenow.GuestLoginCheckOut
import com.aiosman.ravenow.GuestLoginCheckOutScene
import com.aiosman.ravenow.LocalAppTheme
import com.aiosman.ravenow.LocalNavController
import com.aiosman.ravenow.R
import com.aiosman.ravenow.ui.NavigationRoute
import com.aiosman.ravenow.ui.composables.AgentCard
@OptIn(ExperimentalMaterialApi::class)
@@ -117,8 +120,13 @@ fun HotAgent() {
AgentCard(
agentEntity = agentItem,
onClick = {
model.createSingleChat(agentItem.openId)
model.goToChatAi(agentItem.openId,navController)
// 检查游客模式,如果是游客则跳转登录
if (GuestLoginCheckOut.needLogin(GuestLoginCheckOutScene.CHAT_WITH_AGENT)) {
navController.navigate(NavigationRoute.Login.route)
} else {
model.createSingleChat(agentItem.openId)
model.goToChatAi(agentItem.openId,navController)
}
},
onAvatarClick = {
model.goToProfile(agentItem.openId, navController)

View File

@@ -30,9 +30,12 @@ import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.paging.compose.collectAsLazyPagingItems
import androidx.paging.LoadState
import com.aiosman.ravenow.GuestLoginCheckOut
import com.aiosman.ravenow.GuestLoginCheckOutScene
import com.aiosman.ravenow.LocalAppTheme
import com.aiosman.ravenow.LocalNavController
import com.aiosman.ravenow.R
import com.aiosman.ravenow.ui.NavigationRoute
import com.aiosman.ravenow.ui.composables.AgentCard
import com.aiosman.ravenow.ui.index.tabs.message.tab.GroupChatItem
import com.aiosman.ravenow.ui.index.tabs.message.tab.GroupChatListViewModel
@@ -108,8 +111,13 @@ fun MineAgent() {
AgentCard(
agentEntity = agent,
onClick = {
model.createSingleChat(agent.openId)
model.goToChatAi(agent.openId,navController)
// 检查游客模式,如果是游客则跳转登录
if (GuestLoginCheckOut.needLogin(GuestLoginCheckOutScene.CHAT_WITH_AGENT)) {
navController.navigate(NavigationRoute.Login.route)
} else {
model.createSingleChat(agent.openId)
model.goToChatAi(agent.openId,navController)
}
},
onAvatarClick = {
model.goToProfile(agent.openId, navController)