ObjectBox
This commit is contained in:
1 parent
e548f62bde
commit
f8317be627
60 files changed
+2367
-15049
No files matched your search
@@ -1,13 +1,13 @@
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:intl/intl.dart' show DateFormat;
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/tour_list_page.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
|
||||
import '../main.dart';
|
||||
import '../model/job.dart';
|
||||
import '../objectbox.g.dart';
|
||||
import '../tools/constants.dart';
|
||||
import '../tools/util.dart';
|
||||
|
||||
@@ -34,10 +34,11 @@ class _AcceptedJobsPageState extends State<AcceptedJobsPage>
|
||||
@override
|
||||
void initState() {
|
||||
Future.delayed(const Duration(seconds: 0), () async {
|
||||
_jobs = await MyApp.isarInstance.jobs
|
||||
.filter()
|
||||
.stateEqualTo(Constants.stateAccepted)
|
||||
.findAll();
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
final query = box.query(Job_.state.equals(Constants.stateAccepted)).build();
|
||||
_jobs = query.find();
|
||||
query.close();
|
||||
|
||||
_jobs.sort((job1, job2) {
|
||||
var date1 = DateTime.fromMillisecondsSinceEpoch(job1.ordertime * 1000, isUtc: true).millisecondsSinceEpoch;
|
||||
var date2 = DateTime.fromMillisecondsSinceEpoch(job2.ordertime * 1000, isUtc: true).millisecondsSinceEpoch;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/main.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
@@ -38,7 +37,9 @@ class _ApproachAreaPageState extends State<ApproachAreaPage>
|
||||
super.initState();
|
||||
|
||||
Future.delayed(const Duration(seconds: 0), () async {
|
||||
_ranking = await MyApp.isarInstance.rankings.where().findFirst();
|
||||
final box = MyApp.objectBoxStore.box<Ranking>();
|
||||
final rankings = box.getAll();
|
||||
_ranking = rankings.isNotEmpty ? rankings.first : null;
|
||||
|
||||
_initCompleted = true;
|
||||
|
||||
@@ -224,7 +225,9 @@ class _ApproachAreaPageState extends State<ApproachAreaPage>
|
||||
subscribe(
|
||||
queueId: Constants.messageTopicRankingUpdated,
|
||||
callback: (message) async {
|
||||
_ranking = await MyApp.isarInstance.rankings.where().findFirst();
|
||||
final box = MyApp.objectBoxStore.box<Ranking>();
|
||||
final rankings = box.getAll();
|
||||
_ranking = rankings.isNotEmpty ? rankings.first : null;
|
||||
|
||||
if (mounted) {
|
||||
setState(() {});
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:expandable/expandable.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/objectbox.g.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:badges/badges.dart' as badges;
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
@@ -82,7 +82,11 @@ class _AssignedJobsPageState extends State<AssignedJobsPage> with ProducerMixin,
|
||||
}
|
||||
|
||||
Future<List<Job>> _fetchState0Jobs() async {
|
||||
return await MyApp.isarInstance.jobs.filter().stateEqualTo(Constants.stateAssigned).findAll();
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
final query = box.query(Job_.state.equals(Constants.stateAssigned)).build();
|
||||
final jobs = query.find();
|
||||
query.close();
|
||||
return jobs;
|
||||
}
|
||||
|
||||
List<Widget> _createWidgets() {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/tour_list_page.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/objectbox.g.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
|
||||
@@ -34,10 +34,10 @@ class _FinishedJobsPageState extends State<FinishedJobsPage>
|
||||
@override
|
||||
void initState() {
|
||||
Future.delayed(const Duration(seconds: 0), () async {
|
||||
_jobs = await MyApp.isarInstance.jobs
|
||||
.filter()
|
||||
.stateEqualTo(Constants.stateFinished)
|
||||
.findAll();
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
final query = box.query(Job_.state.equals(Constants.stateFinished)).build();
|
||||
_jobs = query.find();
|
||||
query.close();
|
||||
|
||||
_initCompleted = true;
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/accepted_jobs_page.dart';
|
||||
import 'package:stadtbote/content_views/approach_area_page.dart';
|
||||
import 'package:stadtbote/objectbox.g.dart';
|
||||
import 'package:stadtbote/content_views/assigned_jobs_page.dart';
|
||||
import 'package:stadtbote/content_views/finished_jobs_page.dart';
|
||||
import 'package:stadtbote/content_views/messages_page.dart';
|
||||
@@ -322,14 +322,19 @@ class _MainPageState extends State<MainPage> with ConsumerMixin, ProducerMixin {
|
||||
}
|
||||
|
||||
void _refreshBadges() async {
|
||||
_assignedJobsValueNotifier.value =
|
||||
await MyApp.isarInstance.jobs.filter().stateEqualTo(0).count();
|
||||
_acceptedJobsValueNotifier.value =
|
||||
await MyApp.isarInstance.jobs.filter().stateEqualTo(1).count();
|
||||
_messagesValueNotifier.value = await MyApp.isarInstance.chatMessages
|
||||
.filter()
|
||||
.readEqualTo(false)
|
||||
.count();
|
||||
final jobBox = MyApp.objectBoxStore.box<Job>();
|
||||
final assignedQuery = jobBox.query(Job_.state.equals(0)).build();
|
||||
_assignedJobsValueNotifier.value = assignedQuery.count();
|
||||
assignedQuery.close();
|
||||
|
||||
final acceptedQuery = jobBox.query(Job_.state.equals(1)).build();
|
||||
_acceptedJobsValueNotifier.value = acceptedQuery.count();
|
||||
acceptedQuery.close();
|
||||
|
||||
final messageBox = MyApp.objectBoxStore.box<ChatMessage>();
|
||||
final messageQuery = messageBox.query(ChatMessage_.read.equals(false)).build();
|
||||
_messagesValueNotifier.value = messageQuery.count();
|
||||
messageQuery.close();
|
||||
}
|
||||
|
||||
void _jobReceived(Job job) {
|
||||
@@ -512,10 +517,9 @@ class _HeaderWidgetState extends State<_HeaderWidget> with ConsumerMixin {
|
||||
child: FittedBox(
|
||||
child: GestureDetector(
|
||||
onTap: () async {
|
||||
var sessionStatus = await MyApp
|
||||
.isarInstance.sessionStatus
|
||||
.where()
|
||||
.findFirst();
|
||||
final box = MyApp.objectBoxStore.box<SessionStatus>();
|
||||
final sessions = box.getAll();
|
||||
var sessionStatus = sessions.isNotEmpty ? sessions.first : null;
|
||||
|
||||
showInfosPopup(sessionStatus);
|
||||
},
|
||||
@@ -643,9 +647,13 @@ class _HeaderWidgetState extends State<_HeaderWidget> with ConsumerMixin {
|
||||
}
|
||||
|
||||
_updateHeader() async {
|
||||
var status = await MyApp.isarInstance.locationStatus.where().findFirst();
|
||||
var sessionStatus =
|
||||
await MyApp.isarInstance.sessionStatus.where().findFirst();
|
||||
final locationBox = MyApp.objectBoxStore.box<LocationStatus>();
|
||||
final locations = locationBox.getAll();
|
||||
var status = locations.isNotEmpty ? locations.first : null;
|
||||
|
||||
final sessionBox = MyApp.objectBoxStore.box<SessionStatus>();
|
||||
final sessions = sessionBox.getAll();
|
||||
var sessionStatus = sessions.isNotEmpty ? sessions.first : null;
|
||||
|
||||
if (status != null) {
|
||||
_zipValueNotifier.value = status.zip;
|
||||
@@ -664,7 +672,9 @@ class _HeaderWidgetState extends State<_HeaderWidget> with ConsumerMixin {
|
||||
/*
|
||||
rightButtonImage: Util.fetchFutureIcon(const Icon(Icons.info_outline, size: 20.0, color: Colors.white)),
|
||||
rightButtonOnPressed: () async {
|
||||
showInfosPopup(await MyApp.isarInstance.sessionStatus.where().findFirst());
|
||||
final box = MyApp.objectBoxStore.box<SessionStatus>();
|
||||
final sessions = box.getAll();
|
||||
showInfosPopup(sessions.isNotEmpty ? sessions.first : null);
|
||||
});
|
||||
*/
|
||||
}
|
||||
|
||||
@@ -2,13 +2,12 @@ import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_chat_ui/flutter_chat_ui.dart';
|
||||
import 'package:flutter_chat_types/flutter_chat_types.dart' as types;
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/main.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
import 'package:stadtbote/model/chat_message.dart' as sbmessage;
|
||||
import 'package:stadtbote/model/chat_message.dart';
|
||||
import 'package:stadtbote/model/session_status.dart';
|
||||
import 'package:stadtbote/objectbox.g.dart';
|
||||
import 'package:stadtbote/network_messages/messages_showed.dart';
|
||||
import 'package:stadtbote/tools/constants.dart';
|
||||
import 'package:stadtbote/tools/messages/publish_payload_message.dart';
|
||||
@@ -49,7 +48,9 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
super.initState();
|
||||
|
||||
Future.delayed(const Duration(seconds: 0), () async {
|
||||
var status = await MyApp.isarInstance.sessionStatus.where().findFirst();
|
||||
final box = MyApp.objectBoxStore.box<SessionStatus>();
|
||||
final sessions = box.getAll();
|
||||
var status = sessions.isNotEmpty ? sessions.first : null;
|
||||
_sid = status != null ? status.sid : 'Unbekannt';
|
||||
|
||||
_sendMessagesReadMessage();
|
||||
@@ -97,9 +98,8 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
message.read = true;
|
||||
message.id = await sbmessage.ChatMessage.getNextId();
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.chatMessages.put(message);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<sbmessage.ChatMessage>();
|
||||
box.put(message);
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicPublishPayload,
|
||||
@@ -124,7 +124,9 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
Future<void> _fetchMessages() async {
|
||||
_messages.clear();
|
||||
|
||||
var messages = await MyApp.isarInstance.chatMessages.where().findAll();
|
||||
final box = MyApp.objectBoxStore.box<sbmessage.ChatMessage>();
|
||||
var messages = box.getAll();
|
||||
|
||||
for (var message in messages) {
|
||||
_messages.add(types.TextMessage(
|
||||
author: message.from == _sid ? _user : _central,
|
||||
@@ -136,9 +138,7 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
_messages.sort((a, b) => b.createdAt! > a.createdAt! ? 1 : 0);
|
||||
|
||||
message.read = true;
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.chatMessages.put(message);
|
||||
});
|
||||
box.put(message);
|
||||
}
|
||||
|
||||
setState(() {});
|
||||
@@ -177,13 +177,8 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
child: getDefaultButton(
|
||||
'Ja',
|
||||
() async => {
|
||||
await MyApp.isarInstance.writeTxn(
|
||||
() async => {
|
||||
await MyApp.isarInstance
|
||||
.chatMessages
|
||||
.delete(int.parse(
|
||||
message.id))
|
||||
}),
|
||||
MyApp.objectBoxStore.box<sbmessage.ChatMessage>()
|
||||
.remove(int.parse(message.id)),
|
||||
_fetchMessages(),
|
||||
setState(() {}),
|
||||
Navigator.of(MyApp.appNavigatorKey
|
||||
@@ -201,10 +196,10 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
void _sendMessagesReadMessage() async {
|
||||
var unreadChatMessages = await MyApp.isarInstance.chatMessages
|
||||
.filter()
|
||||
.readEqualTo(false)
|
||||
.findAll();
|
||||
final box = MyApp.objectBoxStore.box<sbmessage.ChatMessage>();
|
||||
final query = box.query(ChatMessage_.read.equals(false)).build();
|
||||
var unreadChatMessages = query.find();
|
||||
query.close();
|
||||
|
||||
if (unreadChatMessages.isNotEmpty) {
|
||||
List<String> chatMessageIds = [];
|
||||
|
||||
@@ -4,12 +4,12 @@ import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
import 'package:stadtbote/model/job.dart';
|
||||
import 'package:stadtbote/model/job_tour.dart';
|
||||
import 'package:stadtbote/model/pictures.dart';
|
||||
import 'package:stadtbote/objectbox.g.dart';
|
||||
import 'package:stadtbote/network_messages/accept_job_message.dart';
|
||||
import 'package:stadtbote/network_messages/fin_task_message.dart';
|
||||
import 'package:stadtbote/network_messages/fin_tour_message.dart';
|
||||
@@ -116,7 +116,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
|
||||
var textColor = isTaskActive(i) ? Colors.black : const Color(0x33000000);
|
||||
|
||||
var optional = taskInfo.task.opt != null && taskInfo.task.opt == true;
|
||||
var optional = (taskInfo.task?.opt ?? false) == true;
|
||||
steps.add(
|
||||
ListTile(
|
||||
minVerticalPadding: 0,
|
||||
@@ -159,7 +159,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
Text(
|
||||
taskInfo.task.topic + (optional ? "" : " *"),
|
||||
(taskInfo.task?.topic ?? '') + (optional ? "" : " *"),
|
||||
textAlign: TextAlign.left,
|
||||
style: TextStyle(
|
||||
color: textColor,
|
||||
@@ -200,7 +200,10 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
List<TaskInfo> taskList = [];
|
||||
|
||||
for(var task in widget.tour.tasks!) {
|
||||
var taskInfo = await MyApp.isarInstance.taskInfos.filter().sIdEqualTo(task.sId).findFirst();
|
||||
final box = MyApp.objectBoxStore.box<TaskInfo>();
|
||||
final query = box.query(TaskInfo_.sId.equals(task.sId)).build();
|
||||
var taskInfo = query.findFirst();
|
||||
query.close();
|
||||
if (taskInfo == null) {
|
||||
taskInfo = TaskInfo();
|
||||
taskInfo.id = await TaskInfo.getNextId();
|
||||
@@ -218,7 +221,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
void _processTask(TaskInfo taskInfo) {
|
||||
switch(taskInfo.task.type) {
|
||||
switch(taskInfo.task?.type ?? 0) {
|
||||
case 2:
|
||||
_processSignature(taskInfo);
|
||||
break;
|
||||
@@ -255,7 +258,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
_processTaskArrivedOrFinished(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
if (!mounted) return;
|
||||
final currentContext = context;
|
||||
@@ -279,7 +282,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
_processCommissionNumber(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
if (!mounted) return;
|
||||
final currentContext = context;
|
||||
@@ -302,7 +305,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
/*_processScanBarcodes(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
showScanBarcodesPopup(context, taskInfo, (List<String> barcodes) async {
|
||||
var answer = await _createAnswerHeader(taskInfo);
|
||||
@@ -322,25 +325,30 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}*/
|
||||
|
||||
_processTakePhotos(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
if (!mounted) return;
|
||||
final currentContext = context;
|
||||
showTakePhotosPopup(currentContext, taskInfo, (List<Uint8List>? photos) async {
|
||||
if (photos != null) {
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.pictures.filter().tourIdEqualTo(widget.tour.id).deleteAll();
|
||||
final box = MyApp.objectBoxStore.box<Picture>();
|
||||
|
||||
for (int i = 0; i < photos.length; i++) {
|
||||
var pictureData = photos[i];
|
||||
// Delete existing pictures for this tour
|
||||
final query = box.query(Picture_.tourId.equals(widget.tour.id)).build();
|
||||
final existingPictures = query.find();
|
||||
query.close();
|
||||
box.removeMany(existingPictures.map((e) => e.id).toList());
|
||||
|
||||
var picture = Picture();
|
||||
picture.number = i;
|
||||
picture.tourId = widget.tour.id;
|
||||
picture.data = base64Encode(pictureData);
|
||||
await MyApp.isarInstance.pictures.put(picture);
|
||||
}
|
||||
});
|
||||
// Add new pictures
|
||||
for (int i = 0; i < photos.length; i++) {
|
||||
var pictureData = photos[i];
|
||||
|
||||
var picture = Picture();
|
||||
picture.number = i;
|
||||
picture.tourId = widget.tour.id;
|
||||
picture.data = base64Encode(pictureData);
|
||||
box.put(picture);
|
||||
}
|
||||
|
||||
taskInfo.additionalText = "Fotos aufgenommen";
|
||||
taskInfo.completed = true;
|
||||
@@ -355,7 +363,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
void _processStationNotice(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
if (!mounted) return;
|
||||
final currentContext = context;
|
||||
@@ -376,7 +384,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
void _processReceiptGiver(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
if (!mounted) return;
|
||||
final currentContext = context;
|
||||
@@ -398,7 +406,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
void _processPickupDeliveryStatusTask(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
Future.delayed(const Duration(seconds: 1), () async {
|
||||
if (!context.mounted) return;
|
||||
@@ -421,7 +429,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
void _processSignature(TaskInfo taskInfo) {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} called');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} called');
|
||||
|
||||
MyApp.suppressAcceptDialog = true;
|
||||
|
||||
@@ -456,27 +464,26 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
}
|
||||
|
||||
_finishTaskProcessing(TaskInfo taskInfo) async {
|
||||
Util.logInfo('Task ${taskInfo.task.sId} finished');
|
||||
Util.logInfo('Task ${taskInfo.task?.sId ?? 0} finished');
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.taskInfos.put(taskInfo);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<TaskInfo>();
|
||||
box.put(taskInfo);
|
||||
}
|
||||
|
||||
bool isTaskActive(int index) {
|
||||
if (!widget.readOnly) {
|
||||
var currentTaskInfo = _taskList[index];
|
||||
|
||||
if (currentTaskInfo.completed && !currentTaskInfo.task.reenter!) return false;
|
||||
if (currentTaskInfo.completed && !(currentTaskInfo.task?.reenter ?? false)) return false;
|
||||
|
||||
for (var taskInfo in _taskList)
|
||||
{
|
||||
if (taskInfo == currentTaskInfo) break;
|
||||
|
||||
if (!taskInfo.task.opt! && !taskInfo.completed) return false;
|
||||
if (!(taskInfo.task?.opt ?? false) && !taskInfo.completed) return false;
|
||||
}
|
||||
|
||||
if (currentTaskInfo.task.reenter!) return true;
|
||||
if (currentTaskInfo.task?.reenter ?? false) return true;
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -488,7 +495,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
var message = FinTask();
|
||||
message.trId = widget.tour.id;
|
||||
message.task = Task();
|
||||
message.task.sId = taskInfo.task.sId;
|
||||
message.task.sId = taskInfo.task?.sId ?? 0;
|
||||
message.task.time = Util.nowUnixSecondsUtc();
|
||||
|
||||
var position = await MyApp.getCurrentPosition();
|
||||
@@ -511,7 +518,7 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
var position = await MyApp.getCurrentPosition();
|
||||
|
||||
var finTourTask = FinTourTask();
|
||||
finTourTask.sId = taskInfo.task.sId;
|
||||
finTourTask.sId = taskInfo.task?.sId ?? 0;
|
||||
finTourTask.time = Util.nowUnixSecondsUtc();
|
||||
if (position != null) {
|
||||
finTourTask.pos = FinTaskPos();
|
||||
@@ -557,9 +564,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
|
||||
widget.tour.state = Constants.stateFinishedNotConfirmed;
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.jobs.put(widget.job);
|
||||
});
|
||||
final jobBox = MyApp.objectBoxStore.box<Job>();
|
||||
jobBox.put(widget.job);
|
||||
|
||||
_sendImages();
|
||||
|
||||
@@ -568,7 +574,10 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
|
||||
_sendImages() {
|
||||
Future.delayed(const Duration(seconds: 1), () async {
|
||||
var pictures = await MyApp.isarInstance.pictures.where().filter().tourIdEqualTo(widget.tour.id).findAll();
|
||||
final box = MyApp.objectBoxStore.box<Picture>();
|
||||
final query = box.query(Picture_.tourId.equals(widget.tour.id)).build();
|
||||
var pictures = query.find();
|
||||
query.close();
|
||||
|
||||
if (pictures.isNotEmpty) {
|
||||
for (var picture in pictures) {
|
||||
@@ -583,9 +592,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
payload: PublishPayloadMessage(topic: "pic", message: message.toJson(), acknowledgeRequired: true),
|
||||
);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.pictures.delete(picture.id);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<Picture>();
|
||||
box.remove(picture.id);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -604,9 +612,8 @@ class _TaskListPageState extends State<TaskListPage> with ProducerMixin {
|
||||
|
||||
if (jobFinished) {
|
||||
widget.job.state = 2;
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.jobs.put(widget.job);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
box.put(widget.job);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+12
-27
@@ -5,20 +5,12 @@ import 'package:synchronized/synchronized.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:geolocator/geolocator.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:shared_map/shared_map.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
import 'package:stadtbote/model/enqueued_message.dart';
|
||||
import 'package:stadtbote/model/log_entry.dart';
|
||||
import 'package:stadtbote/model/chat_message.dart';
|
||||
import 'package:stadtbote/model/pictures.dart';
|
||||
import 'package:stadtbote/model/rank.dart';
|
||||
import 'package:stadtbote/model/location_status.dart';
|
||||
import 'package:stadtbote/model/task_info.dart';
|
||||
import 'package:stadtbote/popups/accept_jobs_popup.dart';
|
||||
import 'package:stadtbote/tools/colored_safe_area.dart';
|
||||
import 'package:stadtbote/model/session_status.dart';
|
||||
import 'package:stadtbote/tools/connection_status.dart';
|
||||
import 'package:stadtbote/tools/messages/job_deleted_message.dart';
|
||||
import 'package:stadtbote/tools/messages/job_received_message.dart';
|
||||
@@ -31,6 +23,7 @@ import 'content_views/main_page.dart';
|
||||
import 'content_views/utils/content_view_widget.dart';
|
||||
import 'content_views/utils/widget_stack.dart';
|
||||
import 'model/job.dart';
|
||||
import 'objectbox.g.dart';
|
||||
import 'tools/constants.dart';
|
||||
import 'tools/util.dart';
|
||||
|
||||
@@ -62,17 +55,7 @@ Future<void> main() async {
|
||||
MQClient.instance.declareQueue(Constants.messageTopicBWVEnabled);
|
||||
|
||||
final dir = await getApplicationDocumentsDirectory();
|
||||
MyApp.isarInstance = await Isar.open([
|
||||
SessionStatusSchema,
|
||||
LocationStatusSchema,
|
||||
JobSchema,
|
||||
TaskInfoSchema,
|
||||
ChatMessageSchema,
|
||||
EnqueuedMessageSchema,
|
||||
LogEntrySchema,
|
||||
RankingSchema,
|
||||
PictureSchema
|
||||
], directory: dir.path, name: "database_v1");
|
||||
MyApp.objectBoxStore = await openStore(directory: dir.path);
|
||||
|
||||
await _clearLog();
|
||||
|
||||
@@ -85,9 +68,12 @@ Future<void> main() async {
|
||||
Future<void> _clearLog() async {
|
||||
var dateTime = DateTime.now().add(const Duration(days: -7));
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.logEntrys.where().filter().timeLessThan(dateTime).deleteAll();
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<LogEntry>();
|
||||
final query = box.query(LogEntry_.time.lessThan(dateTime.millisecondsSinceEpoch)).build();
|
||||
final oldEntries = query.find();
|
||||
query.close();
|
||||
|
||||
box.removeMany(oldEntries.map((e) => e.id).toList());
|
||||
}
|
||||
|
||||
void _traceUncaughtExceptions(Object error, StackTrace stackTrace) {
|
||||
@@ -100,7 +86,7 @@ class MyApp extends StatefulWidget {
|
||||
|
||||
static final appNavigatorKey = GlobalKey<NavigatorState>();
|
||||
|
||||
static late Isar isarInstance;
|
||||
static late Store objectBoxStore;
|
||||
|
||||
static Position? _currentPosition;
|
||||
static final Lock _positionLock = Lock();
|
||||
@@ -394,12 +380,11 @@ class _MainState extends State<Main> with SingleTickerProviderStateMixin, Produc
|
||||
callback: (message) async {
|
||||
var removeJobMessage = message.payload as RemoveJobMessage;
|
||||
|
||||
var job = await MyApp.isarInstance.jobs.where().filter().idEqualTo(removeJobMessage.id).findFirst();
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
var job = box.get(removeJobMessage.id);
|
||||
|
||||
if (job != null) {
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.jobs.where().filter().idEqualTo(removeJobMessage.id).deleteAll();
|
||||
});
|
||||
box.remove(removeJobMessage.id);
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicJobDeleted,
|
||||
|
||||
+26
-11
@@ -1,14 +1,11 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
import 'package:stadtbote/main.dart';
|
||||
import 'package:stadtbote/tools/util.dart';
|
||||
|
||||
part 'chat_message.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class ChatMessage {
|
||||
late Id id;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late int time;
|
||||
|
||||
@@ -18,16 +15,34 @@ class ChatMessage {
|
||||
|
||||
late String text;
|
||||
|
||||
late bool? read = false;
|
||||
bool read = false;
|
||||
|
||||
ChatMessage();
|
||||
|
||||
factory ChatMessage.fromJson(Map<String, dynamic> json) => _$ChatMessageFromJson(json);
|
||||
factory ChatMessage.fromJson(Map<String, dynamic> json) {
|
||||
final message = ChatMessage();
|
||||
message.id = json['id'] as int? ?? 0;
|
||||
message.time = json['time'] as int;
|
||||
message.from = json['from'] as String;
|
||||
message.subj = json['subj'] as String;
|
||||
message.text = json['text'] as String;
|
||||
message.read = json['read'] as bool? ?? false;
|
||||
return message;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$ChatMessageToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'time': time,
|
||||
'from': from,
|
||||
'subj': subj,
|
||||
'text': text,
|
||||
'read': read,
|
||||
};
|
||||
}
|
||||
|
||||
static Future<ChatMessage> mergeFromJson(Map<String, dynamic> json) async {
|
||||
var availableMessage = await MyApp.isarInstance.chatMessages.filter().idEqualTo(json["id"]).findFirst();
|
||||
var availableMessage = MyApp.objectBoxStore.box<ChatMessage>().get(json["id"] as int);
|
||||
|
||||
if (availableMessage != null) {
|
||||
availableMessage.id = json["id"];
|
||||
|
||||
@@ -1,982 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'chat_message.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetChatMessageCollection on Isar {
|
||||
IsarCollection<ChatMessage> get chatMessages => this.collection();
|
||||
}
|
||||
|
||||
const ChatMessageSchema = CollectionSchema(
|
||||
name: r'ChatMessage',
|
||||
id: 35366979330584919,
|
||||
properties: {
|
||||
r'from': PropertySchema(
|
||||
id: 0,
|
||||
name: r'from',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'read': PropertySchema(
|
||||
id: 1,
|
||||
name: r'read',
|
||||
type: IsarType.bool,
|
||||
),
|
||||
r'subj': PropertySchema(
|
||||
id: 2,
|
||||
name: r'subj',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'text': PropertySchema(
|
||||
id: 3,
|
||||
name: r'text',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'time': PropertySchema(
|
||||
id: 4,
|
||||
name: r'time',
|
||||
type: IsarType.long,
|
||||
)
|
||||
},
|
||||
estimateSize: _chatMessageEstimateSize,
|
||||
serialize: _chatMessageSerialize,
|
||||
deserialize: _chatMessageDeserialize,
|
||||
deserializeProp: _chatMessageDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {},
|
||||
getId: _chatMessageGetId,
|
||||
getLinks: _chatMessageGetLinks,
|
||||
attach: _chatMessageAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _chatMessageEstimateSize(
|
||||
ChatMessage object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.from.length * 3;
|
||||
bytesCount += 3 + object.subj.length * 3;
|
||||
bytesCount += 3 + object.text.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _chatMessageSerialize(
|
||||
ChatMessage object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.from);
|
||||
writer.writeBool(offsets[1], object.read);
|
||||
writer.writeString(offsets[2], object.subj);
|
||||
writer.writeString(offsets[3], object.text);
|
||||
writer.writeLong(offsets[4], object.time);
|
||||
}
|
||||
|
||||
ChatMessage _chatMessageDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = ChatMessage();
|
||||
object.from = reader.readString(offsets[0]);
|
||||
object.id = id;
|
||||
object.read = reader.readBoolOrNull(offsets[1]);
|
||||
object.subj = reader.readString(offsets[2]);
|
||||
object.text = reader.readString(offsets[3]);
|
||||
object.time = reader.readLong(offsets[4]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _chatMessageDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readBoolOrNull(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 3:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 4:
|
||||
return (reader.readLong(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
Id _chatMessageGetId(ChatMessage object) {
|
||||
return object.id;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _chatMessageGetLinks(ChatMessage object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _chatMessageAttach(
|
||||
IsarCollection<dynamic> col, Id id, ChatMessage object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension ChatMessageQueryWhereSort
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QWhere> {
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ChatMessageQueryWhere
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QWhereClause> {
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterWhereClause> idEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterWhereClause> idNotEqualTo(
|
||||
Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterWhereClause> idGreaterThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterWhereClause> idLessThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ChatMessageQueryFilter
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QFilterCondition> {
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'from',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'from',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'from',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'from',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'from',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'from',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'from',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'from',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> fromIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'from',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition>
|
||||
fromIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'from',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> idEqualTo(
|
||||
Id value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> idGreaterThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> idLessThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> idBetween(
|
||||
Id lower,
|
||||
Id upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> readIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'read',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition>
|
||||
readIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'read',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> readEqualTo(
|
||||
bool? value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'read',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'subj',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'subj',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'subj',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'subj',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'subj',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'subj',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'subj',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'subj',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> subjIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'subj',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition>
|
||||
subjIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'subj',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'text',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'text',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> textIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'text',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition>
|
||||
textIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'text',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> timeEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> timeGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> timeLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterFilterCondition> timeBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'time',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ChatMessageQueryObject
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QFilterCondition> {}
|
||||
|
||||
extension ChatMessageQueryLinks
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QFilterCondition> {}
|
||||
|
||||
extension ChatMessageQuerySortBy
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QSortBy> {
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByFrom() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'from', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByFromDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'from', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByRead() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'read', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByReadDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'read', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortBySubj() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'subj', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortBySubjDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'subj', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByText() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByTextDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByTime() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> sortByTimeDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ChatMessageQuerySortThenBy
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QSortThenBy> {
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByFrom() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'from', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByFromDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'from', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByRead() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'read', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByReadDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'read', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenBySubj() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'subj', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenBySubjDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'subj', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByText() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByTextDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByTime() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QAfterSortBy> thenByTimeDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ChatMessageQueryWhereDistinct
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QDistinct> {
|
||||
QueryBuilder<ChatMessage, ChatMessage, QDistinct> distinctByFrom(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'from', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QDistinct> distinctByRead() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'read');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QDistinct> distinctBySubj(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'subj', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QDistinct> distinctByText(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'text', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, ChatMessage, QDistinct> distinctByTime() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'time');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ChatMessageQueryProperty
|
||||
on QueryBuilder<ChatMessage, ChatMessage, QQueryProperty> {
|
||||
QueryBuilder<ChatMessage, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, String, QQueryOperations> fromProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'from');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, bool?, QQueryOperations> readProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'read');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, String, QQueryOperations> subjProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'subj');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, String, QQueryOperations> textProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'text');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ChatMessage, int, QQueryOperations> timeProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'time');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
ChatMessage _$ChatMessageFromJson(Map<String, dynamic> json) => ChatMessage()
|
||||
..id = (json['id'] as num).toInt()
|
||||
..time = (json['time'] as num).toInt()
|
||||
..from = json['from'] as String
|
||||
..subj = json['subj'] as String
|
||||
..text = json['text'] as String
|
||||
..read = json['read'] as bool?;
|
||||
|
||||
Map<String, dynamic> _$ChatMessageToJson(ChatMessage instance) =>
|
||||
<String, dynamic>{
|
||||
'id': instance.id,
|
||||
'time': instance.time,
|
||||
'from': instance.from,
|
||||
'subj': instance.subj,
|
||||
'text': instance.text,
|
||||
'read': instance.read,
|
||||
};
|
||||
@@ -1,10 +1,9 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
part 'enqueued_message.g.dart';
|
||||
|
||||
@collection
|
||||
@Entity()
|
||||
class EnqueuedMessage {
|
||||
Id id = DateTime.now().millisecondsSinceEpoch;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late String messageId;
|
||||
|
||||
@@ -12,6 +11,6 @@ class EnqueuedMessage {
|
||||
|
||||
late String payload;
|
||||
|
||||
EnqueuedMessage({required this.messageId});
|
||||
EnqueuedMessage();
|
||||
}
|
||||
|
||||
@@ -1,819 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'enqueued_message.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetEnqueuedMessageCollection on Isar {
|
||||
IsarCollection<EnqueuedMessage> get enqueuedMessages => this.collection();
|
||||
}
|
||||
|
||||
const EnqueuedMessageSchema = CollectionSchema(
|
||||
name: r'EnqueuedMessage',
|
||||
id: 884922652682878785,
|
||||
properties: {
|
||||
r'messageId': PropertySchema(
|
||||
id: 0,
|
||||
name: r'messageId',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'payload': PropertySchema(
|
||||
id: 1,
|
||||
name: r'payload',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'topic': PropertySchema(
|
||||
id: 2,
|
||||
name: r'topic',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _enqueuedMessageEstimateSize,
|
||||
serialize: _enqueuedMessageSerialize,
|
||||
deserialize: _enqueuedMessageDeserialize,
|
||||
deserializeProp: _enqueuedMessageDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {},
|
||||
getId: _enqueuedMessageGetId,
|
||||
getLinks: _enqueuedMessageGetLinks,
|
||||
attach: _enqueuedMessageAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _enqueuedMessageEstimateSize(
|
||||
EnqueuedMessage object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.messageId.length * 3;
|
||||
bytesCount += 3 + object.payload.length * 3;
|
||||
bytesCount += 3 + object.topic.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _enqueuedMessageSerialize(
|
||||
EnqueuedMessage object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.messageId);
|
||||
writer.writeString(offsets[1], object.payload);
|
||||
writer.writeString(offsets[2], object.topic);
|
||||
}
|
||||
|
||||
EnqueuedMessage _enqueuedMessageDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = EnqueuedMessage(
|
||||
messageId: reader.readString(offsets[0]),
|
||||
);
|
||||
object.id = id;
|
||||
object.payload = reader.readString(offsets[1]);
|
||||
object.topic = reader.readString(offsets[2]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _enqueuedMessageDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readString(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
Id _enqueuedMessageGetId(EnqueuedMessage object) {
|
||||
return object.id;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _enqueuedMessageGetLinks(EnqueuedMessage object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _enqueuedMessageAttach(
|
||||
IsarCollection<dynamic> col, Id id, EnqueuedMessage object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQueryWhereSort
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QWhere> {
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQueryWhere
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QWhereClause> {
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterWhereClause> idEqualTo(
|
||||
Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterWhereClause>
|
||||
idNotEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterWhereClause>
|
||||
idGreaterThan(Id id, {bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterWhereClause> idLessThan(
|
||||
Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQueryFilter
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QFilterCondition> {
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
idEqualTo(Id value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
idGreaterThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
idLessThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
idBetween(
|
||||
Id lower,
|
||||
Id upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'messageId',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'messageId',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'messageId',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'messageId',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'messageId',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'messageId',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'messageId',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'messageId',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'messageId',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
messageIdIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'messageId',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'payload',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'payload',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'payload',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'payload',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'payload',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'payload',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'payload',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'payload',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'payload',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
payloadIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'payload',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'topic',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'topic',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'topic',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'topic',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'topic',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'topic',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'topic',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'topic',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'topic',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterFilterCondition>
|
||||
topicIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'topic',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQueryObject
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QFilterCondition> {}
|
||||
|
||||
extension EnqueuedMessageQueryLinks
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QFilterCondition> {}
|
||||
|
||||
extension EnqueuedMessageQuerySortBy
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QSortBy> {
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
sortByMessageId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'messageId', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
sortByMessageIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'messageId', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy> sortByPayload() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'payload', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
sortByPayloadDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'payload', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy> sortByTopic() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'topic', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
sortByTopicDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'topic', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQuerySortThenBy
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QSortThenBy> {
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
thenByMessageId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'messageId', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
thenByMessageIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'messageId', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy> thenByPayload() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'payload', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
thenByPayloadDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'payload', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy> thenByTopic() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'topic', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QAfterSortBy>
|
||||
thenByTopicDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'topic', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQueryWhereDistinct
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QDistinct> {
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QDistinct> distinctByMessageId(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'messageId', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QDistinct> distinctByPayload(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'payload', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, EnqueuedMessage, QDistinct> distinctByTopic(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'topic', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension EnqueuedMessageQueryProperty
|
||||
on QueryBuilder<EnqueuedMessage, EnqueuedMessage, QQueryProperty> {
|
||||
QueryBuilder<EnqueuedMessage, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, String, QQueryOperations> messageIdProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'messageId');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, String, QQueryOperations> payloadProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'payload');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<EnqueuedMessage, String, QQueryOperations> topicProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'topic');
|
||||
});
|
||||
}
|
||||
}
|
||||
+52
-23
@@ -1,41 +1,70 @@
|
||||
import 'dart:convert';
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
import 'package:stadtbote/model/job_tour.dart';
|
||||
import 'package:stadtbote/model/tour_position.dart';
|
||||
import 'package:stadtbote/model/tour_task.dart';
|
||||
|
||||
part 'job.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class Job with ProducerMixin {
|
||||
late Id id;
|
||||
@JsonKey(name: 'ver')
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late String ver;
|
||||
@JsonKey(name: 'state')
|
||||
late int state;
|
||||
@JsonKey(name: 'cr_filter')
|
||||
late String? crFilter;
|
||||
@JsonKey(name: 'ordertime')
|
||||
String? crFilter;
|
||||
late int ordertime;
|
||||
@JsonKey(name: 'offs_warn')
|
||||
late int offsWarn;
|
||||
@JsonKey(name: 'global')
|
||||
late bool global;
|
||||
@JsonKey(name: 'vht_id')
|
||||
late int vhtId;
|
||||
@JsonKey(name: 'rem')
|
||||
late String rem;
|
||||
@JsonKey(name: 'delayOrderTime')
|
||||
late int delayOrderTime;
|
||||
@JsonKey(name: 'tours')
|
||||
late List<JobTour> tours;
|
||||
|
||||
// Store tours as JSON string for ObjectBox
|
||||
String toursJson = '[]';
|
||||
|
||||
@Transient()
|
||||
List<JobTour> get tours {
|
||||
final List<dynamic> decoded = jsonDecode(toursJson);
|
||||
return decoded.map((e) => JobTour.fromJson(e as Map<String, dynamic>)).toList();
|
||||
}
|
||||
|
||||
set tours(List<JobTour> value) {
|
||||
toursJson = jsonEncode(value.map((e) => e.toJson()).toList());
|
||||
}
|
||||
|
||||
Job();
|
||||
|
||||
factory Job.fromJson(Map<String, dynamic> json) => _$JobFromJson(json);
|
||||
factory Job.fromJson(Map<String, dynamic> json) {
|
||||
final job = Job();
|
||||
job.id = json['id'] as int? ?? 0;
|
||||
job.ver = json['ver'] as String;
|
||||
job.state = json['state'] as int;
|
||||
job.crFilter = json['cr_filter'] as String?;
|
||||
job.ordertime = json['ordertime'] as int;
|
||||
job.offsWarn = json['offs_warn'] as int;
|
||||
job.global = json['global'] as bool;
|
||||
job.vhtId = json['vht_id'] as int;
|
||||
job.rem = json['rem'] as String;
|
||||
job.delayOrderTime = json['delayOrderTime'] as int;
|
||||
job.tours = (json['tours'] as List<dynamic>)
|
||||
.map((e) => JobTour.fromJson(e as Map<String, dynamic>))
|
||||
.toList();
|
||||
return job;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$JobToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'ver': ver,
|
||||
'state': state,
|
||||
'cr_filter': crFilter,
|
||||
'ordertime': ordertime,
|
||||
'offs_warn': offsWarn,
|
||||
'global': global,
|
||||
'vht_id': vhtId,
|
||||
'rem': rem,
|
||||
'delayOrderTime': delayOrderTime,
|
||||
'tours': tours.map((e) => e.toJson()).toList(),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
+44
-12
@@ -1,12 +1,6 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:stadtbote/model/tour_position.dart';
|
||||
import 'package:stadtbote/model/tour_task.dart';
|
||||
|
||||
part 'job_tour.g.dart';
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class JobTour {
|
||||
late int id;
|
||||
late int sort;
|
||||
@@ -14,17 +8,55 @@ class JobTour {
|
||||
late String mode;
|
||||
late String comp;
|
||||
late String person;
|
||||
late String? phone;
|
||||
String? phone;
|
||||
late String street;
|
||||
late String city;
|
||||
late String? com;
|
||||
late TourPosition? pos;
|
||||
String? com;
|
||||
TourPosition? pos;
|
||||
late String rem;
|
||||
late List<TourTask>? tasks;
|
||||
List<TourTask>? tasks;
|
||||
|
||||
JobTour();
|
||||
|
||||
factory JobTour.fromJson(Map<String, dynamic> json) => _$JobTourFromJson(json);
|
||||
factory JobTour.fromJson(Map<String, dynamic> json) {
|
||||
final tour = JobTour();
|
||||
tour.id = json['id'] as int;
|
||||
tour.sort = json['sort'] as int;
|
||||
tour.state = json['state'] as int;
|
||||
tour.mode = json['mode'] as String;
|
||||
tour.comp = json['comp'] as String;
|
||||
tour.person = json['person'] as String;
|
||||
tour.phone = json['phone'] as String?;
|
||||
tour.street = json['street'] as String;
|
||||
tour.city = json['city'] as String;
|
||||
tour.com = json['com'] as String?;
|
||||
tour.pos = json['pos'] != null
|
||||
? TourPosition.fromJson(json['pos'] as Map<String, dynamic>)
|
||||
: null;
|
||||
tour.rem = json['rem'] as String;
|
||||
tour.tasks = json['tasks'] != null
|
||||
? (json['tasks'] as List<dynamic>)
|
||||
.map((e) => TourTask.fromJson(e as Map<String, dynamic>))
|
||||
.toList()
|
||||
: null;
|
||||
return tour;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$JobTourToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'sort': sort,
|
||||
'state': state,
|
||||
'mode': mode,
|
||||
'comp': comp,
|
||||
'person': person,
|
||||
'phone': phone,
|
||||
'street': street,
|
||||
'city': city,
|
||||
'com': com,
|
||||
'pos': pos?.toJson(),
|
||||
'rem': rem,
|
||||
'tasks': tasks?.map((e) => e.toJson()).toList(),
|
||||
};
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1,23 +1,33 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
part 'location_status.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class LocationStatus {
|
||||
Id? id = 0;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late String zip;
|
||||
|
||||
late String area;
|
||||
|
||||
@JsonKey(name:'zip_real')
|
||||
late String zipReal;
|
||||
|
||||
LocationStatus();
|
||||
|
||||
factory LocationStatus.fromJson(Map<String, dynamic> json) => _$LocationStatusFromJson(json);
|
||||
factory LocationStatus.fromJson(Map<String, dynamic> json) {
|
||||
final status = LocationStatus();
|
||||
status.id = json['id'] as int? ?? 0;
|
||||
status.zip = json['zip'] as String;
|
||||
status.area = json['area'] as String;
|
||||
status.zipReal = json['zip_real'] as String;
|
||||
return status;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$LocationStatusToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'zip': zip,
|
||||
'area': area,
|
||||
'zip_real': zipReal,
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -1,849 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'location_status.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetLocationStatusCollection on Isar {
|
||||
IsarCollection<LocationStatus> get locationStatus => this.collection();
|
||||
}
|
||||
|
||||
const LocationStatusSchema = CollectionSchema(
|
||||
name: r'LocationStatus',
|
||||
id: 8870762975868385860,
|
||||
properties: {
|
||||
r'area': PropertySchema(
|
||||
id: 0,
|
||||
name: r'area',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'zip': PropertySchema(
|
||||
id: 1,
|
||||
name: r'zip',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'zipReal': PropertySchema(
|
||||
id: 2,
|
||||
name: r'zipReal',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _locationStatusEstimateSize,
|
||||
serialize: _locationStatusSerialize,
|
||||
deserialize: _locationStatusDeserialize,
|
||||
deserializeProp: _locationStatusDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {},
|
||||
getId: _locationStatusGetId,
|
||||
getLinks: _locationStatusGetLinks,
|
||||
attach: _locationStatusAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _locationStatusEstimateSize(
|
||||
LocationStatus object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.area.length * 3;
|
||||
bytesCount += 3 + object.zip.length * 3;
|
||||
bytesCount += 3 + object.zipReal.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _locationStatusSerialize(
|
||||
LocationStatus object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.area);
|
||||
writer.writeString(offsets[1], object.zip);
|
||||
writer.writeString(offsets[2], object.zipReal);
|
||||
}
|
||||
|
||||
LocationStatus _locationStatusDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = LocationStatus();
|
||||
object.area = reader.readString(offsets[0]);
|
||||
object.id = id;
|
||||
object.zip = reader.readString(offsets[1]);
|
||||
object.zipReal = reader.readString(offsets[2]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _locationStatusDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readString(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
Id _locationStatusGetId(LocationStatus object) {
|
||||
return object.id ?? Isar.autoIncrement;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _locationStatusGetLinks(LocationStatus object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _locationStatusAttach(
|
||||
IsarCollection<dynamic> col, Id id, LocationStatus object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension LocationStatusQueryWhereSort
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QWhere> {
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LocationStatusQueryWhere
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QWhereClause> {
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterWhereClause> idEqualTo(
|
||||
Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterWhereClause> idNotEqualTo(
|
||||
Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterWhereClause> idGreaterThan(
|
||||
Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterWhereClause> idLessThan(
|
||||
Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LocationStatusQueryFilter
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QFilterCondition> {
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'area',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'area',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'area',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
areaIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'area',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
idIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'id',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
idIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'id',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition> idEqualTo(
|
||||
Id? value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
idGreaterThan(
|
||||
Id? value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
idLessThan(
|
||||
Id? value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition> idBetween(
|
||||
Id? lower,
|
||||
Id? upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'zip',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'zip',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'zip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'zipReal',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'zipReal',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zipReal',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterFilterCondition>
|
||||
zipRealIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'zipReal',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LocationStatusQueryObject
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QFilterCondition> {}
|
||||
|
||||
extension LocationStatusQueryLinks
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QFilterCondition> {}
|
||||
|
||||
extension LocationStatusQuerySortBy
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QSortBy> {
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> sortByArea() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'area', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> sortByAreaDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'area', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> sortByZip() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zip', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> sortByZipDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zip', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> sortByZipReal() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zipReal', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy>
|
||||
sortByZipRealDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zipReal', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LocationStatusQuerySortThenBy
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QSortThenBy> {
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenByArea() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'area', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenByAreaDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'area', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenByZip() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zip', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenByZipDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zip', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy> thenByZipReal() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zipReal', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QAfterSortBy>
|
||||
thenByZipRealDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'zipReal', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LocationStatusQueryWhereDistinct
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QDistinct> {
|
||||
QueryBuilder<LocationStatus, LocationStatus, QDistinct> distinctByArea(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'area', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QDistinct> distinctByZip(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'zip', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, LocationStatus, QDistinct> distinctByZipReal(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'zipReal', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LocationStatusQueryProperty
|
||||
on QueryBuilder<LocationStatus, LocationStatus, QQueryProperty> {
|
||||
QueryBuilder<LocationStatus, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, String, QQueryOperations> areaProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'area');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, String, QQueryOperations> zipProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'zip');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LocationStatus, String, QQueryOperations> zipRealProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'zipReal');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
LocationStatus _$LocationStatusFromJson(Map<String, dynamic> json) =>
|
||||
LocationStatus()
|
||||
..id = (json['id'] as num?)?.toInt()
|
||||
..zip = json['zip'] as String
|
||||
..area = json['area'] as String
|
||||
..zipReal = json['zip_real'] as String;
|
||||
|
||||
Map<String, dynamic> _$LocationStatusToJson(LocationStatus instance) =>
|
||||
<String, dynamic>{
|
||||
'id': instance.id,
|
||||
'zip': instance.zip,
|
||||
'area': instance.area,
|
||||
'zip_real': instance.zipReal,
|
||||
};
|
||||
@@ -1,7 +1,4 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'log_entry.g.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
enum LogEntrySeverityEnum {
|
||||
info,
|
||||
@@ -9,21 +6,20 @@ enum LogEntrySeverityEnum {
|
||||
error
|
||||
}
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class LogEntry {
|
||||
late Id id = Isar.autoIncrement;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
@Property(type: PropertyType.date)
|
||||
late DateTime time;
|
||||
|
||||
@enumerated
|
||||
late LogEntrySeverityEnum severity;
|
||||
late int severity; // Store enum as int
|
||||
|
||||
late String text;
|
||||
|
||||
LogEntry();
|
||||
|
||||
factory LogEntry.fromJson(Map<String, dynamic> json) => _$LogEntryFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$LogEntryToJson(this);
|
||||
LogEntrySeverityEnum get severityEnum => LogEntrySeverityEnum.values[severity];
|
||||
set severityEnum(LogEntrySeverityEnum value) => severity = value.index;
|
||||
}
|
||||
@@ -1,662 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'log_entry.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetLogEntryCollection on Isar {
|
||||
IsarCollection<LogEntry> get logEntrys => this.collection();
|
||||
}
|
||||
|
||||
const LogEntrySchema = CollectionSchema(
|
||||
name: r'LogEntry',
|
||||
id: -8268688274231935295,
|
||||
properties: {
|
||||
r'severity': PropertySchema(
|
||||
id: 0,
|
||||
name: r'severity',
|
||||
type: IsarType.byte,
|
||||
enumMap: _LogEntryseverityEnumValueMap,
|
||||
),
|
||||
r'text': PropertySchema(
|
||||
id: 1,
|
||||
name: r'text',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'time': PropertySchema(
|
||||
id: 2,
|
||||
name: r'time',
|
||||
type: IsarType.dateTime,
|
||||
)
|
||||
},
|
||||
estimateSize: _logEntryEstimateSize,
|
||||
serialize: _logEntrySerialize,
|
||||
deserialize: _logEntryDeserialize,
|
||||
deserializeProp: _logEntryDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {},
|
||||
getId: _logEntryGetId,
|
||||
getLinks: _logEntryGetLinks,
|
||||
attach: _logEntryAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _logEntryEstimateSize(
|
||||
LogEntry object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.text.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _logEntrySerialize(
|
||||
LogEntry object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeByte(offsets[0], object.severity.index);
|
||||
writer.writeString(offsets[1], object.text);
|
||||
writer.writeDateTime(offsets[2], object.time);
|
||||
}
|
||||
|
||||
LogEntry _logEntryDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = LogEntry();
|
||||
object.id = id;
|
||||
object.severity =
|
||||
_LogEntryseverityValueEnumMap[reader.readByteOrNull(offsets[0])] ??
|
||||
LogEntrySeverityEnum.info;
|
||||
object.text = reader.readString(offsets[1]);
|
||||
object.time = reader.readDateTime(offsets[2]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _logEntryDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (_LogEntryseverityValueEnumMap[reader.readByteOrNull(offset)] ??
|
||||
LogEntrySeverityEnum.info) as P;
|
||||
case 1:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readDateTime(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
const _LogEntryseverityEnumValueMap = {
|
||||
'info': 0,
|
||||
'debug': 1,
|
||||
'error': 2,
|
||||
};
|
||||
const _LogEntryseverityValueEnumMap = {
|
||||
0: LogEntrySeverityEnum.info,
|
||||
1: LogEntrySeverityEnum.debug,
|
||||
2: LogEntrySeverityEnum.error,
|
||||
};
|
||||
|
||||
Id _logEntryGetId(LogEntry object) {
|
||||
return object.id;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _logEntryGetLinks(LogEntry object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _logEntryAttach(IsarCollection<dynamic> col, Id id, LogEntry object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension LogEntryQueryWhereSort on QueryBuilder<LogEntry, LogEntry, QWhere> {
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LogEntryQueryWhere on QueryBuilder<LogEntry, LogEntry, QWhereClause> {
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterWhereClause> idEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterWhereClause> idNotEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterWhereClause> idGreaterThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterWhereClause> idLessThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LogEntryQueryFilter
|
||||
on QueryBuilder<LogEntry, LogEntry, QFilterCondition> {
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> idEqualTo(Id value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> idGreaterThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> idLessThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> idBetween(
|
||||
Id lower,
|
||||
Id upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> severityEqualTo(
|
||||
LogEntrySeverityEnum value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'severity',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> severityGreaterThan(
|
||||
LogEntrySeverityEnum value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'severity',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> severityLessThan(
|
||||
LogEntrySeverityEnum value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'severity',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> severityBetween(
|
||||
LogEntrySeverityEnum lower,
|
||||
LogEntrySeverityEnum upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'severity',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'text',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'text',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'text',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'text',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> textIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'text',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> timeEqualTo(
|
||||
DateTime value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> timeGreaterThan(
|
||||
DateTime value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> timeLessThan(
|
||||
DateTime value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterFilterCondition> timeBetween(
|
||||
DateTime lower,
|
||||
DateTime upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'time',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LogEntryQueryObject
|
||||
on QueryBuilder<LogEntry, LogEntry, QFilterCondition> {}
|
||||
|
||||
extension LogEntryQueryLinks
|
||||
on QueryBuilder<LogEntry, LogEntry, QFilterCondition> {}
|
||||
|
||||
extension LogEntryQuerySortBy on QueryBuilder<LogEntry, LogEntry, QSortBy> {
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> sortBySeverity() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'severity', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> sortBySeverityDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'severity', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> sortByText() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> sortByTextDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> sortByTime() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> sortByTimeDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LogEntryQuerySortThenBy
|
||||
on QueryBuilder<LogEntry, LogEntry, QSortThenBy> {
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenBySeverity() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'severity', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenBySeverityDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'severity', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenByText() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenByTextDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'text', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenByTime() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QAfterSortBy> thenByTimeDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'time', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LogEntryQueryWhereDistinct
|
||||
on QueryBuilder<LogEntry, LogEntry, QDistinct> {
|
||||
QueryBuilder<LogEntry, LogEntry, QDistinct> distinctBySeverity() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'severity');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QDistinct> distinctByText(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'text', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntry, QDistinct> distinctByTime() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'time');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension LogEntryQueryProperty
|
||||
on QueryBuilder<LogEntry, LogEntry, QQueryProperty> {
|
||||
QueryBuilder<LogEntry, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, LogEntrySeverityEnum, QQueryOperations>
|
||||
severityProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'severity');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, String, QQueryOperations> textProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'text');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<LogEntry, DateTime, QQueryOperations> timeProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'time');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
LogEntry _$LogEntryFromJson(Map<String, dynamic> json) => LogEntry()
|
||||
..id = (json['id'] as num).toInt()
|
||||
..time = DateTime.parse(json['time'] as String)
|
||||
..severity = $enumDecode(_$LogEntrySeverityEnumEnumMap, json['severity'])
|
||||
..text = json['text'] as String;
|
||||
|
||||
Map<String, dynamic> _$LogEntryToJson(LogEntry instance) => <String, dynamic>{
|
||||
'id': instance.id,
|
||||
'time': instance.time.toIso8601String(),
|
||||
'severity': _$LogEntrySeverityEnumEnumMap[instance.severity]!,
|
||||
'text': instance.text,
|
||||
};
|
||||
|
||||
const _$LogEntrySeverityEnumEnumMap = {
|
||||
LogEntrySeverityEnum.info: 'info',
|
||||
LogEntrySeverityEnum.debug: 'debug',
|
||||
LogEntrySeverityEnum.error: 'error',
|
||||
};
|
||||
@@ -1,10 +1,9 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
part 'pictures.g.dart';
|
||||
|
||||
@collection
|
||||
@Entity()
|
||||
class Picture {
|
||||
late Id id;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late int tourId;
|
||||
|
||||
@@ -12,8 +11,6 @@ class Picture {
|
||||
|
||||
late String data;
|
||||
|
||||
Picture() {
|
||||
id = Isar.autoIncrement;
|
||||
}
|
||||
Picture();
|
||||
}
|
||||
|
||||
@@ -1,623 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'pictures.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetPictureCollection on Isar {
|
||||
IsarCollection<Picture> get pictures => this.collection();
|
||||
}
|
||||
|
||||
const PictureSchema = CollectionSchema(
|
||||
name: r'Picture',
|
||||
id: 985668904418580614,
|
||||
properties: {
|
||||
r'data': PropertySchema(
|
||||
id: 0,
|
||||
name: r'data',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'number': PropertySchema(
|
||||
id: 1,
|
||||
name: r'number',
|
||||
type: IsarType.long,
|
||||
),
|
||||
r'tourId': PropertySchema(
|
||||
id: 2,
|
||||
name: r'tourId',
|
||||
type: IsarType.long,
|
||||
)
|
||||
},
|
||||
estimateSize: _pictureEstimateSize,
|
||||
serialize: _pictureSerialize,
|
||||
deserialize: _pictureDeserialize,
|
||||
deserializeProp: _pictureDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {},
|
||||
getId: _pictureGetId,
|
||||
getLinks: _pictureGetLinks,
|
||||
attach: _pictureAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _pictureEstimateSize(
|
||||
Picture object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.data.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _pictureSerialize(
|
||||
Picture object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.data);
|
||||
writer.writeLong(offsets[1], object.number);
|
||||
writer.writeLong(offsets[2], object.tourId);
|
||||
}
|
||||
|
||||
Picture _pictureDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = Picture();
|
||||
object.data = reader.readString(offsets[0]);
|
||||
object.id = id;
|
||||
object.number = reader.readLong(offsets[1]);
|
||||
object.tourId = reader.readLong(offsets[2]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _pictureDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readLong(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readLong(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
Id _pictureGetId(Picture object) {
|
||||
return object.id;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _pictureGetLinks(Picture object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _pictureAttach(IsarCollection<dynamic> col, Id id, Picture object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension PictureQueryWhereSort on QueryBuilder<Picture, Picture, QWhere> {
|
||||
QueryBuilder<Picture, Picture, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension PictureQueryWhere on QueryBuilder<Picture, Picture, QWhereClause> {
|
||||
QueryBuilder<Picture, Picture, QAfterWhereClause> idEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterWhereClause> idNotEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterWhereClause> idGreaterThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterWhereClause> idLessThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension PictureQueryFilter
|
||||
on QueryBuilder<Picture, Picture, QFilterCondition> {
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'data',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'data',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'data',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'data',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'data',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'data',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'data',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'data',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'data',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> dataIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'data',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> idEqualTo(Id value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> idGreaterThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> idLessThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> idBetween(
|
||||
Id lower,
|
||||
Id upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> numberEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'number',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> numberGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'number',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> numberLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'number',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> numberBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'number',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> tourIdEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'tourId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> tourIdGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'tourId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> tourIdLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'tourId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterFilterCondition> tourIdBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'tourId',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension PictureQueryObject
|
||||
on QueryBuilder<Picture, Picture, QFilterCondition> {}
|
||||
|
||||
extension PictureQueryLinks
|
||||
on QueryBuilder<Picture, Picture, QFilterCondition> {}
|
||||
|
||||
extension PictureQuerySortBy on QueryBuilder<Picture, Picture, QSortBy> {
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> sortByData() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'data', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> sortByDataDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'data', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> sortByNumber() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'number', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> sortByNumberDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'number', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> sortByTourId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'tourId', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> sortByTourIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'tourId', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension PictureQuerySortThenBy
|
||||
on QueryBuilder<Picture, Picture, QSortThenBy> {
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByData() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'data', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByDataDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'data', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByNumber() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'number', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByNumberDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'number', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByTourId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'tourId', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QAfterSortBy> thenByTourIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'tourId', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension PictureQueryWhereDistinct
|
||||
on QueryBuilder<Picture, Picture, QDistinct> {
|
||||
QueryBuilder<Picture, Picture, QDistinct> distinctByData(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'data', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QDistinct> distinctByNumber() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'number');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, Picture, QDistinct> distinctByTourId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'tourId');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension PictureQueryProperty
|
||||
on QueryBuilder<Picture, Picture, QQueryProperty> {
|
||||
QueryBuilder<Picture, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, String, QQueryOperations> dataProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'data');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, int, QQueryOperations> numberProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'number');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Picture, int, QQueryOperations> tourIdProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'tourId');
|
||||
});
|
||||
}
|
||||
}
|
||||
+67
-29
@@ -1,57 +1,95 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'dart:convert';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
part 'rank.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class Ranking {
|
||||
@JsonValue(0)
|
||||
late Id? id = Isar.autoIncrement;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
@JsonKey(name: "ranking")
|
||||
late List<Rank> ranks;
|
||||
// Store ranks as JSON string
|
||||
String ranksJson = '[]';
|
||||
|
||||
@Transient()
|
||||
List<Rank> get ranks {
|
||||
final List<dynamic> decoded = jsonDecode(ranksJson);
|
||||
return decoded.map((e) => Rank.fromJson(e as Map<String, dynamic>)).toList();
|
||||
}
|
||||
|
||||
set ranks(List<Rank> value) {
|
||||
ranksJson = jsonEncode(value.map((e) => e.toJson()).toList());
|
||||
}
|
||||
|
||||
Ranking();
|
||||
|
||||
factory Ranking.fromJson(Map<String, dynamic> json) => _$RankingFromJson(json);
|
||||
factory Ranking.fromJson(Map<String, dynamic> json) {
|
||||
final ranking = Ranking();
|
||||
ranking.id = json['id'] as int? ?? 0;
|
||||
ranking.ranks = (json['ranking'] as List<dynamic>)
|
||||
.map((e) => Rank.fromJson(e as Map<String, dynamic>))
|
||||
.toList();
|
||||
return ranking;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$RankingToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'ranking': ranks.map((e) => e.toJson()).toList(),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class Rank {
|
||||
late int id;
|
||||
|
||||
late String zip;
|
||||
|
||||
String? area;
|
||||
|
||||
late List<Vehicle> vehicles;
|
||||
|
||||
Rank();
|
||||
|
||||
factory Rank.fromJson(Map<String, dynamic> json) => _$RankFromJson(json);
|
||||
factory Rank.fromJson(Map<String, dynamic> json) {
|
||||
final rank = Rank();
|
||||
rank.id = json['id'] as int;
|
||||
rank.zip = json['zip'] as String;
|
||||
rank.area = json['area'] as String?;
|
||||
rank.vehicles = (json['vehicles'] as List<dynamic>)
|
||||
.map((e) => Vehicle.fromJson(e as Map<String, dynamic>))
|
||||
.toList();
|
||||
return rank;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$RankToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'zip': zip,
|
||||
'area': area,
|
||||
'vehicles': vehicles.map((e) => e.toJson()).toList(),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class Vehicle {
|
||||
late int id;
|
||||
|
||||
late int type;
|
||||
|
||||
late int? cnt;
|
||||
|
||||
@JsonKey(name: 'self', defaultValue: false)
|
||||
late bool? self;
|
||||
int? cnt;
|
||||
bool? self;
|
||||
|
||||
Vehicle();
|
||||
|
||||
factory Vehicle.fromJson(Map<String, dynamic> json) => _$VehicleFromJson(json);
|
||||
factory Vehicle.fromJson(Map<String, dynamic> json) {
|
||||
final vehicle = Vehicle();
|
||||
vehicle.id = json['id'] as int;
|
||||
vehicle.type = json['type'] as int;
|
||||
vehicle.cnt = json['cnt'] as int?;
|
||||
vehicle.self = json['self'] as bool? ?? false;
|
||||
return vehicle;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$VehicleToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'type': type,
|
||||
'cnt': cnt,
|
||||
'self': self,
|
||||
};
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1,37 +1,52 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
part 'session_status.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class SessionStatus {
|
||||
final Id id = 0;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
@JsonKey(name: 'cust_id')
|
||||
late int custId;
|
||||
@JsonKey(name: 'hq_id')
|
||||
late int hqId;
|
||||
@JsonKey(name: 'usr_id')
|
||||
late int usrId;
|
||||
@JsonKey(name: 'cr_id')
|
||||
late int crId;
|
||||
@JsonKey(name: 'sid')
|
||||
late String sid;
|
||||
@JsonKey(name: 'vht_id')
|
||||
late int vhtId;
|
||||
@JsonKey(name: 'loc_zip')
|
||||
late String locZip;
|
||||
@JsonKey(name: 'server_version')
|
||||
late String serverVersion;
|
||||
@JsonKey(name: 'server_instance')
|
||||
late String serverInstance;
|
||||
@JsonKey(name: 'bwv', defaultValue: false, required: false)
|
||||
late bool bwvEnabled;
|
||||
bool bwvEnabled = false;
|
||||
|
||||
SessionStatus();
|
||||
|
||||
factory SessionStatus.fromJson(Map<String, dynamic> json) => _$SessionStatusFromJson(json);
|
||||
factory SessionStatus.fromJson(Map<String, dynamic> json) {
|
||||
final status = SessionStatus();
|
||||
status.id = json['id'] as int? ?? 0;
|
||||
status.custId = json['cust_id'] as int;
|
||||
status.hqId = json['hq_id'] as int;
|
||||
status.usrId = json['usr_id'] as int;
|
||||
status.crId = json['cr_id'] as int;
|
||||
status.sid = json['sid'] as String;
|
||||
status.vhtId = json['vht_id'] as int;
|
||||
status.locZip = json['loc_zip'] as String;
|
||||
status.serverVersion = json['server_version'] as String;
|
||||
status.serverInstance = json['server_instance'] as String;
|
||||
status.bwvEnabled = json['bwv'] as bool? ?? false;
|
||||
return status;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$SessionStatusToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'cust_id': custId,
|
||||
'hq_id': hqId,
|
||||
'usr_id': usrId,
|
||||
'cr_id': crId,
|
||||
'sid': sid,
|
||||
'vht_id': vhtId,
|
||||
'loc_zip': locZip,
|
||||
'server_version': serverVersion,
|
||||
'server_instance': serverInstance,
|
||||
'bwv': bwvEnabled,
|
||||
};
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
+40
-17
@@ -1,35 +1,58 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
|
||||
part 'status.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
@Entity()
|
||||
class Status {
|
||||
late Id? id;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late StatusPos pos;
|
||||
late String posZip;
|
||||
late String posArea;
|
||||
late String posZipReal;
|
||||
|
||||
Status();
|
||||
|
||||
factory Status.fromJson(Map<String, dynamic> json) => _$StatusFromJson(json);
|
||||
factory Status.fromJson(Map<String, dynamic> json) {
|
||||
final status = Status();
|
||||
status.id = json['id'] as int? ?? 0;
|
||||
final pos = json['pos'] as Map<String, dynamic>;
|
||||
status.posZip = pos['zip'] as String;
|
||||
status.posArea = pos['area'] as String;
|
||||
status.posZipReal = pos['zip_real'] as String;
|
||||
return status;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$StatusToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'id': id,
|
||||
'pos': {
|
||||
'zip': posZip,
|
||||
'area': posArea,
|
||||
'zip_real': posZipReal,
|
||||
},
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class StatusPos {
|
||||
late String zip;
|
||||
|
||||
late String area;
|
||||
|
||||
@JsonKey(name:'zip_real')
|
||||
late String zipReal;
|
||||
|
||||
StatusPos();
|
||||
|
||||
factory StatusPos.fromJson(Map<String, dynamic> json) => _$StatusPosFromJson(json);
|
||||
factory StatusPos.fromJson(Map<String, dynamic> json) {
|
||||
final pos = StatusPos();
|
||||
pos.zip = json['zip'] as String;
|
||||
pos.area = json['area'] as String;
|
||||
pos.zipReal = json['zip_real'] as String;
|
||||
return pos;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$StatusPosToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'zip': zip,
|
||||
'area': area,
|
||||
'zip_real': zipReal,
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -1,809 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'status.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetStatusCollection on Isar {
|
||||
IsarCollection<Status> get status => this.collection();
|
||||
}
|
||||
|
||||
const StatusSchema = CollectionSchema(
|
||||
name: r'Status',
|
||||
id: -8158262482337811485,
|
||||
properties: {
|
||||
r'pos': PropertySchema(
|
||||
id: 0,
|
||||
name: r'pos',
|
||||
type: IsarType.object,
|
||||
target: r'StatusPos',
|
||||
)
|
||||
},
|
||||
estimateSize: _statusEstimateSize,
|
||||
serialize: _statusSerialize,
|
||||
deserialize: _statusDeserialize,
|
||||
deserializeProp: _statusDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {r'StatusPos': StatusPosSchema},
|
||||
getId: _statusGetId,
|
||||
getLinks: _statusGetLinks,
|
||||
attach: _statusAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _statusEstimateSize(
|
||||
Status object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 +
|
||||
StatusPosSchema.estimateSize(
|
||||
object.pos, allOffsets[StatusPos]!, allOffsets);
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _statusSerialize(
|
||||
Status object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeObject<StatusPos>(
|
||||
offsets[0],
|
||||
allOffsets,
|
||||
StatusPosSchema.serialize,
|
||||
object.pos,
|
||||
);
|
||||
}
|
||||
|
||||
Status _statusDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = Status();
|
||||
object.id = id;
|
||||
object.pos = reader.readObjectOrNull<StatusPos>(
|
||||
offsets[0],
|
||||
StatusPosSchema.deserialize,
|
||||
allOffsets,
|
||||
) ??
|
||||
StatusPos();
|
||||
return object;
|
||||
}
|
||||
|
||||
P _statusDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readObjectOrNull<StatusPos>(
|
||||
offset,
|
||||
StatusPosSchema.deserialize,
|
||||
allOffsets,
|
||||
) ??
|
||||
StatusPos()) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
Id _statusGetId(Status object) {
|
||||
return object.id ?? Isar.autoIncrement;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _statusGetLinks(Status object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _statusAttach(IsarCollection<dynamic> col, Id id, Status object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension StatusQueryWhereSort on QueryBuilder<Status, Status, QWhere> {
|
||||
QueryBuilder<Status, Status, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusQueryWhere on QueryBuilder<Status, Status, QWhereClause> {
|
||||
QueryBuilder<Status, Status, QAfterWhereClause> idEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterWhereClause> idNotEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterWhereClause> idGreaterThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterWhereClause> idLessThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusQueryFilter on QueryBuilder<Status, Status, QFilterCondition> {
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> idIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'id',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> idIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'id',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> idEqualTo(Id? value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> idGreaterThan(
|
||||
Id? value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> idLessThan(
|
||||
Id? value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> idBetween(
|
||||
Id? lower,
|
||||
Id? upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusQueryObject on QueryBuilder<Status, Status, QFilterCondition> {
|
||||
QueryBuilder<Status, Status, QAfterFilterCondition> pos(
|
||||
FilterQuery<StatusPos> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.object(q, r'pos');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusQueryLinks on QueryBuilder<Status, Status, QFilterCondition> {}
|
||||
|
||||
extension StatusQuerySortBy on QueryBuilder<Status, Status, QSortBy> {}
|
||||
|
||||
extension StatusQuerySortThenBy on QueryBuilder<Status, Status, QSortThenBy> {
|
||||
QueryBuilder<Status, Status, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, Status, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusQueryWhereDistinct on QueryBuilder<Status, Status, QDistinct> {}
|
||||
|
||||
extension StatusQueryProperty on QueryBuilder<Status, Status, QQueryProperty> {
|
||||
QueryBuilder<Status, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Status, StatusPos, QQueryOperations> posProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'pos');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// **************************************************************************
|
||||
// IsarEmbeddedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const StatusPosSchema = Schema(
|
||||
name: r'StatusPos',
|
||||
id: 5472875660639986729,
|
||||
properties: {
|
||||
r'area': PropertySchema(
|
||||
id: 0,
|
||||
name: r'area',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'zip': PropertySchema(
|
||||
id: 1,
|
||||
name: r'zip',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'zipReal': PropertySchema(
|
||||
id: 2,
|
||||
name: r'zipReal',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _statusPosEstimateSize,
|
||||
serialize: _statusPosSerialize,
|
||||
deserialize: _statusPosDeserialize,
|
||||
deserializeProp: _statusPosDeserializeProp,
|
||||
);
|
||||
|
||||
int _statusPosEstimateSize(
|
||||
StatusPos object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.area.length * 3;
|
||||
bytesCount += 3 + object.zip.length * 3;
|
||||
bytesCount += 3 + object.zipReal.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _statusPosSerialize(
|
||||
StatusPos object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.area);
|
||||
writer.writeString(offsets[1], object.zip);
|
||||
writer.writeString(offsets[2], object.zipReal);
|
||||
}
|
||||
|
||||
StatusPos _statusPosDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = StatusPos();
|
||||
object.area = reader.readString(offsets[0]);
|
||||
object.zip = reader.readString(offsets[1]);
|
||||
object.zipReal = reader.readString(offsets[2]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _statusPosDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readString(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusPosQueryFilter
|
||||
on QueryBuilder<StatusPos, StatusPos, QFilterCondition> {
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'area',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'area',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'area',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'area',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> areaIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'area',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'zip',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'zip',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'zip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'zipReal',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'zipReal',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'zipReal',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition> zipRealIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zipReal',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<StatusPos, StatusPos, QAfterFilterCondition>
|
||||
zipRealIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'zipReal',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension StatusPosQueryObject
|
||||
on QueryBuilder<StatusPos, StatusPos, QFilterCondition> {}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
Status _$StatusFromJson(Map<String, dynamic> json) => Status()
|
||||
..id = (json['id'] as num?)?.toInt()
|
||||
..pos = StatusPos.fromJson(json['pos'] as Map<String, dynamic>);
|
||||
|
||||
Map<String, dynamic> _$StatusToJson(Status instance) => <String, dynamic>{
|
||||
'id': instance.id,
|
||||
'pos': instance.pos,
|
||||
};
|
||||
|
||||
StatusPos _$StatusPosFromJson(Map<String, dynamic> json) => StatusPos()
|
||||
..zip = json['zip'] as String
|
||||
..area = json['area'] as String
|
||||
..zipReal = json['zip_real'] as String;
|
||||
|
||||
Map<String, dynamic> _$StatusPosToJson(StatusPos instance) => <String, dynamic>{
|
||||
'zip': instance.zip,
|
||||
'area': instance.area,
|
||||
'zip_real': instance.zipReal,
|
||||
};
|
||||
@@ -1,24 +1,23 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:objectbox/objectbox.dart';
|
||||
import 'package:stadtbote/model/tour_task.dart';
|
||||
|
||||
import '../tools/util.dart';
|
||||
|
||||
part 'task_info.g.dart';
|
||||
|
||||
@collection
|
||||
@Entity()
|
||||
class TaskInfo {
|
||||
late Id id;
|
||||
@Id()
|
||||
int id = 0;
|
||||
|
||||
late int sId;
|
||||
|
||||
late String? additionalText;
|
||||
String? additionalText;
|
||||
|
||||
late String? answer;
|
||||
String? answer;
|
||||
|
||||
late bool completed;
|
||||
|
||||
@ignore
|
||||
late TourTask task;
|
||||
@Transient()
|
||||
TourTask? task;
|
||||
|
||||
TaskInfo();
|
||||
|
||||
|
||||
@@ -1,807 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'task_info.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarCollectionGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
extension GetTaskInfoCollection on Isar {
|
||||
IsarCollection<TaskInfo> get taskInfos => this.collection();
|
||||
}
|
||||
|
||||
const TaskInfoSchema = CollectionSchema(
|
||||
name: r'TaskInfo',
|
||||
id: 3341968002652240051,
|
||||
properties: {
|
||||
r'additionalText': PropertySchema(
|
||||
id: 0,
|
||||
name: r'additionalText',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'answer': PropertySchema(
|
||||
id: 1,
|
||||
name: r'answer',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'completed': PropertySchema(
|
||||
id: 2,
|
||||
name: r'completed',
|
||||
type: IsarType.bool,
|
||||
),
|
||||
r'sId': PropertySchema(
|
||||
id: 3,
|
||||
name: r'sId',
|
||||
type: IsarType.long,
|
||||
)
|
||||
},
|
||||
estimateSize: _taskInfoEstimateSize,
|
||||
serialize: _taskInfoSerialize,
|
||||
deserialize: _taskInfoDeserialize,
|
||||
deserializeProp: _taskInfoDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
embeddedSchemas: {},
|
||||
getId: _taskInfoGetId,
|
||||
getLinks: _taskInfoGetLinks,
|
||||
attach: _taskInfoAttach,
|
||||
version: '3.1.8',
|
||||
);
|
||||
|
||||
int _taskInfoEstimateSize(
|
||||
TaskInfo object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
{
|
||||
final value = object.additionalText;
|
||||
if (value != null) {
|
||||
bytesCount += 3 + value.length * 3;
|
||||
}
|
||||
}
|
||||
{
|
||||
final value = object.answer;
|
||||
if (value != null) {
|
||||
bytesCount += 3 + value.length * 3;
|
||||
}
|
||||
}
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _taskInfoSerialize(
|
||||
TaskInfo object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.additionalText);
|
||||
writer.writeString(offsets[1], object.answer);
|
||||
writer.writeBool(offsets[2], object.completed);
|
||||
writer.writeLong(offsets[3], object.sId);
|
||||
}
|
||||
|
||||
TaskInfo _taskInfoDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = TaskInfo();
|
||||
object.additionalText = reader.readStringOrNull(offsets[0]);
|
||||
object.answer = reader.readStringOrNull(offsets[1]);
|
||||
object.completed = reader.readBool(offsets[2]);
|
||||
object.id = id;
|
||||
object.sId = reader.readLong(offsets[3]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _taskInfoDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readStringOrNull(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readStringOrNull(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readBool(offset)) as P;
|
||||
case 3:
|
||||
return (reader.readLong(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
Id _taskInfoGetId(TaskInfo object) {
|
||||
return object.id;
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _taskInfoGetLinks(TaskInfo object) {
|
||||
return [];
|
||||
}
|
||||
|
||||
void _taskInfoAttach(IsarCollection<dynamic> col, Id id, TaskInfo object) {
|
||||
object.id = id;
|
||||
}
|
||||
|
||||
extension TaskInfoQueryWhereSort on QueryBuilder<TaskInfo, TaskInfo, QWhere> {
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterWhere> anyId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(const IdWhereClause.any());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TaskInfoQueryWhere on QueryBuilder<TaskInfo, TaskInfo, QWhereClause> {
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterWhereClause> idEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterWhereClause> idNotEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
);
|
||||
} else {
|
||||
return query
|
||||
.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: false),
|
||||
)
|
||||
.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: false),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterWhereClause> idGreaterThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterWhereClause> idLessThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterWhereClause> idBetween(
|
||||
Id lowerId,
|
||||
Id upperId, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TaskInfoQueryFilter
|
||||
on QueryBuilder<TaskInfo, TaskInfo, QFilterCondition> {
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'additionalText',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'additionalText',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> additionalTextEqualTo(
|
||||
String? value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'additionalText',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextGreaterThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'additionalText',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextLessThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'additionalText',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> additionalTextBetween(
|
||||
String? lower,
|
||||
String? upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'additionalText',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'additionalText',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'additionalText',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'additionalText',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> additionalTextMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'additionalText',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'additionalText',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition>
|
||||
additionalTextIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'additionalText',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'answer',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'answer',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerEqualTo(
|
||||
String? value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'answer',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerGreaterThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'answer',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerLessThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'answer',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerBetween(
|
||||
String? lower,
|
||||
String? upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'answer',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'answer',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'answer',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'answer',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'answer',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'answer',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> answerIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'answer',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> completedEqualTo(
|
||||
bool value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'completed',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> idEqualTo(Id value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> idGreaterThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> idLessThan(
|
||||
Id value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> idBetween(
|
||||
Id lower,
|
||||
Id upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> sIdEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'sId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> sIdGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'sId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> sIdLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'sId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterFilterCondition> sIdBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'sId',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TaskInfoQueryObject
|
||||
on QueryBuilder<TaskInfo, TaskInfo, QFilterCondition> {}
|
||||
|
||||
extension TaskInfoQueryLinks
|
||||
on QueryBuilder<TaskInfo, TaskInfo, QFilterCondition> {}
|
||||
|
||||
extension TaskInfoQuerySortBy on QueryBuilder<TaskInfo, TaskInfo, QSortBy> {
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortByAdditionalText() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'additionalText', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortByAdditionalTextDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'additionalText', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortByAnswer() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'answer', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortByAnswerDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'answer', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortByCompleted() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'completed', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortByCompletedDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'completed', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortBySId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'sId', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> sortBySIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'sId', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TaskInfoQuerySortThenBy
|
||||
on QueryBuilder<TaskInfo, TaskInfo, QSortThenBy> {
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByAdditionalText() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'additionalText', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByAdditionalTextDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'additionalText', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByAnswer() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'answer', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByAnswerDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'answer', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByCompleted() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'completed', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByCompletedDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'completed', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenById() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenByIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'id', Sort.desc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenBySId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'sId', Sort.asc);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QAfterSortBy> thenBySIdDesc() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addSortBy(r'sId', Sort.desc);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TaskInfoQueryWhereDistinct
|
||||
on QueryBuilder<TaskInfo, TaskInfo, QDistinct> {
|
||||
QueryBuilder<TaskInfo, TaskInfo, QDistinct> distinctByAdditionalText(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'additionalText',
|
||||
caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QDistinct> distinctByAnswer(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'answer', caseSensitive: caseSensitive);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QDistinct> distinctByCompleted() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'completed');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, TaskInfo, QDistinct> distinctBySId() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'sId');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TaskInfoQueryProperty
|
||||
on QueryBuilder<TaskInfo, TaskInfo, QQueryProperty> {
|
||||
QueryBuilder<TaskInfo, int, QQueryOperations> idProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'id');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, String?, QQueryOperations> additionalTextProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'additionalText');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, String?, QQueryOperations> answerProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'answer');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, bool, QQueryOperations> completedProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'completed');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TaskInfo, int, QQueryOperations> sIdProperty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addPropertyName(r'sId');
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1,18 +1,21 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'tour_position.g.dart';
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class TourPosition {
|
||||
late double lat;
|
||||
late double long;
|
||||
|
||||
TourPosition();
|
||||
|
||||
factory TourPosition.fromJson(Map<String, dynamic> json) => _$TourPositionFromJson(json);
|
||||
factory TourPosition.fromJson(Map<String, dynamic> json) {
|
||||
final pos = TourPosition();
|
||||
pos.lat = (json['lat'] as num).toDouble();
|
||||
pos.long = (json['long'] as num).toDouble();
|
||||
return pos;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$TourPositionToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'lat': lat,
|
||||
'long': long,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,224 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'tour_position.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarEmbeddedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const TourPositionSchema = Schema(
|
||||
name: r'TourPosition',
|
||||
id: -30020497969214738,
|
||||
properties: {
|
||||
r'lat': PropertySchema(
|
||||
id: 0,
|
||||
name: r'lat',
|
||||
type: IsarType.double,
|
||||
),
|
||||
r'long': PropertySchema(
|
||||
id: 1,
|
||||
name: r'long',
|
||||
type: IsarType.double,
|
||||
)
|
||||
},
|
||||
estimateSize: _tourPositionEstimateSize,
|
||||
serialize: _tourPositionSerialize,
|
||||
deserialize: _tourPositionDeserialize,
|
||||
deserializeProp: _tourPositionDeserializeProp,
|
||||
);
|
||||
|
||||
int _tourPositionEstimateSize(
|
||||
TourPosition object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _tourPositionSerialize(
|
||||
TourPosition object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeDouble(offsets[0], object.lat);
|
||||
writer.writeDouble(offsets[1], object.long);
|
||||
}
|
||||
|
||||
TourPosition _tourPositionDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = TourPosition();
|
||||
object.lat = reader.readDouble(offsets[0]);
|
||||
object.long = reader.readDouble(offsets[1]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _tourPositionDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readDouble(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readDouble(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension TourPositionQueryFilter
|
||||
on QueryBuilder<TourPosition, TourPosition, QFilterCondition> {
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition> latEqualTo(
|
||||
double value, {
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition>
|
||||
latGreaterThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition> latLessThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition> latBetween(
|
||||
double lower,
|
||||
double upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'lat',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition> longEqualTo(
|
||||
double value, {
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition>
|
||||
longGreaterThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition> longLessThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<TourPosition, TourPosition, QAfterFilterCondition> longBetween(
|
||||
double lower,
|
||||
double upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'long',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TourPositionQueryObject
|
||||
on QueryBuilder<TourPosition, TourPosition, QFilterCondition> {}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
TourPosition _$TourPositionFromJson(Map<String, dynamic> json) => TourPosition()
|
||||
..lat = (json['lat'] as num).toDouble()
|
||||
..long = (json['long'] as num).toDouble();
|
||||
|
||||
Map<String, dynamic> _$TourPositionToJson(TourPosition instance) =>
|
||||
<String, dynamic>{
|
||||
'lat': instance.lat,
|
||||
'long': instance.long,
|
||||
};
|
||||
+65
-33
@@ -1,52 +1,84 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'tour_task.g.dart';
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class TourTask {
|
||||
@JsonKey(name: 's_id')
|
||||
late int sId;
|
||||
late int type;
|
||||
late String topic;
|
||||
@JsonKey(name: 'opt', defaultValue: false)
|
||||
late bool? opt;
|
||||
@JsonKey(name: 'reenter', defaultValue: false)
|
||||
late bool? reenter;
|
||||
late int? min;
|
||||
late int? max;
|
||||
@JsonKey(name: 'max_len')
|
||||
late int? maxLen;
|
||||
late bool? rt;
|
||||
late bool? track;
|
||||
late String? txt;
|
||||
@JsonKey(name: 'task_arrival')
|
||||
late int? taskArrival;
|
||||
@JsonKey(name: 'task_fin_work')
|
||||
late int? taskFinWork;
|
||||
late List<TourEntry>? entries;
|
||||
bool? opt;
|
||||
bool? reenter;
|
||||
int? min;
|
||||
int? max;
|
||||
int? maxLen;
|
||||
bool? rt;
|
||||
bool? track;
|
||||
String? txt;
|
||||
int? taskArrival;
|
||||
int? taskFinWork;
|
||||
List<TourEntry>? entries;
|
||||
|
||||
TourTask();
|
||||
|
||||
factory TourTask.fromJson(Map<String, dynamic> json) => _$TourTaskFromJson(json);
|
||||
factory TourTask.fromJson(Map<String, dynamic> json) {
|
||||
final task = TourTask();
|
||||
task.sId = json['s_id'] as int;
|
||||
task.type = json['type'] as int;
|
||||
task.topic = json['topic'] as String;
|
||||
task.opt = json['opt'] as bool? ?? false;
|
||||
task.reenter = json['reenter'] as bool? ?? false;
|
||||
task.min = json['min'] as int?;
|
||||
task.max = json['max'] as int?;
|
||||
task.maxLen = json['max_len'] as int?;
|
||||
task.rt = json['rt'] as bool?;
|
||||
task.track = json['track'] as bool?;
|
||||
task.txt = json['txt'] as String?;
|
||||
task.taskArrival = json['task_arrival'] as int?;
|
||||
task.taskFinWork = json['task_fin_work'] as int?;
|
||||
task.entries = json['entries'] != null
|
||||
? (json['entries'] as List<dynamic>)
|
||||
.map((e) => TourEntry.fromJson(e as Map<String, dynamic>))
|
||||
.toList()
|
||||
: null;
|
||||
return task;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$TourTaskToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
's_id': sId,
|
||||
'type': type,
|
||||
'topic': topic,
|
||||
'opt': opt,
|
||||
'reenter': reenter,
|
||||
'min': min,
|
||||
'max': max,
|
||||
'max_len': maxLen,
|
||||
'rt': rt,
|
||||
'track': track,
|
||||
'txt': txt,
|
||||
'task_arrival': taskArrival,
|
||||
'task_fin_work': taskFinWork,
|
||||
'entries': entries?.map((e) => e.toJson()).toList(),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class TourEntry {
|
||||
late int code;
|
||||
|
||||
late String text;
|
||||
|
||||
@JsonKey(name: 'query_remark')
|
||||
late bool queryRemark;
|
||||
|
||||
TourEntry();
|
||||
|
||||
factory TourEntry.fromJson(Map<String, dynamic> json) => _$TourEntryFromJson(json);
|
||||
factory TourEntry.fromJson(Map<String, dynamic> json) {
|
||||
final entry = TourEntry();
|
||||
entry.code = json['code'] as int;
|
||||
entry.text = json['text'] as String;
|
||||
entry.queryRemark = json['query_remark'] as bool;
|
||||
return entry;
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$TourEntryToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'code': code,
|
||||
'text': text,
|
||||
'query_remark': queryRemark,
|
||||
};
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1,15 +1,33 @@
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:stadtbote/model/log_entry.dart';
|
||||
|
||||
part 'device_log_response.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class DeviceLogResponse {
|
||||
late List<LogEntry> entries;
|
||||
|
||||
DeviceLogResponse();
|
||||
|
||||
Map<String, dynamic> toJson() => _$DeviceLogResponseToJson(this);
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'entries': entries.map((e) => {
|
||||
'id': e.id,
|
||||
'time': e.time.millisecondsSinceEpoch,
|
||||
'severity': e.severity,
|
||||
'message': e.text,
|
||||
}).toList(),
|
||||
};
|
||||
}
|
||||
|
||||
factory DeviceLogResponse.fromJson(Map<String, dynamic> json) => _$DeviceLogResponseFromJson(json);
|
||||
factory DeviceLogResponse.fromJson(Map<String, dynamic> json) {
|
||||
final response = DeviceLogResponse();
|
||||
response.entries = (json['entries'] as List<dynamic>)
|
||||
.map((e) {
|
||||
final entry = LogEntry();
|
||||
entry.id = e['id'] as int? ?? 0;
|
||||
entry.time = DateTime.fromMillisecondsSinceEpoch(e['time'] as int);
|
||||
entry.severity = e['severity'] as int;
|
||||
entry.text = e['message'] as String;
|
||||
return entry;
|
||||
})
|
||||
.toList();
|
||||
return response;
|
||||
}
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'device_log_response.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
DeviceLogResponse _$DeviceLogResponseFromJson(Map<String, dynamic> json) =>
|
||||
DeviceLogResponse()
|
||||
..entries = (json['entries'] as List<dynamic>)
|
||||
.map((e) => LogEntry.fromJson(e as Map<String, dynamic>))
|
||||
.toList();
|
||||
|
||||
Map<String, dynamic> _$DeviceLogResponseToJson(DeviceLogResponse instance) =>
|
||||
<String, dynamic>{
|
||||
'entries': instance.entries,
|
||||
};
|
||||
@@ -1,4 +1,3 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'fin_task_message.g.dart';
|
||||
@@ -44,7 +43,6 @@ class Task {
|
||||
Map<String, dynamic> toJson() => _$TaskToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class FinTaskPos {
|
||||
late int time;
|
||||
|
||||
@@ -2,335 +2,6 @@
|
||||
|
||||
part of 'fin_task_message.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarEmbeddedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const FinTaskPosSchema = Schema(
|
||||
name: r'FinTaskPos',
|
||||
id: 7757904122564928017,
|
||||
properties: {
|
||||
r'acc': PropertySchema(
|
||||
id: 0,
|
||||
name: r'acc',
|
||||
type: IsarType.long,
|
||||
),
|
||||
r'lat': PropertySchema(
|
||||
id: 1,
|
||||
name: r'lat',
|
||||
type: IsarType.double,
|
||||
),
|
||||
r'long': PropertySchema(
|
||||
id: 2,
|
||||
name: r'long',
|
||||
type: IsarType.double,
|
||||
),
|
||||
r'time': PropertySchema(
|
||||
id: 3,
|
||||
name: r'time',
|
||||
type: IsarType.long,
|
||||
)
|
||||
},
|
||||
estimateSize: _finTaskPosEstimateSize,
|
||||
serialize: _finTaskPosSerialize,
|
||||
deserialize: _finTaskPosDeserialize,
|
||||
deserializeProp: _finTaskPosDeserializeProp,
|
||||
);
|
||||
|
||||
int _finTaskPosEstimateSize(
|
||||
FinTaskPos object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _finTaskPosSerialize(
|
||||
FinTaskPos object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeLong(offsets[0], object.acc);
|
||||
writer.writeDouble(offsets[1], object.lat);
|
||||
writer.writeDouble(offsets[2], object.long);
|
||||
writer.writeLong(offsets[3], object.time);
|
||||
}
|
||||
|
||||
FinTaskPos _finTaskPosDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = FinTaskPos();
|
||||
object.acc = reader.readLong(offsets[0]);
|
||||
object.lat = reader.readDouble(offsets[1]);
|
||||
object.long = reader.readDouble(offsets[2]);
|
||||
object.time = reader.readLong(offsets[3]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _finTaskPosDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readLong(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readDouble(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readDouble(offset)) as P;
|
||||
case 3:
|
||||
return (reader.readLong(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension FinTaskPosQueryFilter
|
||||
on QueryBuilder<FinTaskPos, FinTaskPos, QFilterCondition> {
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> accEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'acc',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> accGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'acc',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> accLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'acc',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> accBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'acc',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> latEqualTo(
|
||||
double value, {
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> latGreaterThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> latLessThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> latBetween(
|
||||
double lower,
|
||||
double upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'lat',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> longEqualTo(
|
||||
double value, {
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> longGreaterThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> longLessThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> longBetween(
|
||||
double lower,
|
||||
double upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'long',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> timeEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> timeGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> timeLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTaskPos, FinTaskPos, QAfterFilterCondition> timeBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'time',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension FinTaskPosQueryObject
|
||||
on QueryBuilder<FinTaskPos, FinTaskPos, QFilterCondition> {}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'set_desired_zip_message.g.dart';
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class SetDesiredZipMessage {
|
||||
@JsonKey(name: "desired_zip")
|
||||
|
||||
@@ -2,217 +2,6 @@
|
||||
|
||||
part of 'set_desired_zip_message.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarEmbeddedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const SetDesiredZipMessageSchema = Schema(
|
||||
name: r'SetDesiredZipMessage',
|
||||
id: -4167972906487221318,
|
||||
properties: {
|
||||
r'desiredZip': PropertySchema(
|
||||
id: 0,
|
||||
name: r'desiredZip',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _setDesiredZipMessageEstimateSize,
|
||||
serialize: _setDesiredZipMessageSerialize,
|
||||
deserialize: _setDesiredZipMessageDeserialize,
|
||||
deserializeProp: _setDesiredZipMessageDeserializeProp,
|
||||
);
|
||||
|
||||
int _setDesiredZipMessageEstimateSize(
|
||||
SetDesiredZipMessage object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
bytesCount += 3 + object.desiredZip.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _setDesiredZipMessageSerialize(
|
||||
SetDesiredZipMessage object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeString(offsets[0], object.desiredZip);
|
||||
}
|
||||
|
||||
SetDesiredZipMessage _setDesiredZipMessageDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = SetDesiredZipMessage();
|
||||
object.desiredZip = reader.readString(offsets[0]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _setDesiredZipMessageDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readString(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension SetDesiredZipMessageQueryFilter on QueryBuilder<SetDesiredZipMessage,
|
||||
SetDesiredZipMessage, QFilterCondition> {
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'desiredZip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'desiredZip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'desiredZip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'desiredZip',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'desiredZip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'desiredZip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition>
|
||||
desiredZipContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'desiredZip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition>
|
||||
desiredZipMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'desiredZip',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'desiredZip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<SetDesiredZipMessage, SetDesiredZipMessage,
|
||||
QAfterFilterCondition> desiredZipIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'desiredZip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension SetDesiredZipMessageQueryObject on QueryBuilder<SetDesiredZipMessage,
|
||||
SetDesiredZipMessage, QFilterCondition> {}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'zip_message.g.dart';
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipSetPos {
|
||||
late String zip;
|
||||
@@ -17,7 +15,6 @@ class ZipSetPos {
|
||||
Map<String, dynamic> toJson() => _$ZipSetPosToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipTrack {
|
||||
late int time;
|
||||
@@ -31,7 +28,6 @@ class ZipTrack {
|
||||
Map<String, dynamic> toJson() => _$ZipTrackToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipTrackPos {
|
||||
late double lat;
|
||||
|
||||
@@ -2,700 +2,6 @@
|
||||
|
||||
part of 'zip_message.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// IsarEmbeddedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const ZipSetPosSchema = Schema(
|
||||
name: r'ZipSetPos',
|
||||
id: 2736271830323112702,
|
||||
properties: {
|
||||
r'track': PropertySchema(
|
||||
id: 0,
|
||||
name: r'track',
|
||||
type: IsarType.object,
|
||||
target: r'ZipTrack',
|
||||
),
|
||||
r'zip': PropertySchema(
|
||||
id: 1,
|
||||
name: r'zip',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _zipSetPosEstimateSize,
|
||||
serialize: _zipSetPosSerialize,
|
||||
deserialize: _zipSetPosDeserialize,
|
||||
deserializeProp: _zipSetPosDeserializeProp,
|
||||
);
|
||||
|
||||
int _zipSetPosEstimateSize(
|
||||
ZipSetPos object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
{
|
||||
final value = object.track;
|
||||
if (value != null) {
|
||||
bytesCount += 3 +
|
||||
ZipTrackSchema.estimateSize(value, allOffsets[ZipTrack]!, allOffsets);
|
||||
}
|
||||
}
|
||||
bytesCount += 3 + object.zip.length * 3;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _zipSetPosSerialize(
|
||||
ZipSetPos object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeObject<ZipTrack>(
|
||||
offsets[0],
|
||||
allOffsets,
|
||||
ZipTrackSchema.serialize,
|
||||
object.track,
|
||||
);
|
||||
writer.writeString(offsets[1], object.zip);
|
||||
}
|
||||
|
||||
ZipSetPos _zipSetPosDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = ZipSetPos();
|
||||
object.track = reader.readObjectOrNull<ZipTrack>(
|
||||
offsets[0],
|
||||
ZipTrackSchema.deserialize,
|
||||
allOffsets,
|
||||
);
|
||||
object.zip = reader.readString(offsets[1]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _zipSetPosDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readObjectOrNull<ZipTrack>(
|
||||
offset,
|
||||
ZipTrackSchema.deserialize,
|
||||
allOffsets,
|
||||
)) as P;
|
||||
case 1:
|
||||
return (reader.readString(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension ZipSetPosQueryFilter
|
||||
on QueryBuilder<ZipSetPos, ZipSetPos, QFilterCondition> {
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> trackIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'track',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> trackIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'track',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipBetween(
|
||||
String lower,
|
||||
String upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'zip',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'zip',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'zip',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'zip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> zipIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'zip',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ZipSetPosQueryObject
|
||||
on QueryBuilder<ZipSetPos, ZipSetPos, QFilterCondition> {
|
||||
QueryBuilder<ZipSetPos, ZipSetPos, QAfterFilterCondition> track(
|
||||
FilterQuery<ZipTrack> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.object(q, r'track');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const ZipTrackSchema = Schema(
|
||||
name: r'ZipTrack',
|
||||
id: 8605425681395793610,
|
||||
properties: {
|
||||
r'pos': PropertySchema(
|
||||
id: 0,
|
||||
name: r'pos',
|
||||
type: IsarType.object,
|
||||
target: r'ZipTrackPos',
|
||||
),
|
||||
r'time': PropertySchema(
|
||||
id: 1,
|
||||
name: r'time',
|
||||
type: IsarType.long,
|
||||
)
|
||||
},
|
||||
estimateSize: _zipTrackEstimateSize,
|
||||
serialize: _zipTrackSerialize,
|
||||
deserialize: _zipTrackDeserialize,
|
||||
deserializeProp: _zipTrackDeserializeProp,
|
||||
);
|
||||
|
||||
int _zipTrackEstimateSize(
|
||||
ZipTrack object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
{
|
||||
final value = object.pos;
|
||||
if (value != null) {
|
||||
bytesCount += 3 +
|
||||
ZipTrackPosSchema.estimateSize(
|
||||
value, allOffsets[ZipTrackPos]!, allOffsets);
|
||||
}
|
||||
}
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _zipTrackSerialize(
|
||||
ZipTrack object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeObject<ZipTrackPos>(
|
||||
offsets[0],
|
||||
allOffsets,
|
||||
ZipTrackPosSchema.serialize,
|
||||
object.pos,
|
||||
);
|
||||
writer.writeLong(offsets[1], object.time);
|
||||
}
|
||||
|
||||
ZipTrack _zipTrackDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = ZipTrack();
|
||||
object.pos = reader.readObjectOrNull<ZipTrackPos>(
|
||||
offsets[0],
|
||||
ZipTrackPosSchema.deserialize,
|
||||
allOffsets,
|
||||
);
|
||||
object.time = reader.readLong(offsets[1]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _zipTrackDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readObjectOrNull<ZipTrackPos>(
|
||||
offset,
|
||||
ZipTrackPosSchema.deserialize,
|
||||
allOffsets,
|
||||
)) as P;
|
||||
case 1:
|
||||
return (reader.readLong(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension ZipTrackQueryFilter
|
||||
on QueryBuilder<ZipTrack, ZipTrack, QFilterCondition> {
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> posIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'pos',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> posIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'pos',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> timeEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> timeGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> timeLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> timeBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'time',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ZipTrackQueryObject
|
||||
on QueryBuilder<ZipTrack, ZipTrack, QFilterCondition> {
|
||||
QueryBuilder<ZipTrack, ZipTrack, QAfterFilterCondition> pos(
|
||||
FilterQuery<ZipTrackPos> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.object(q, r'pos');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: duplicate_ignore, non_constant_identifier_names, constant_identifier_names, invalid_use_of_protected_member, unnecessary_cast, prefer_const_constructors, lines_longer_than_80_chars, require_trailing_commas, inference_failure_on_function_invocation, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_checks, join_return_with_assignment, prefer_final_locals, avoid_js_rounded_ints, avoid_positional_boolean_parameters, always_specify_types
|
||||
|
||||
const ZipTrackPosSchema = Schema(
|
||||
name: r'ZipTrackPos',
|
||||
id: 7837584470752293488,
|
||||
properties: {
|
||||
r'acc': PropertySchema(
|
||||
id: 0,
|
||||
name: r'acc',
|
||||
type: IsarType.long,
|
||||
),
|
||||
r'lat': PropertySchema(
|
||||
id: 1,
|
||||
name: r'lat',
|
||||
type: IsarType.double,
|
||||
),
|
||||
r'long': PropertySchema(
|
||||
id: 2,
|
||||
name: r'long',
|
||||
type: IsarType.double,
|
||||
)
|
||||
},
|
||||
estimateSize: _zipTrackPosEstimateSize,
|
||||
serialize: _zipTrackPosSerialize,
|
||||
deserialize: _zipTrackPosDeserialize,
|
||||
deserializeProp: _zipTrackPosDeserializeProp,
|
||||
);
|
||||
|
||||
int _zipTrackPosEstimateSize(
|
||||
ZipTrackPos object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _zipTrackPosSerialize(
|
||||
ZipTrackPos object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeLong(offsets[0], object.acc);
|
||||
writer.writeDouble(offsets[1], object.lat);
|
||||
writer.writeDouble(offsets[2], object.long);
|
||||
}
|
||||
|
||||
ZipTrackPos _zipTrackPosDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = ZipTrackPos();
|
||||
object.acc = reader.readLong(offsets[0]);
|
||||
object.lat = reader.readDouble(offsets[1]);
|
||||
object.long = reader.readDouble(offsets[2]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _zipTrackPosDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readLong(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readDouble(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readDouble(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension ZipTrackPosQueryFilter
|
||||
on QueryBuilder<ZipTrackPos, ZipTrackPos, QFilterCondition> {
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> accEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'acc',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> accGreaterThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'acc',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> accLessThan(
|
||||
int value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'acc',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> accBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'acc',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> latEqualTo(
|
||||
double value, {
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> latGreaterThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> latLessThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'lat',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> latBetween(
|
||||
double lower,
|
||||
double upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'lat',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> longEqualTo(
|
||||
double value, {
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> longGreaterThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> longLessThan(
|
||||
double value, {
|
||||
bool include = false,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'long',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<ZipTrackPos, ZipTrackPos, QAfterFilterCondition> longBetween(
|
||||
double lower,
|
||||
double upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'long',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension ZipTrackPosQueryObject
|
||||
on QueryBuilder<ZipTrackPos, ZipTrackPos, QFilterCondition> {}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
@@ -0,0 +1,398 @@
|
||||
{
|
||||
"_note1": "KEEP THIS FILE! Check it into a version control system (VCS) like git.",
|
||||
"_note2": "ObjectBox manages crucial IDs for your object model. See docs for details.",
|
||||
"_note3": "If you have VCS merge conflicts, you must resolve them according to ObjectBox docs.",
|
||||
"entities": [
|
||||
{
|
||||
"id": "2:1900005481935470756",
|
||||
"lastPropertyId": "4:4315208696498141362",
|
||||
"name": "EnqueuedMessage",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:3300983318147351068",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:9210049710668674502",
|
||||
"name": "messageId",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "3:7408744652169267115",
|
||||
"name": "topic",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "4:4315208696498141362",
|
||||
"name": "payload",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "3:808686831791135454",
|
||||
"lastPropertyId": "11:3214338916427673014",
|
||||
"name": "Job",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:5216786081620356305",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:8894906213962654908",
|
||||
"name": "ver",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "3:3303839163899107532",
|
||||
"name": "state",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "4:3119487970513925946",
|
||||
"name": "crFilter",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "5:4732141596159047170",
|
||||
"name": "ordertime",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "6:1449947228203387059",
|
||||
"name": "offsWarn",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "7:3209886298748159414",
|
||||
"name": "global",
|
||||
"type": 1
|
||||
},
|
||||
{
|
||||
"id": "8:6098449484765014411",
|
||||
"name": "vhtId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "9:1076725124291766663",
|
||||
"name": "rem",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "10:3500399465824083528",
|
||||
"name": "delayOrderTime",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "11:3214338916427673014",
|
||||
"name": "toursJson",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "4:8465470793923038042",
|
||||
"lastPropertyId": "4:946656881802398278",
|
||||
"name": "LocationStatus",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:7878463571761872972",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:5068730443811682471",
|
||||
"name": "zip",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "3:2759928435998483383",
|
||||
"name": "area",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "4:946656881802398278",
|
||||
"name": "zipReal",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "5:2550695273986067070",
|
||||
"lastPropertyId": "4:25366889950650452",
|
||||
"name": "LogEntry",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:7926124814316455592",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:7429096942006040633",
|
||||
"name": "time",
|
||||
"type": 10
|
||||
},
|
||||
{
|
||||
"id": "3:142738454977074579",
|
||||
"name": "severity",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "4:25366889950650452",
|
||||
"name": "text",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "6:8578494735294491413",
|
||||
"lastPropertyId": "4:8471947406218406695",
|
||||
"name": "Picture",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:8233658715755176189",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:3598678677730019293",
|
||||
"name": "tourId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "3:8439819560525061668",
|
||||
"name": "number",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "4:8471947406218406695",
|
||||
"name": "data",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "7:2548574384262878250",
|
||||
"lastPropertyId": "2:1452725296922082150",
|
||||
"name": "Ranking",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:7118038767191691106",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:1452725296922082150",
|
||||
"name": "ranksJson",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "8:2017786340054665973",
|
||||
"lastPropertyId": "11:3261302622742923576",
|
||||
"name": "SessionStatus",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:3031533826735683075",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:7909042823552092798",
|
||||
"name": "custId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "3:7042631773737541316",
|
||||
"name": "hqId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "4:2110246729553520570",
|
||||
"name": "usrId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "5:1816167905802287907",
|
||||
"name": "crId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "6:6893748738418511496",
|
||||
"name": "sid",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "7:5132625371004843897",
|
||||
"name": "vhtId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "8:497003757522498160",
|
||||
"name": "locZip",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "9:7881671035561328160",
|
||||
"name": "serverVersion",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "10:8539036586265341170",
|
||||
"name": "serverInstance",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "11:3261302622742923576",
|
||||
"name": "bwvEnabled",
|
||||
"type": 1
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "9:3249643184099511839",
|
||||
"lastPropertyId": "4:4970112377686786436",
|
||||
"name": "Status",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:7475926067533914770",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:3333419739867469217",
|
||||
"name": "posZip",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "3:7999157864794363157",
|
||||
"name": "posArea",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "4:4970112377686786436",
|
||||
"name": "posZipReal",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "11:8606238749478059367",
|
||||
"lastPropertyId": "6:7798301556204918939",
|
||||
"name": "ChatMessage",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:3236243497308902958",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:1689142031630531044",
|
||||
"name": "time",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "3:9168654785572108691",
|
||||
"name": "from",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "4:3167039386322657979",
|
||||
"name": "subj",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "5:371212500165499194",
|
||||
"name": "text",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "6:7798301556204918939",
|
||||
"name": "read",
|
||||
"type": 1
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "12:4865606913057136676",
|
||||
"lastPropertyId": "5:4858121848992922038",
|
||||
"name": "TaskInfo",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:8874807593467526189",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:1555074981837956508",
|
||||
"name": "sId",
|
||||
"type": 6
|
||||
},
|
||||
{
|
||||
"id": "3:4882275733695652364",
|
||||
"name": "additionalText",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "4:8255231557511579852",
|
||||
"name": "answer",
|
||||
"type": 9
|
||||
},
|
||||
{
|
||||
"id": "5:4858121848992922038",
|
||||
"name": "completed",
|
||||
"type": 1
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
}
|
||||
],
|
||||
"lastEntityId": "12:4865606913057136676",
|
||||
"lastIndexId": "0:0",
|
||||
"lastRelationId": "0:0",
|
||||
"lastSequenceId": "0:0",
|
||||
"modelVersion": 5,
|
||||
"modelVersionParserMinimum": 5,
|
||||
"retiredEntityUids": [
|
||||
3121960281516643928,
|
||||
3330049220205502332
|
||||
],
|
||||
"retiredIndexUids": [],
|
||||
"retiredPropertyUids": [
|
||||
2911299806708299572,
|
||||
5499360845675591736,
|
||||
6629677753597654195,
|
||||
2459198878504939029,
|
||||
1821648847924307341,
|
||||
2516901162497323279,
|
||||
7500431799407089850,
|
||||
3530187464938423960,
|
||||
2939471599149775609,
|
||||
4870701960967093484,
|
||||
9072329172508444422
|
||||
],
|
||||
"retiredRelationUids": [],
|
||||
"version": 1
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -14,7 +14,6 @@ import 'package:stadtbote/tools/messages/job_received_message.dart';
|
||||
import 'package:stadtbote/tools/messages/refresh_badges_message.dart';
|
||||
import 'package:stadtbote/tools/messages/remove_job_message.dart';
|
||||
import 'package:stadtbote/tools/util.dart';
|
||||
import 'package:expandable/expandable.dart';
|
||||
|
||||
import '../tools/messages/publish_payload_message.dart';
|
||||
|
||||
|
||||
@@ -39,9 +39,9 @@ showTaskArrivedPopup(BuildContext context, TaskInfo taskInfo, Function() onFinis
|
||||
padding: const EdgeInsets.all(35.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Text(taskInfo.task.topic),
|
||||
Text(taskInfo.task?.topic ?? ''),
|
||||
const SizedBox(height: 20),
|
||||
getDefaultButton(taskInfo.task.topic, () => {Navigator.of(context).pop(), onFinished()}),
|
||||
getDefaultButton(taskInfo.task?.topic ?? '', () => {Navigator.of(context).pop(), onFinished()}),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
@@ -5,7 +5,7 @@ import 'package:stadtbote/tools/util.dart';
|
||||
|
||||
showPickupDeliveryStatusPopup(BuildContext context, TaskInfo taskInfo, Function(TourEntry?, String? remark) onFinished) async {
|
||||
List<DropdownMenuEntry<TourEntry>> entries = [];
|
||||
for (var entry in taskInfo.task.entries!) {
|
||||
for (var entry in taskInfo.task?.entries ?? []) {
|
||||
var dropdownMenuEntry = DropdownMenuEntry<TourEntry>(value: entry, label: entry.text);
|
||||
entries.add(dropdownMenuEntry);
|
||||
}
|
||||
@@ -51,7 +51,7 @@ showPickupDeliveryStatusPopup(BuildContext context, TaskInfo taskInfo, Function(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Text(taskInfo.task.topic),
|
||||
Text(taskInfo.task?.topic ?? ''),
|
||||
const SizedBox(height: 20),
|
||||
DropdownMenu<TourEntry>(
|
||||
expandedInsets: const EdgeInsets.all(0),
|
||||
|
||||
@@ -6,7 +6,7 @@ import 'package:stadtbote/tools/util.dart';
|
||||
|
||||
showReceiptGiverPopup(BuildContext context, TaskInfo taskInfo, Function(String, TourEntry) onFinished) async {
|
||||
List<DropdownMenuEntry<TourEntry>> entries = [];
|
||||
for (var entry in taskInfo.task.entries!) {
|
||||
for (var entry in taskInfo.task?.entries ?? []) {
|
||||
var dropdownMenuEntry = DropdownMenuEntry<TourEntry>(value: entry, label: entry.text);
|
||||
entries.add(dropdownMenuEntry);
|
||||
}
|
||||
@@ -52,7 +52,7 @@ showReceiptGiverPopup(BuildContext context, TaskInfo taskInfo, Function(String,
|
||||
padding: const EdgeInsets.all(35.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Text(taskInfo.task.topic),
|
||||
Text(taskInfo.task?.topic ?? ''),
|
||||
const SizedBox(height: 20),
|
||||
DropdownMenu<TourEntry>(
|
||||
expandedInsets: const EdgeInsets.all(0),
|
||||
@@ -66,7 +66,7 @@ showReceiptGiverPopup(BuildContext context, TaskInfo taskInfo, Function(String,
|
||||
dropdownMenuEntries: entries,
|
||||
),
|
||||
const SizedBox(height: 30),
|
||||
Util.getDefaultTextField(taskInfo.task.topic,
|
||||
Util.getDefaultTextField(taskInfo.task?.topic ?? '',
|
||||
textInputType: TextInputType.text,
|
||||
formatter: [FilteringTextInputFormatter.singleLineFormatter],
|
||||
controller: textEditingController,
|
||||
|
||||
@@ -67,7 +67,7 @@ showSignaturePopup(BuildContext context, TaskInfo taskInfo, Function(String?) on
|
||||
padding: const EdgeInsets.all(20.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Text(taskInfo.task.topic),
|
||||
Text(taskInfo.task?.topic ?? ''),
|
||||
const SizedBox(height: 20),
|
||||
Expanded(
|
||||
child: Signature(
|
||||
|
||||
@@ -42,11 +42,11 @@ showStationNoticePopup(BuildContext context, TaskInfo taskInfo, Function(String)
|
||||
padding: const EdgeInsets.all(35.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Text(taskInfo.task.topic),
|
||||
Text(taskInfo.task?.topic ?? ''),
|
||||
const SizedBox(height: 20),
|
||||
SizedBox(
|
||||
height: 100,
|
||||
child: Util.getDefaultTextField(taskInfo.task.topic,
|
||||
child: Util.getDefaultTextField(taskInfo.task?.topic ?? '',
|
||||
textInputType: TextInputType.text,
|
||||
maxLines: 10,
|
||||
formatter: [FilteringTextInputFormatter.singleLineFormatter],
|
||||
|
||||
@@ -128,17 +128,17 @@ Future<void> showTakePhotosPopup(BuildContext context, TaskInfo taskInfo, Functi
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
Visibility(
|
||||
visible: imageDataList.length < taskInfo.task.max!,
|
||||
visible: imageDataList.length < (taskInfo.task?.max ?? 999),
|
||||
child: getDefaultButton('Hinzufügen', buttonHeight: 50, () => {capturePhoto()})),
|
||||
const SizedBox(height: 12),
|
||||
getDefaultButton(
|
||||
'Übernehmen',
|
||||
buttonHeight: 50,
|
||||
() => {
|
||||
if (imageDataList.length >= taskInfo.task.min! && imageDataList.length <= taskInfo.task.max!)
|
||||
if (imageDataList.length >= (taskInfo.task?.min ?? 0) && imageDataList.length <= (taskInfo.task?.max ?? 999))
|
||||
{Navigator.of(context).pop(), onFinished(imageDataList)}
|
||||
else
|
||||
{showAlertDialog('Fehler', 'Es müssen mindestens ${taskInfo.task.min} Foto(s) aufgenommen werden')}
|
||||
{showAlertDialog('Fehler', 'Es müssen mindestens ${taskInfo.task?.min ?? 0} Foto(s) aufgenommen werden')}
|
||||
})
|
||||
],
|
||||
),
|
||||
|
||||
+46
-48
@@ -7,7 +7,6 @@ import 'package:archive/archive.dart';
|
||||
import 'package:dart_mq/dart_mq.dart';
|
||||
import 'package:device_info_plus/device_info_plus.dart';
|
||||
import 'package:http/http.dart' as http;
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:mqtt5_client/mqtt5_client.dart';
|
||||
import 'package:mqtt5_client/mqtt5_server_client.dart';
|
||||
import 'package:stadtbote/model/enqueued_message.dart';
|
||||
@@ -17,6 +16,7 @@ import 'package:stadtbote/model/chat_message.dart';
|
||||
import 'package:stadtbote/model/location_status.dart';
|
||||
import 'package:stadtbote/model/rank.dart';
|
||||
import 'package:stadtbote/model/status.dart';
|
||||
import 'package:stadtbote/objectbox.g.dart';
|
||||
import 'package:stadtbote/network_messages/acknowledge_job.dart';
|
||||
import 'package:stadtbote/network_messages/acknowledge_message.dart';
|
||||
import 'package:stadtbote/network_messages/bootstrap_request.dart';
|
||||
@@ -332,10 +332,9 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
|
||||
var sessionStatusMessage = SessionStatus.fromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.sessionStatus.clear();
|
||||
await MyApp.isarInstance.sessionStatus.put(sessionStatusMessage);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<SessionStatus>();
|
||||
box.removeAll();
|
||||
box.put(sessionStatusMessage);
|
||||
|
||||
var bwvEnabled = sessionStatusMessage.bwvEnabled;
|
||||
Util.preferencesSaveBool(Constants.prefsBWVEnabled, bwvEnabled);
|
||||
@@ -355,10 +354,9 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _statusMessageReceived(payloadData) async {
|
||||
var statusMessage = Status.fromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.status.clear();
|
||||
await MyApp.isarInstance.status.put(statusMessage);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<Status>();
|
||||
box.removeAll();
|
||||
box.put(statusMessage);
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicStatusInfoUpdated,
|
||||
@@ -369,10 +367,9 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _locationStatusMessageReceived(payloadData) async {
|
||||
var locationStatus = LocationStatus.fromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.locationStatus.clear();
|
||||
await MyApp.isarInstance.locationStatus.put(locationStatus);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<LocationStatus>();
|
||||
box.removeAll();
|
||||
box.put(locationStatus);
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicLocationStatusUpdated,
|
||||
@@ -383,10 +380,9 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _rankingMessageReceived(payloadData) async {
|
||||
var ranking = Ranking.fromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.rankings.clear();
|
||||
await MyApp.isarInstance.rankings.put(ranking);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<Ranking>();
|
||||
box.removeAll();
|
||||
box.put(ranking);
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicRankingUpdated,
|
||||
@@ -397,9 +393,8 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _jobMessageReceived(payloadData) async {
|
||||
Job newJob = Job.fromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.jobs.put(newJob);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
box.put(newJob);
|
||||
|
||||
if (newJob.state == Constants.stateAssigned) {
|
||||
if (newJob.global) {
|
||||
@@ -420,13 +415,12 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _jobDeleteReceived(payloadData) async {
|
||||
var jobDelMessage = JobDelMessage.fromJson(payloadData);
|
||||
|
||||
var job = await MyApp.isarInstance.jobs.where().filter().idEqualTo(jobDelMessage.id).findFirst();
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.jobs.where().filter().idEqualTo(jobDelMessage.id).deleteAll();
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
var job = box.get(jobDelMessage.id);
|
||||
|
||||
if (job != null) {
|
||||
box.remove(jobDelMessage.id);
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicJobDeleted,
|
||||
payload: JobDeletedMessage(job: job),
|
||||
@@ -445,9 +439,8 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _messageMessageReceived(Map<String, dynamic> payloadData) async {
|
||||
var newMessage = await ChatMessage.mergeFromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.chatMessages.put(newMessage);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<ChatMessage>();
|
||||
box.put(newMessage);
|
||||
|
||||
await Util.playMp3('asbeep.mp3');
|
||||
|
||||
@@ -460,11 +453,13 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _messageUploadDeviceLogReceived(payloadData) async {
|
||||
var deviceLogRequest = DeviceLogRequest.fromJson(payloadData);
|
||||
|
||||
var logEintries = await MyApp.isarInstance.logEntrys
|
||||
.filter()
|
||||
.timeGreaterThan(deviceLogRequest.startDateTime)
|
||||
.timeLessThan(deviceLogRequest.endDateTime)
|
||||
.findAll();
|
||||
final box = MyApp.objectBoxStore.box<LogEntry>();
|
||||
final query = box.query(
|
||||
LogEntry_.time.greaterThan(deviceLogRequest.startDateTime.millisecondsSinceEpoch)
|
||||
.and(LogEntry_.time.lessThan(deviceLogRequest.endDateTime.millisecondsSinceEpoch))
|
||||
).build();
|
||||
var logEintries = query.find();
|
||||
query.close();
|
||||
|
||||
var deviceLog = DeviceLogResponse();
|
||||
deviceLog.entries = logEintries;
|
||||
@@ -475,12 +470,12 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
void _messageAcknowledgeReceived(payloadData) async {
|
||||
var acknowledgeMessage = AcknowledgeMessage.fromJson(payloadData);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.enqueuedMessages
|
||||
.filter()
|
||||
.messageIdEqualTo(acknowledgeMessage.messageId)
|
||||
.deleteAll();
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<EnqueuedMessage>();
|
||||
final query = box.query(EnqueuedMessage_.messageId.equals(acknowledgeMessage.messageId)).build();
|
||||
final messages = query.find();
|
||||
query.close();
|
||||
|
||||
box.removeMany(messages.map((e) => e.id).toList());
|
||||
}
|
||||
|
||||
|
||||
@@ -599,7 +594,10 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
_sendSyncMessage() async {
|
||||
var currentPosition = await MyApp.getCurrentPosition();
|
||||
|
||||
var jobs = await MyApp.isarInstance.jobs.filter().stateGreaterThan(-1).findAll();
|
||||
final box = MyApp.objectBoxStore.box<Job>();
|
||||
final query = box.query(Job_.state.greaterThan(-1)).build();
|
||||
var jobs = query.find();
|
||||
query.close();
|
||||
|
||||
var answer = SyncJobsMessage();
|
||||
answer.utcUnixTime = Util.nowUnixSecondsUtc();
|
||||
@@ -659,26 +657,26 @@ class MqttCore with ProducerMixin, ConsumerMixin {
|
||||
}
|
||||
|
||||
void _enqueueMessage(String uuid, String receiver, String payload) async {
|
||||
var enqueuedMessage = EnqueuedMessage(messageId: uuid);
|
||||
var enqueuedMessage = EnqueuedMessage();
|
||||
enqueuedMessage.messageId = uuid;
|
||||
enqueuedMessage.topic = receiver;
|
||||
enqueuedMessage.payload = payload;
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.enqueuedMessages.put(enqueuedMessage);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<EnqueuedMessage>();
|
||||
box.put(enqueuedMessage);
|
||||
}
|
||||
|
||||
_sendEnqueuedMessages() async {
|
||||
var enqueuedMessages = await MyApp.isarInstance.enqueuedMessages.where().findAll();
|
||||
final box = MyApp.objectBoxStore.box<EnqueuedMessage>();
|
||||
var enqueuedMessages = box.getAll();
|
||||
|
||||
if (enqueuedMessages.isNotEmpty) {
|
||||
for (var enqueuedMessage in enqueuedMessages) {
|
||||
try {
|
||||
var json = jsonDecode(enqueuedMessage.payload);
|
||||
|
||||
if (_publishMessage(enqueuedMessage.topic, json, false, enqueueOnError: false)) {
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.enqueuedMessages.delete(enqueuedMessage.id);
|
||||
});
|
||||
box.remove(enqueuedMessage.id);
|
||||
}
|
||||
} catch (ex) {
|
||||
Util.logInfo("resend enqueued message failed: $ex");
|
||||
|
||||
+3
-4
@@ -93,11 +93,10 @@ class Util {
|
||||
var logEntry = LogEntry();
|
||||
logEntry.time = DateTime.now();
|
||||
logEntry.text = text;
|
||||
logEntry.severity = severity;
|
||||
logEntry.severityEnum = severity;
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.logEntrys.put(logEntry);
|
||||
});
|
||||
final box = MyApp.objectBoxStore.box<LogEntry>();
|
||||
box.put(logEntry);
|
||||
}
|
||||
|
||||
static logInfo(String message) {
|
||||
|
||||
Reference in new issue
Block a user