From 5a71e5bbfa515d77ba19622cda84ba96b6541311 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A5=D0=B0=D0=BB=D0=B8=D0=BC=D0=BE=D0=B2=20=D0=A0=D1=83?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D0=BC?= Date: Wed, 15 Apr 2026 01:55:23 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D0=B3=D1=80=D1=83=D0=B7?= =?UTF-8?q?=D0=BA=D0=B0=20=D1=81=D1=82=D0=B0=D1=80=D1=8B=D1=85=20=D1=81?= =?UTF-8?q?=D0=BE=D0=BE=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../8.5/executionHistory/executionHistory.bin | Bin 8881188 -> 8881188 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes .../.gradle/8.5/fileHashes/fileHashes.bin | Bin 503741 -> 503741 bytes .../.gradle/8.5/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../8.5/fileHashes/resourceHashesCache.bin | Bin 405773 -> 409003 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../buildOutputCleanup/outputFiles.bin | Bin 1207025 -> 1207457 bytes .../chats/data/remote/api/ChatApi.kt | 1 + .../data/repository/ChatRepositoryImpl.kt | 21 ++++++++---------- .../chats/domain/repository/ChatRepository.kt | 2 +- .../chat_detail/ChatDetailScreen.kt | 18 +++++++++------ 11 files changed, 22 insertions(+), 20 deletions(-) diff --git a/client-mobile/.gradle/8.5/executionHistory/executionHistory.bin b/client-mobile/.gradle/8.5/executionHistory/executionHistory.bin index 4fed1e8508468fe679119cfa5e31748b82a017c9..96fbddba7d05d6d4e38aa0c3ac174b51e45e1741 100644 GIT binary patch delta 27147 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 F{{m1b61xBZ diff --git a/client-mobile/.gradle/8.5/executionHistory/executionHistory.lock b/client-mobile/.gradle/8.5/executionHistory/executionHistory.lock index 507246934729f7c21f5e01c15c24e31fd3acd231..3499052f7d00cc84d8d3d3a62afa7ed85868f173 100644 GIT binary patch literal 17 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 V)_>BJis0R~6RVJr6dV)H{{mdGpeO(U delta 15033 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 diff --git a/client-mobile/.gradle/8.5/fileHashes/fileHashes.lock b/client-mobile/.gradle/8.5/fileHashes/fileHashes.lock index 13e7c185bb378c52a1a5de52d1e7a193baa68978..67f399e3e6d8ff001e36ad2f7e415df4b680c693 100644 GIT binary patch literal 17 WcmZSH&R@;(a=)o00|+opS^xkml>~PH literal 17 WcmZSH&R@;(a=)o00|+qnDgyv34g>W7 diff --git a/client-mobile/.gradle/8.5/fileHashes/resourceHashesCache.bin b/client-mobile/.gradle/8.5/fileHashes/resourceHashesCache.bin index 9779b4d0f8c7d0d02611a61df736ccea46c2a435..aa72534a589a8e3b5cd1d02d4ad529211b384e67 100644 GIT binary patch delta 3073 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 W5^2K1Je)ReXhdm}Oa@5< zbEu8h7mEz#4z6#RH37?{MGHlNh7m7WxYEuwHXOa(`TX_#@jTDx<$0d-i}v~% zd)In9tTS@#Zq4{0qL><%MYb8EkqKn1i5dh$TicAr#V3Qon2cEf<8ItjQmzORd%jY4 zK9Wwgu}NmC3r*6kVn3EyMr?duE$la{zYGa8&J8^a#=Y-*rEzJb4vpQT`Lf~KM4!=q z^E^Vf>YNe#)zh;6?B?!+}_pQe#mcq;YTPC`fDAzXhal&>S zG_idr-m_?q>7bz3kEovx(=@kvvB(Cy*j#}Ff@dqy0sLqc1_LKmV~=D@E%w-Wq7fT` zkAH}O=(w*sy67EMq*E4u*MvuHP{La~u>iTh%iq{KrK8}5FK}G&Tu)#|&qYiC4(`V~ z$!(X>qp@QM@xdlCSF3Nb$*Xp4A(v|1LY`XBRboYZj;770psD{v~`Y=7k$EGEsMqFX7WyIB9&~5y}O1`2{$|`&Lq$rVi$Vozo*J3e|jpKW$n~ zsi^8-0*~4jMdO?vO!<*5Re|p8v9R|OibXz{NUwp-+Yw>^XY7~7*`Pp( zJcC1%$f2o>O*FudZ6*itjtnYAp3EX0*zbW|@K_F=MKy38S!sPbckc9&2g!Hc}Jl)S`~Z%~z44VR#uPgIgi0Gx;UbCqDXK*p*){Xg2S@tZAjST;nYl&jHp V>Ep>y<=Y|fmhNm^8UR1w{U1`tfR6wG diff --git a/client-mobile/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/client-mobile/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 2948f8a5b6bac24730c7f935be4ec6f71a9c1c76..ccbd187269bd2377d0d54bade40b8987316a23eb 100644 GIT binary patch literal 17 VcmZSf+M}~b{lVOB1~4eN4FEE}1yTS2 literal 17 VcmZSf+M}~b{lVOB1~4da0{}891ib(N diff --git a/client-mobile/.gradle/buildOutputCleanup/outputFiles.bin b/client-mobile/.gradle/buildOutputCleanup/outputFiles.bin index 27dadd937c053eafcdcf13294d00b34ea035ecd9..cf8f8f1b0f86003f7932e49467797647d2a56e8d 100644 GIT binary patch delta 1331 zcmY*Y4@?th6yLjEq1S8gYe57A2OT;wA)8Dce~g0$$zW`VQT`N%0}+FRIR|5yC{P7b zD=t<6zp2RvWef>XDG1MvsMI+|Ckk#uV1EcMu1hov))C_v&RyF}wq5eR+`ap~_kQp9 z-sc)mZJkOrUVxkkC`3a9v@RmU%_|K%Z-+hOe*8+c=!$_h6&UdB22dnJE%uwC^I2jE zVJ|vQ-S(nNWSDgZPRqeyQl0};o@2~`kcUlQG4rf&e!)=wo|LX60PDVC3@m9F*myUY zKQDzJ!0&G|n*+gN%5gH7tPog^ zSD$C~TH@ex?rvIfTFUo3&d0E;m0+fwN3>2;R1%9(N%CX`RMN6Ec{Hgl`!N3Nx*HOD z1)fTim#GD^WLbeLTyi>)G04jUAPzsf_?bwAnAdVra&TdfSD+7Ww!GL9j_%?StBC-=ej!9V>f%xnT0E&M~d5M1@;2XVK&&eEg!T`q4I$Ux%8z3Ckz z67(rH?BbI+D6r|e)ik3-8P;FJ6a&t*$;30UpZkHuJtvt^hUT9jlQi7O6F zO*M1u1v;paTj|)R+>pp~QZlQTxyV-lH}zoF%es^DpS%pEn0k}f3gmL+Yft${(GtN3 z-1HOAFM?>BZbnV>_X(L|GAlJ^aw(!Xx$Y9x)Y!l+V0Z-xa6CKEo3oiw>Dt9vVu$Kj z0QtBnj68_yl5&<{!X;I!FX?OFS@ZhTS;oG~5M%vuqQ^x4bHr*k?BM%x!*%ugWd5N22sK&R)qX`dxOKBov6T*Q8#TAo>-FNrz2qm@WrTe(ZfLUVjzl94D;5hb zElFPY`Oo#6+a&M1m=`HDDq)vRcZRshWqQPNC$6SrhoD-NKa_DV7A9U}|GPc#7H&xs zf`dqQM_}Y(`%y_31MVmkt}EbAn=Xi$#0g;jKJr@!UA1kwx=1RYh6+3B z3I(?|T8}n#)l#L!v&egLpw`>g`~&j%Agrc;lxyrnRxz;SaYCI`?p5r1Un2{JDVr|V z-z%V|&+z@^qI delta 1035 zcmYjOTWl0n7~X$&&g`6-*)zLaF0IvVrv*a|m`W7dcu5yZq&Ai{u@o%9wHm?-!GaK? z(xwn`ZHmd#N{{tH+8StkV{j( z;SHbY$9GrzKF2?~h7zGM>I7ZIaRZz4Xjd(&bYAG5LJZdpOpYmas4F{?`rL z@XU<6=K+kUvgRfU7kzt_uPR{A;aOeI%ZFun`9V44$NVz+Ar1EOVk_6nxN<$& zpuz#ZubMo97ph6ri%)DN(Zz(i;LuGz@vK&kgL}x2EpQl*-XJ9e$8M3iASrQa!2XdZqr;ki#0+w6BA z|LRGzD^@n?5l0n=V%elNK;a$y>o@IM0se7M8yBd6#XKYsvbuu!86 zI(O4v%#6zKO7?#xV0dkSfqipP8thIB4dG%?@kYM>-J`GzFNF1S8I4-~Izex}j;tfN zE*Eb_^&*N_#tnt>&sQ4(jBE%fZY-UkL4{xX)J%4Crv+&aP4e)9XTjDGw>2bDJRSp_ z{@9%sL``ZEeJAKU#?*6?sp zYj!YrVT-!J1?Ju?!U@T+PC*p$jB$K1MoyERfZtv;N|nyfNGVo~8m+QqT~Amm7>~Tg z-uOTH>@P-F5?;Z!xECz`QJWIQZFh|n!_2(A8F=9xHICCy6Jf!LZ7_aKBp0K7&yU1F{d1r??h22HI3W$6V|Lz;XS1El zn0JoAYJT%|UkWGo`{wc?m9WA&w!{MTZ3hvJlgB{aPOz;fQ7ns0GHrU?RxaK}NN)l* ZPSdA6PLu6*OC9i7Xvl}5A^-WI{{X6$i#PxP diff --git a/client-mobile/chats/data/remote/api/ChatApi.kt b/client-mobile/chats/data/remote/api/ChatApi.kt index b5535cb..3921e71 100644 --- a/client-mobile/chats/data/remote/api/ChatApi.kt +++ b/client-mobile/chats/data/remote/api/ChatApi.kt @@ -27,6 +27,7 @@ interface ChatApi { suspend fun getMessages( @Path("chatId") chatId: String, @Query("cursor") cursor: String? = null, + @Query("pivot") pivot: Long? = null, @Query("limit") limit: Int? = 50 ): List diff --git a/client-mobile/chats/data/repository/ChatRepositoryImpl.kt b/client-mobile/chats/data/repository/ChatRepositoryImpl.kt index 114885d..276d75f 100644 --- a/client-mobile/chats/data/repository/ChatRepositoryImpl.kt +++ b/client-mobile/chats/data/repository/ChatRepositoryImpl.kt @@ -41,27 +41,24 @@ class ChatRepositoryImpl @Inject constructor( } } - override suspend fun getMessages(chatId: String, cursor: String?, limit: Int?): List { + override suspend fun getMessages(chatId: String, cursor: String?, pivot: Long?, limit: Int?): List { val baseUrl = serverConfig.getBaseUrl().removeSuffix("/api/") val currentUserId = tokenManager.getUserId() ?: "" return try { - val chats = api.getChats() - val chatDto = chats.find { it.id == chatId } - val unreadCount = chatDto?.unreadCount ?: 0 - - android.util.Log.d("ChatRepo", "Fetching messages from network for chat: $chatId, cursor: $cursor") + android.util.Log.d("ChatRepo", "FETCH: chatId=$chatId, cursor=$cursor, limit=$limit") val messages = api.getMessages(chatId, cursor = cursor, limit = limit) + if (messages.isNotEmpty()) { - android.util.Log.d("ChatRepo", "Received ${messages.size} messages. First: ${messages.first().createdAt}, Last: ${messages.last().createdAt}") + android.util.Log.d("ChatRepo", "Received ${messages.size} messages. TopSeq: ${messages.first().sequenceId}, BottomSeq: ${messages.last().sequenceId}") } - // Определяем, какие сообщения считаются прочитанными - val mappedMessages = messages.mapIndexed { index, msg -> - val isUnread = (messages.size - index) <= unreadCount && msg.senderId != currentUserId - msg.toDomain(currentUserId, baseUrl).copy(isRead = !isUnread) + // Мапим в доменные модели. По умолчанию считаем прочитанными, + // так как unreadCount нам тут не критичен для истории. + messages.map { msg -> + msg.toDomain(currentUserId, baseUrl).copy(isRead = true) } - mappedMessages } catch (e: Exception) { + android.util.Log.e("ChatRepo", "Fetch messages failed", e) emptyList() } } diff --git a/client-mobile/chats/domain/repository/ChatRepository.kt b/client-mobile/chats/domain/repository/ChatRepository.kt index e652abd..1411ea5 100644 --- a/client-mobile/chats/domain/repository/ChatRepository.kt +++ b/client-mobile/chats/domain/repository/ChatRepository.kt @@ -6,7 +6,7 @@ import chats.domain.model.Message interface ChatRepository { suspend fun getChats(): List fun getMessagesFlow(chatId: String): kotlinx.coroutines.flow.Flow> - suspend fun getMessages(chatId: String, cursor: String? = null, limit: Int? = null): List + suspend fun getMessages(chatId: String, cursor: String? = null, pivot: Long? = null, limit: Int? = null): List suspend fun sendMessage( chatId: String, content: String?, diff --git a/client-mobile/chats/presentation/chat_detail/ChatDetailScreen.kt b/client-mobile/chats/presentation/chat_detail/ChatDetailScreen.kt index b6a30d0..4c08912 100644 --- a/client-mobile/chats/presentation/chat_detail/ChatDetailScreen.kt +++ b/client-mobile/chats/presentation/chat_detail/ChatDetailScreen.kt @@ -221,14 +221,18 @@ fun ChatDetailScreen( } // Подгрузка истории при прокрутке вверх - LaunchedEffect(listState) { - snapshotFlow { listState.layoutInfo.visibleItemsInfo.lastOrNull()?.index } - .collect { lastVisibleIndex -> - if (lastVisibleIndex != null && lastVisibleIndex >= listItems.size - 10 && listItems.size >= 15) { - android.util.Log.d("ChatDetailScreen", "TRIGGER LOAD MORE: index $lastVisibleIndex, size ${listItems.size}") - viewModel.loadMoreMessages() - } + LaunchedEffect(listState, state.messages.size) { + snapshotFlow { + val lastIndex = listState.layoutInfo.visibleItemsInfo.lastOrNull()?.index ?: 0 + val totalCount = listState.layoutInfo.totalItemsCount + lastIndex to totalCount + } + .collect { (lastVisibleIndex, totalCount) -> + if (totalCount > 0 && lastVisibleIndex >= totalCount - 20 && !state.isLoadingMore) { + android.util.Log.d("ChatDetailScreen", "TRIGGER LOAD MORE: index $lastVisibleIndex, total $totalCount") + viewModel.loadMoreMessages() } + } } val unreadCount = remember(state.messages) {