fix:update sync channel message

This commit is contained in:
SL 2024-08-05 14:09:48 +08:00
parent 8f58729b9b
commit b0172b8a3b
4 changed files with 21 additions and 14 deletions

View File

@ -45,7 +45,8 @@ class HttpUtils {
conversation.conversations = [];
if (response.statusCode == HttpStatus.ok) {
try {
var list = jsonDecode(response.data);
var list = response.data;
// var list = jsonDecode(response.data);
for (int i = 0; i < list.length; i++) {
var json = list[i];
WKSyncConvMsg convMsg = WKSyncConvMsg();
@ -84,7 +85,6 @@ class HttpUtils {
int pullMode,
Function(WKSyncChannelMsg) back) async {
final dio = Dio();
print('开始seq: $startMsgSeq 结束seq: $endMsgSeq');
final response = await dio.post('$apiURL/channel/messagesync', data: {
"login_uid": UserInfo.uid, // uid
"channel_id": channelID, // ID
@ -95,18 +95,12 @@ class HttpUtils {
"pull_mode": pullMode // 0: 1:
});
if (response.statusCode == HttpStatus.ok) {
var data = jsonDecode(response.data);
var data = response.data;
WKSyncChannelMsg msg = WKSyncChannelMsg();
msg.startMessageSeq = data['start_message_seq'];
msg.endMessageSeq = data['end_message_seq'];
msg.more = data['more'];
var messages;
var list = data['messages'];
if (list is String) {
messages = jsonDecode(data['messages']);
} else {
messages = list;
}
var messages = data['messages'];
List<WKSyncMsg> msgList = [];
for (int i = 0; i < messages.length; i++) {

View File

@ -122,13 +122,21 @@ packages:
source: hosted
version: "1.0.5"
dio:
dependency: transitive
dependency: "direct main"
description:
name: dio
sha256: ce75a1b40947fea0a0e16ce73337122a86762e38b982e1ccb909daa3b9bc4197
sha256: e17f6b3097b8c51b72c74c9f071a605c47bcc8893839bd66732457a5ebe73714
url: "https://pub.flutter-io.cn"
source: hosted
version: "5.3.2"
version: "5.5.0+1"
dio_web_adapter:
dependency: transitive
description:
name: dio_web_adapter
sha256: "36c5b2d79eb17cdae41e974b7a8284fec631651d2a6f39a8a2ff22327e90aeac"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
encrypt:
dependency: transitive
description:
@ -539,7 +547,7 @@ packages:
path: ".."
relative: true
source: path
version: "1.4.1"
version: "1.5.1"
x25519:
dependency: transitive
description:

View File

@ -36,6 +36,7 @@ dependencies:
cupertino_icons: ^1.0.2
wukongimfluttersdk:
path: ../
dio: ^5.5.0+1
dev_dependencies:
flutter_test:
sdk: flutter

View File

@ -392,6 +392,10 @@ class MessageDB {
if (pullMode == 0) {
//
if (oldestMsgSeq == 1) {
iGetOrSyncHistoryMsgBack([]);
return;
}
if (maxMessageSeq != 0 &&
oldestMsgSeq != 0 &&
oldestMsgSeq - maxMessageSeq > 1) {