qJHXNOktYCxJBxfe method
Future<void>
qJHXNOktYCxJBxfe({
- required YIMEnum_ConversationType BgfAEObZrclDbHGn,
- required String fRzBwkFTgPAvTbAa,
- DateTime? HTBubeWAakiqLcZJ,
- bool NsaqbtmjHHBuZuaD = false,
- int rWeHdJjAbLtRabTA = 20,
- YIMEnum_QueryDirection xpwbhBxwjQrCSaMF = YIMEnum_QueryDirection.Old,
- required void RpTfEMreuKahSHPQ(
- List<
YIMMessage> ? messages
- List<
override
Implementation
@override
Future<void> qJHXNOktYCxJBxfe({
required YIMEnum_ConversationType BgfAEObZrclDbHGn,
required String fRzBwkFTgPAvTbAa,
DateTime? HTBubeWAakiqLcZJ,
bool NsaqbtmjHHBuZuaD = false,
int rWeHdJjAbLtRabTA = 20,
YIMEnum_QueryDirection xpwbhBxwjQrCSaMF = YIMEnum_QueryDirection.Old,
required void Function(List<YIMMessage>? messages) RpTfEMreuKahSHPQ,
}) async {
if (!TOguPJtIdcSeGZGX.rBuDdhLENqbkPPvE.NeoEyBnRdnWKwFxT()) {
RgTTqSEnxRPxFwzl.CfKfGgNeZazCORbX.LrMzRSTzQmONyVIm(() {
RpTfEMreuKahSHPQ.call(null);
});
return;
}
rWeHdJjAbLtRabTA = rWeHdJjAbLtRabTA > 100 ? 100 : rWeHdJjAbLtRabTA;
Filter? QXsGIQPhlpBQAYXd;
switch (BgfAEObZrclDbHGn) {
case YIMEnum_ConversationType.P2P:
QXsGIQPhlpBQAYXd = Filter.and([
HTBubeWAakiqLcZJ == null
? Filter.notNull("time")
: xpwbhBxwjQrCSaMF == YIMEnum_QueryDirection.Old
? Filter.lessThan("time", HTBubeWAakiqLcZJ.millisecondsSinceEpoch.toString())
: Filter.greaterThan("time", HTBubeWAakiqLcZJ.millisecondsSinceEpoch.toString()),
Filter.or([
Filter.and([Filter.equals("from", RgTTqSEnxRPxFwzl.KXZihjAgwIbphLgM), Filter.equals("to", fRzBwkFTgPAvTbAa)]),
if (!NsaqbtmjHHBuZuaD) Filter.and([Filter.equals("to", RgTTqSEnxRPxFwzl.KXZihjAgwIbphLgM), Filter.equals("from", fRzBwkFTgPAvTbAa)]),
]),
Filter.equals("conversationType", BgfAEObZrclDbHGn.rawValue),
]);
break;
case YIMEnum_ConversationType.Team:
QXsGIQPhlpBQAYXd = Filter.and([
HTBubeWAakiqLcZJ == null
? Filter.notNull("time")
: xpwbhBxwjQrCSaMF == YIMEnum_QueryDirection.Old
? Filter.lessThan("time", HTBubeWAakiqLcZJ.millisecondsSinceEpoch.toString())
: Filter.greaterThan("time", HTBubeWAakiqLcZJ.millisecondsSinceEpoch.toString()),
Filter.equals("to", fRzBwkFTgPAvTbAa),
if (NsaqbtmjHHBuZuaD) Filter.equals("from", RgTTqSEnxRPxFwzl.KXZihjAgwIbphLgM),
Filter.equals("conversationType", BgfAEObZrclDbHGn.rawValue),
]);
break;
case YIMEnum_ConversationType.ChatRoom:
RpTfEMreuKahSHPQ.call([]);
return;
}
final BYjAdmrVoQXFvmBX = await RgTTqSEnxRPxFwzl.XYSDgLkjooSuxQxj.mIfLIZlbruepMfyA<_YIMTable_Message>(
_YIMTableName.Message,
AssMtxrsCpVcieAX: (map) => _YIMTable_Message.fromJson(map),
IaZSeQoXPmnqurCt: Finder(
limit: rWeHdJjAbLtRabTA,
sortOrders: [SortOrder("time", false)],
filter: QXsGIQPhlpBQAYXd,
),
);
if (BYjAdmrVoQXFvmBX == null) {
RgTTqSEnxRPxFwzl.CfKfGgNeZazCORbX.LrMzRSTzQmONyVIm(() {
RpTfEMreuKahSHPQ.call(null);
});
return;
}
RgTTqSEnxRPxFwzl.CfKfGgNeZazCORbX.LrMzRSTzQmONyVIm(() {
RpTfEMreuKahSHPQ.call(BYjAdmrVoQXFvmBX.reversed.map((e) => YIMMessage(kmHFaoDMcNOfZpRN: e)).toList());
});
}