A bit of notification turn on reminder
This commit is contained in:
@@ -198,8 +198,9 @@ List<Map<String, dynamic>> _processTasksInIsolate(
|
||||
<String>{};
|
||||
|
||||
if (!isGlobal) {
|
||||
if (allowedTicketIds.isEmpty && allowedOfficeIds.isEmpty)
|
||||
if (allowedTicketIds.isEmpty && allowedOfficeIds.isEmpty) {
|
||||
return <Map<String, dynamic>>[];
|
||||
}
|
||||
list = list.where((t) {
|
||||
final tid = t['ticket_id'] as String?;
|
||||
final oid = t['office_id'] as String?;
|
||||
@@ -262,7 +263,7 @@ List<Map<String, dynamic>> _processTasksInIsolate(
|
||||
return int.tryParse(m.group(0)!);
|
||||
}
|
||||
|
||||
int _parseCreatedAt(Map<String, dynamic> m) {
|
||||
int parseCreatedAt(Map<String, dynamic> m) {
|
||||
final v = m['created_at'];
|
||||
if (v == null) return 0;
|
||||
if (v is int) return v;
|
||||
@@ -293,11 +294,11 @@ List<Map<String, dynamic>> _processTasksInIsolate(
|
||||
final bOrder = (b['queue_order'] as int?) ?? 0x7fffffff;
|
||||
final qcmp = aOrder.compareTo(bOrder);
|
||||
if (qcmp != 0) return qcmp;
|
||||
return _parseCreatedAt(a).compareTo(_parseCreatedAt(b));
|
||||
return parseCreatedAt(a).compareTo(parseCreatedAt(b));
|
||||
}
|
||||
|
||||
if (ra == 1) {
|
||||
return _parseCreatedAt(a).compareTo(_parseCreatedAt(b));
|
||||
return parseCreatedAt(a).compareTo(parseCreatedAt(b));
|
||||
}
|
||||
|
||||
if (ra == 2) {
|
||||
@@ -306,14 +307,14 @@ List<Map<String, dynamic>> _processTasksInIsolate(
|
||||
if (an != null && bn != null) return bn.compareTo(an);
|
||||
if (an != null) return -1;
|
||||
if (bn != null) return 1;
|
||||
return _parseCreatedAt(b).compareTo(_parseCreatedAt(a));
|
||||
return parseCreatedAt(b).compareTo(parseCreatedAt(a));
|
||||
}
|
||||
|
||||
final aOrder = (a['queue_order'] as int?) ?? 0x7fffffff;
|
||||
final bOrder = (b['queue_order'] as int?) ?? 0x7fffffff;
|
||||
final cmp = aOrder.compareTo(bOrder);
|
||||
if (cmp != 0) return cmp;
|
||||
return _parseCreatedAt(a).compareTo(_parseCreatedAt(b));
|
||||
return parseCreatedAt(a).compareTo(parseCreatedAt(b));
|
||||
});
|
||||
|
||||
return list;
|
||||
|
||||
@@ -185,7 +185,9 @@ List<Map<String, dynamic>> _processTicketsInIsolate(
|
||||
<String>{};
|
||||
|
||||
if (!isGlobal) {
|
||||
if (allowedOfficeIds.isEmpty) return <Map<String, dynamic>>[];
|
||||
if (allowedOfficeIds.isEmpty) {
|
||||
return <Map<String, dynamic>>[];
|
||||
}
|
||||
list = list
|
||||
.where((t) => allowedOfficeIds.contains(t['office_id']))
|
||||
.toList();
|
||||
@@ -212,7 +214,7 @@ List<Map<String, dynamic>> _processTicketsInIsolate(
|
||||
|
||||
// Sort newest first. `created_at` may be ISO strings or timestamps;
|
||||
// handle strings and numeric values.
|
||||
int _parseCreatedAt(Map<String, dynamic> m) {
|
||||
int parseCreatedAt(Map<String, dynamic> m) {
|
||||
final v = m['created_at'];
|
||||
if (v == null) return 0;
|
||||
if (v is int) return v;
|
||||
@@ -227,7 +229,7 @@ List<Map<String, dynamic>> _processTicketsInIsolate(
|
||||
return 0;
|
||||
}
|
||||
|
||||
list.sort((a, b) => _parseCreatedAt(b).compareTo(_parseCreatedAt(a)));
|
||||
list.sort((a, b) => parseCreatedAt(b).compareTo(parseCreatedAt(a)));
|
||||
|
||||
final start = (payload['offset'] as int?) ?? 0;
|
||||
final limit = (payload['limit'] as int?) ?? 50;
|
||||
|
||||
Reference in New Issue
Block a user