Browse Source

优化会议助手转写记录数据同步

newdev_shunjiawei
tanlongsheng 1 year ago
parent
commit
433c2f24d1
  1. 23
      lib/core/utils/synchrodata.dart

23
lib/core/utils/synchrodata.dart

@ -171,19 +171,34 @@ class Synchrodata {
List speakerList = jsonDecode(element['original']); List speakerList = jsonDecode(element['original']);
if (existSpeakerList.isNotEmpty) { if (existSpeakerList.isNotEmpty) {
final batch = txn.batch(); final batch = txn.batch();
for (var item in speakerList) { for (var i = 0; i < existSpeakerList.length; i++) {
Map item = speakerList[i] ?? {};
if (item.isNotEmpty) {
batch.update( batch.update(
'meetingspeaker', 'meetingspeaker',
item, {
'meetingid': item['meetingid'],
'content': item['content'],
'starttime': item['starttime'],
'endtime': item['endtime'],
'speaker': item['speaker'],
},
where: 'id = ?', where: 'id = ?',
whereArgs: [item['id']], whereArgs: [existSpeakerList[i]['id']],
); );
} }
}
await batch.commit(); await batch.commit();
} else { } else {
final batch = txn.batch(); final batch = txn.batch();
for (var item in speakerList) { for (var item in speakerList) {
batch.insert('meetingspeaker', item); batch.insert('meetingspeaker', {
'meetingid': item['meetingid'],
'content': item['content'],
'starttime': item['starttime'],
'endtime': item['endtime'],
'speaker': item['speaker'],
});
} }
await batch.commit(); await batch.commit();
} }

Loading…
Cancel
Save