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 { .clickable {
if (DebounceUtils.simpleDebounceClick(lastClickTime, 500L) { 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() 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.text.font.FontWeight
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp 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.LocalAppTheme
import com.aiosman.ravenow.LocalNavController import com.aiosman.ravenow.LocalNavController
import com.aiosman.ravenow.R import com.aiosman.ravenow.R
import com.aiosman.ravenow.ui.NavigationRoute
import com.aiosman.ravenow.ui.composables.AgentCard import com.aiosman.ravenow.ui.composables.AgentCard
@OptIn(ExperimentalMaterialApi::class) @OptIn(ExperimentalMaterialApi::class)
@@ -117,8 +120,13 @@ fun HotAgent() {
AgentCard( AgentCard(
agentEntity = agentItem, agentEntity = agentItem,
onClick = { 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 = { onAvatarClick = {
model.goToProfile(agentItem.openId, navController) 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.compose.ui.unit.sp
import androidx.paging.compose.collectAsLazyPagingItems import androidx.paging.compose.collectAsLazyPagingItems
import androidx.paging.LoadState import androidx.paging.LoadState
import com.aiosman.ravenow.GuestLoginCheckOut
import com.aiosman.ravenow.GuestLoginCheckOutScene
import com.aiosman.ravenow.LocalAppTheme import com.aiosman.ravenow.LocalAppTheme
import com.aiosman.ravenow.LocalNavController import com.aiosman.ravenow.LocalNavController
import com.aiosman.ravenow.R import com.aiosman.ravenow.R
import com.aiosman.ravenow.ui.NavigationRoute
import com.aiosman.ravenow.ui.composables.AgentCard 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.GroupChatItem
import com.aiosman.ravenow.ui.index.tabs.message.tab.GroupChatListViewModel import com.aiosman.ravenow.ui.index.tabs.message.tab.GroupChatListViewModel
@@ -108,8 +111,13 @@ fun MineAgent() {
AgentCard( AgentCard(
agentEntity = agent, agentEntity = agent,
onClick = { 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 = { onAvatarClick = {
model.goToProfile(agent.openId, navController) model.goToProfile(agent.openId, navController)