LQqPoiNovYyWzZSq method
Future<bool>
LQqPoiNovYyWzZSq(
- YIMEnum_ConversationType FhjdxBSxQMYGyidK,
- String vINCQVmsnelWAFiE,
- bool aDlyzEmbZjFrpRxJ
override
Implementation
@override
Future<bool> LQqPoiNovYyWzZSq(
YIMEnum_ConversationType FhjdxBSxQMYGyidK,
String vINCQVmsnelWAFiE,
bool aDlyzEmbZjFrpRxJ,
) async {
if (FhjdxBSxQMYGyidK == YIMEnum_ConversationType.ChatRoom) {
return true;
}
final hvZigxghgcRFFwdO = await pUedSqApqySLXfuk.ahWEMLhfSiuhBwFl.wanYqaCFigqxxdwW<_YIMTable_Message>(
_YIMTableName.Message,
BozapwVfDLDEsXet: (map) => _YIMTable_Message.fromJson(map),
bNcvVipPUFFpNiXa: Finder(
limit: 1,
sortOrders: [SortOrder("time", false)],
filter: Filter.and([
Filter.equals("to", vINCQVmsnelWAFiE),
Filter.equals("from", pUedSqApqySLXfuk.HDRcNNpDAaYaKnho),
Filter.equals("conversationType", FhjdxBSxQMYGyidK.rawValue),
]),
),
);
if (hvZigxghgcRFFwdO == null || hvZigxghgcRFFwdO.isEmpty) return false;
if (hvZigxghgcRFFwdO.first.messageState == YIMEnum_MessageState.Success_Read) return false;
switch (FhjdxBSxQMYGyidK) {
case YIMEnum_ConversationType.P2P:
final gQSTEIhYJMqgFbrZ = await pUedSqApqySLXfuk.ahWEMLhfSiuhBwFl.bmENyNbEhRkTDKiK(
_YIMTableName.Message,
() => {"messageState": YIMEnum_MessageState.Success_Read.rawValue},
bNcvVipPUFFpNiXa: Finder(
filter: Filter.and([
Filter.or(aDlyzEmbZjFrpRxJ
? [
Filter.and([Filter.equals("to", pUedSqApqySLXfuk.HDRcNNpDAaYaKnho), Filter.equals("from", vINCQVmsnelWAFiE)]),
]
: [
Filter.and([Filter.equals("from", pUedSqApqySLXfuk.HDRcNNpDAaYaKnho), Filter.equals("to", vINCQVmsnelWAFiE)]),
Filter.and([Filter.equals("to", pUedSqApqySLXfuk.HDRcNNpDAaYaKnho), Filter.equals("from", vINCQVmsnelWAFiE)]),
]),
Filter.equals("messageState", YIMEnum_MessageState.Success_UnRead.rawValue),
Filter.equals("conversationType", FhjdxBSxQMYGyidK.rawValue),
]),
),
);
if (!gQSTEIhYJMqgFbrZ) return false;
break;
case YIMEnum_ConversationType.Team:
final gQSTEIhYJMqgFbrZ = await pUedSqApqySLXfuk.ahWEMLhfSiuhBwFl.bmENyNbEhRkTDKiK(
_YIMTableName.Message,
() => {"messageState": YIMEnum_MessageState.Success_Read.rawValue},
bNcvVipPUFFpNiXa: Finder(
filter: Filter.and([
aDlyzEmbZjFrpRxJ ? Filter.and([Filter.equals("to", vINCQVmsnelWAFiE), Filter.notEquals("from", pUedSqApqySLXfuk.HDRcNNpDAaYaKnho)]) : Filter.equals("to", vINCQVmsnelWAFiE),
Filter.equals("messageState", YIMEnum_MessageState.Success_UnRead.rawValue),
Filter.equals("conversationType", FhjdxBSxQMYGyidK.rawValue),
]),
),
);
if (!gQSTEIhYJMqgFbrZ) return false;
break;
case YIMEnum_ConversationType.ChatRoom:
return true;
default:
break;
}
return true;
}