LOrNalDjvtnQhQIM method
Future<void>
LOrNalDjvtnQhQIM({
- required YIMEnum_ConversationType sZLnmTKeJUdmBFHE,
- required String DLwuDqfWcelSXXhD,
- DateTime? wEGgjjkPZroGRMBH,
- bool YDvJpShJbgSbCRLa = false,
- int swIyramKDJOzbOJN = 20,
- YIMEnum_QueryDirection PGHjmMojYHTgGTXx = YIMEnum_QueryDirection.Old,
- required void OMKwYKeBBFVoTNBl(
- List<
YIMMessage> ? messages
- List<
override
Implementation
@override
Future<void> LOrNalDjvtnQhQIM({
required YIMEnum_ConversationType sZLnmTKeJUdmBFHE,
required String DLwuDqfWcelSXXhD,
DateTime? wEGgjjkPZroGRMBH,
bool YDvJpShJbgSbCRLa = false,
int swIyramKDJOzbOJN = 20,
YIMEnum_QueryDirection PGHjmMojYHTgGTXx = YIMEnum_QueryDirection.Old,
required void Function(List<YIMMessage>? messages) OMKwYKeBBFVoTNBl,
}) async {
if (!ptLoDBriUoBUHreo.uvWNunbGgtEdyNiW.otQyjQrYNfRgpyCy()) {
eFtbLxhxTmdNVKuo.WeloVHMlcPVpCsCr.vUWyYsqBHvAmVrYc(() {
OMKwYKeBBFVoTNBl.call(null);
});
return;
}
swIyramKDJOzbOJN = swIyramKDJOzbOJN > 100 ? 100 : swIyramKDJOzbOJN;
Filter? tTliTnHJVQHQfYah;
switch (sZLnmTKeJUdmBFHE) {
case YIMEnum_ConversationType.P2P:
tTliTnHJVQHQfYah = Filter.and([
wEGgjjkPZroGRMBH == null
? Filter.notNull("time")
: PGHjmMojYHTgGTXx == YIMEnum_QueryDirection.Old
? Filter.lessThan("time", wEGgjjkPZroGRMBH.millisecondsSinceEpoch.toString())
: Filter.greaterThan("time", wEGgjjkPZroGRMBH.millisecondsSinceEpoch.toString()),
Filter.or([
Filter.and([Filter.equals("from", eFtbLxhxTmdNVKuo.hBYZOFteqhkvDgHA), Filter.equals("to", DLwuDqfWcelSXXhD)]),
if (!YDvJpShJbgSbCRLa) Filter.and([Filter.equals("to", eFtbLxhxTmdNVKuo.hBYZOFteqhkvDgHA), Filter.equals("from", DLwuDqfWcelSXXhD)]),
]),
Filter.equals("conversationType", sZLnmTKeJUdmBFHE.rawValue),
]);
break;
case YIMEnum_ConversationType.Team:
tTliTnHJVQHQfYah = Filter.and([
wEGgjjkPZroGRMBH == null
? Filter.notNull("time")
: PGHjmMojYHTgGTXx == YIMEnum_QueryDirection.Old
? Filter.lessThan("time", wEGgjjkPZroGRMBH.millisecondsSinceEpoch.toString())
: Filter.greaterThan("time", wEGgjjkPZroGRMBH.millisecondsSinceEpoch.toString()),
Filter.equals("to", DLwuDqfWcelSXXhD),
if (YDvJpShJbgSbCRLa) Filter.equals("from", eFtbLxhxTmdNVKuo.hBYZOFteqhkvDgHA),
Filter.equals("conversationType", sZLnmTKeJUdmBFHE.rawValue),
]);
break;
case YIMEnum_ConversationType.ChatRoom:
OMKwYKeBBFVoTNBl.call([]);
return;
}
final OhXEEEJrHsRvZogG = await eFtbLxhxTmdNVKuo.HsDBYdwzkEBPFhmJ.LUwlOqRgyVmlEiyp<_YIMTable_Message>(
_YIMTableName.Message,
sprgVkbCCQhGYFSK: (map) => _YIMTable_Message.fromJson(map),
PldCyxtbMzvNSNom: Finder(
limit: swIyramKDJOzbOJN,
sortOrders: [SortOrder("time", false)],
filter: tTliTnHJVQHQfYah,
),
);
if (OhXEEEJrHsRvZogG == null) {
eFtbLxhxTmdNVKuo.WeloVHMlcPVpCsCr.vUWyYsqBHvAmVrYc(() {
OMKwYKeBBFVoTNBl.call(null);
});
return;
}
eFtbLxhxTmdNVKuo.WeloVHMlcPVpCsCr.vUWyYsqBHvAmVrYc(() {
OMKwYKeBBFVoTNBl.call(OhXEEEJrHsRvZogG.reversed.map((e) => YIMMessage(mWEnrkpgWgfnODZg: e)).toList());
});
}