Erweiterungen
This commit is contained in:
1 parent
31fe4c5a06
commit
98581c9a39
13 files changed
+2792
-996
No files matched your search
@@ -1,9 +1,20 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/content_views/utils/header_info.dart';
|
||||
import 'package:stadtbote/model/ranking.dart';
|
||||
import 'package:stadtbote/popups/tasks_popups/zip_popup.dart';
|
||||
import 'package:stadtbote/protocoll_messages/zip_message.dart';
|
||||
import 'package:stadtbote/tools/mqtt_core.dart';
|
||||
|
||||
import '../main.dart';
|
||||
import '../tools/util.dart';
|
||||
|
||||
enum ModeEnum {
|
||||
set,
|
||||
request
|
||||
}
|
||||
|
||||
class ApproachAreaPage extends ContentViewWidget {
|
||||
const ApproachAreaPage({super.key});
|
||||
|
||||
@@ -14,7 +25,7 @@ class ApproachAreaPage extends ContentViewWidget {
|
||||
Future<HeaderInfo> getHeaderInfo(BuildContext context) async {
|
||||
return HeaderInfo(
|
||||
titleWidget: const Text(
|
||||
'Angenommene Aufträge',
|
||||
'Anfahrtsbereich',
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 20.0,
|
||||
@@ -30,14 +41,14 @@ class ApproachAreaPage extends ContentViewWidget {
|
||||
}
|
||||
|
||||
class _ApproachAreaPageState extends State<ApproachAreaPage> {
|
||||
//late List<Job> _jobs;
|
||||
late Ranking? _ranking;
|
||||
|
||||
late bool _initCompleted = false;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
Future.delayed(const Duration(seconds: 0), () async {
|
||||
//_jobs = await MyApp.isarInstance.jobs.filter().stateEqualTo(1).findAll();
|
||||
_ranking = await MyApp.isarInstance.rankings.where().findFirst();
|
||||
|
||||
_initCompleted = true;
|
||||
|
||||
@@ -53,25 +64,158 @@ class _ApproachAreaPageState extends State<ApproachAreaPage> {
|
||||
return Util.getWaitWidget(context);
|
||||
}
|
||||
|
||||
return const SingleChildScrollView(
|
||||
scrollDirection: Axis.vertical,
|
||||
child: SingleChildScrollView(
|
||||
scrollDirection: Axis.horizontal,
|
||||
child: Row(
|
||||
children: [
|
||||
SizedBox(width: 80, child: Text('Row 1')),
|
||||
SizedBox(width: 80, child: Text('Row 2')),
|
||||
SizedBox(width: 80, child: Text('Row 3')),
|
||||
SizedBox(width: 80, child: Text('Row 4')),
|
||||
SizedBox(width: 80, child: Text('Row 5')),
|
||||
SizedBox(width: 80, child: Text('Row 6')),
|
||||
],
|
||||
return Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: InteractiveViewer(
|
||||
alignment: Alignment.topCenter,
|
||||
child: SingleChildScrollView(
|
||||
scrollDirection: Axis.vertical,
|
||||
child: SingleChildScrollView(
|
||||
scrollDirection: Axis.horizontal,
|
||||
child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: _fillColumns()),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
/*void _clicked(Job job) {
|
||||
MessageService().publish<ContentViewWidget>(Constants.messageTopicPushContentView, arguments: TourListPage(job: job));
|
||||
}*/
|
||||
List<Widget> _fillColumns() {
|
||||
List<Widget> columns = [];
|
||||
|
||||
if (_ranking != null) {
|
||||
for (int i = 0; i < _ranking!.ranks.length; i++) {
|
||||
var rank = _ranking!.ranks[i];
|
||||
|
||||
List<Widget> entries = [];
|
||||
entries.add(
|
||||
GestureDetector(
|
||||
onTap: ()=> {
|
||||
if (i == 0) {
|
||||
showZipPopup(context, 'ACHTUNG: Wenn Sie Ihre PLZ ändern, verlieren Sie Ihr Ranking!\n', 'Freimelden', (zip) => {_sendZip(rank, zip, ModeEnum.set)}),
|
||||
} else {
|
||||
showZipPopup(context, 'ACHTUNG: Wenn Sie Ihre PLZ ändern, verlieren Sie Ihr Ranking!\n', 'OK', (zip) => {_sendZip(rank, zip, ModeEnum.request)}),
|
||||
}
|
||||
},
|
||||
child: Container(
|
||||
padding: const EdgeInsets.all(4),
|
||||
margin: const EdgeInsets.all(2),
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: i == 0 ? Colors.lightGreen : Colors.white,
|
||||
border: Border.all(
|
||||
color: Colors.grey,
|
||||
width: 0.5,
|
||||
),
|
||||
),
|
||||
width: 85,
|
||||
height: 60,
|
||||
child: Column(children: [
|
||||
Text(
|
||||
rank.zip,
|
||||
style: const TextStyle(fontSize: 20),
|
||||
),
|
||||
Text(
|
||||
rank.area,
|
||||
)
|
||||
]
|
||||
)
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
for (int j = 0; j < rank.vehicles.length; j++) {
|
||||
var vehicle = rank.vehicles[j];
|
||||
|
||||
var imageFilename = vehicle.self == true ? "assets/mein_${mapVehicleTypeToImageName(vehicle.type)}" : "assets/${mapVehicleTypeToImageName(vehicle.type)}";
|
||||
entries.add(Container(
|
||||
padding: const EdgeInsets.all(4),
|
||||
margin: const EdgeInsets.all(2),
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: Colors.white,
|
||||
border: Border.all(
|
||||
color: Colors.grey,
|
||||
width: 0.5,
|
||||
),
|
||||
),
|
||||
width: 80,
|
||||
height: 60,
|
||||
child: Column(
|
||||
children: [
|
||||
Image.asset(imageFilename, width: 30, height: 30),
|
||||
const SizedBox(width: 10),
|
||||
Text(
|
||||
mapVehicleTypeToText(vehicle.type)
|
||||
),
|
||||
],
|
||||
),
|
||||
));
|
||||
}
|
||||
|
||||
columns.add(Align(
|
||||
alignment: Alignment.topLeft,
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: entries,
|
||||
),
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
return columns;
|
||||
}
|
||||
|
||||
_sendZip(Rank rank, String zip, ModeEnum mode) {
|
||||
var zipMessage = ZipMessage();
|
||||
|
||||
if (mode == ModeEnum.set) {
|
||||
var position = MyApp.currentPosition;
|
||||
|
||||
zipMessage.setPos = ZipSetPos();
|
||||
zipMessage.setPos!.zip = zip;
|
||||
|
||||
if (position != null) {
|
||||
zipMessage.setPos!.track = ZipTrack();
|
||||
zipMessage.setPos!.track.time = DateTime.now().toIso8601String();
|
||||
zipMessage.setPos!.track.pos = ZipTrackPos();
|
||||
zipMessage.setPos!.track.pos!.lat = position.latitude;
|
||||
zipMessage.setPos!.track.pos!.long = position.longitude;
|
||||
zipMessage.setPos!.track.pos!.acc = position.accuracy.toInt();
|
||||
}
|
||||
} else {
|
||||
zipMessage.reqZip = ZipReqZip();
|
||||
zipMessage.reqZip!.id = rank.id;
|
||||
zipMessage.reqZip!.zip = zip;
|
||||
}
|
||||
|
||||
MqttCore.instance.publishPayloadMessage("rank", zipMessage.toJson());
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
private void SendMessage(int columnNumber, string zipNumber)
|
||||
{
|
||||
var payloadObject = new JObject();
|
||||
|
||||
if (columnNumber == 0)
|
||||
{
|
||||
var setPosObject = new JObject();
|
||||
payloadObject.Add(new JProperty("set_pos", setPosObject));
|
||||
|
||||
setPosObject.Add(new JProperty("zip", zipNumber));
|
||||
setPosObject.Add(new JProperty("track", CreateTrackObject()));
|
||||
}
|
||||
else
|
||||
{
|
||||
var regZipObject = new JObject();
|
||||
payloadObject.Add(new JProperty("reg_zip", regZipObject));
|
||||
|
||||
regZipObject.Add(new JProperty("id", columnNumber));
|
||||
regZipObject.Add(new JProperty("zip", zipNumber));
|
||||
}
|
||||
|
||||
var json = payloadObject.ToString();
|
||||
|
||||
App.Core.SendJsonMessageAsync("rank", payloadObject);
|
||||
}
|
||||
*/
|
||||
@@ -259,7 +259,7 @@ class _MainPageState extends State<MainPage> {
|
||||
widget.sidValueNotifier.value = sessionStatusInfoUpdateMessage.status.sid;
|
||||
});
|
||||
|
||||
MessageService().subscribe<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdate, this, (statusInfoUpdateMessage) {
|
||||
MessageService().subscribe<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdated, this, (statusInfoUpdateMessage) {
|
||||
_updateHeader();
|
||||
});
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:isar/isar.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:stadtbote/messages/PopContentViewMessage.dart';
|
||||
import 'package:stadtbote/model/message.dart';
|
||||
import 'package:stadtbote/model/ranking.dart';
|
||||
import 'package:stadtbote/model/status.dart';
|
||||
import 'package:stadtbote/model/task_info.dart';
|
||||
import 'package:stadtbote/popups/accept_jobs_popup.dart';
|
||||
@@ -33,6 +34,7 @@ Future<void> main() async {
|
||||
JobSchema,
|
||||
TaskInfoSchema,
|
||||
MessageSchema,
|
||||
RankingSchema
|
||||
], directory: dir.path);
|
||||
|
||||
runZonedGuarded(() {}, (error, stackTrace) {
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'ranking.g.dart';
|
||||
|
||||
@collection
|
||||
@JsonSerializable()
|
||||
class Ranking {
|
||||
@JsonKey(name: 'id', defaultValue: 0)
|
||||
late Id id = 0;
|
||||
|
||||
late List<Rank> ranks;
|
||||
|
||||
Ranking();
|
||||
|
||||
factory Ranking.fromJson(Map<String, dynamic> json) => _$RankingFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$RankingToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class Rank {
|
||||
late int id;
|
||||
|
||||
late String zip;
|
||||
|
||||
late String area;
|
||||
|
||||
late String time;
|
||||
|
||||
late List<Vehicle> vehicles;
|
||||
|
||||
Rank();
|
||||
|
||||
factory Rank.fromJson(Map<String, dynamic> json) => _$RankFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$RankToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class Vehicle {
|
||||
late int id;
|
||||
|
||||
late int type;
|
||||
|
||||
@JsonKey(name: 'self', defaultValue: false)
|
||||
late bool? self;
|
||||
|
||||
Vehicle();
|
||||
|
||||
factory Vehicle.fromJson(Map<String, dynamic> json) => _$VehicleFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$VehicleToJson(this);
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,53 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:stadtbote/model/task_info.dart';
|
||||
import 'package:stadtbote/tools/util.dart';
|
||||
|
||||
showZipPopup(BuildContext context, String text, String buttonText, Function(String) onFinished) async {
|
||||
await showDialog(
|
||||
context: context,
|
||||
builder: (BuildContext context) {
|
||||
return AlertDialog(
|
||||
contentPadding: EdgeInsets.zero,
|
||||
shadowColor: Colors.transparent,
|
||||
backgroundColor: Colors.white,
|
||||
content: StatefulBuilder(builder: (BuildContext context, StateSetter setState) {
|
||||
TextEditingController textEditingController = TextEditingController();
|
||||
|
||||
return SizedBox(
|
||||
key: GlobalKey(),
|
||||
height: 280,
|
||||
width: MediaQuery.of(context).size.width * 0.8,
|
||||
child: Container(
|
||||
height: 100,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: Colors.white,
|
||||
border: Border.all(
|
||||
color: Colors.grey,
|
||||
width: 0.5,
|
||||
),
|
||||
),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(35.0),
|
||||
child: Column(
|
||||
children: [
|
||||
Text(text, style: TextStyle(fontWeight: FontWeight.bold)),
|
||||
const SizedBox(height: 20),
|
||||
Util.getDefaultTextField('Postleitzahl',
|
||||
type: TextInputType.text,
|
||||
formatter: [FilteringTextInputFormatter.singleLineFormatter],
|
||||
controller: textEditingController,
|
||||
autofocus: true),
|
||||
const SizedBox(height: 20),
|
||||
getDefaultButton(buttonText, () => {
|
||||
Navigator.of(context).pop(),
|
||||
|
||||
onFinished(textEditingController.text)})
|
||||
],
|
||||
),
|
||||
),
|
||||
));
|
||||
}));
|
||||
});
|
||||
}
|
||||
@@ -2,973 +2,6 @@
|
||||
|
||||
part of 'fin_tour_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 FinTourTaskSchema = Schema(
|
||||
name: r'FinTourTask',
|
||||
id: 8687341112458224246,
|
||||
properties: {
|
||||
r'code': PropertySchema(
|
||||
id: 0,
|
||||
name: r'code',
|
||||
type: IsarType.long,
|
||||
),
|
||||
r'codes': PropertySchema(
|
||||
id: 1,
|
||||
name: r'codes',
|
||||
type: IsarType.stringList,
|
||||
),
|
||||
r'pos': PropertySchema(
|
||||
id: 2,
|
||||
name: r'pos',
|
||||
type: IsarType.object,
|
||||
target: r'FinTaskPos',
|
||||
),
|
||||
r'sId': PropertySchema(
|
||||
id: 3,
|
||||
name: r'sId',
|
||||
type: IsarType.long,
|
||||
),
|
||||
r'sign': PropertySchema(
|
||||
id: 4,
|
||||
name: r'sign',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'time': PropertySchema(
|
||||
id: 5,
|
||||
name: r'time',
|
||||
type: IsarType.string,
|
||||
),
|
||||
r'val': PropertySchema(
|
||||
id: 6,
|
||||
name: r'val',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _finTourTaskEstimateSize,
|
||||
serialize: _finTourTaskSerialize,
|
||||
deserialize: _finTourTaskDeserialize,
|
||||
deserializeProp: _finTourTaskDeserializeProp,
|
||||
);
|
||||
|
||||
int _finTourTaskEstimateSize(
|
||||
FinTourTask object,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
var bytesCount = offsets.last;
|
||||
{
|
||||
final list = object.codes;
|
||||
if (list != null) {
|
||||
bytesCount += 3 + list.length * 3;
|
||||
{
|
||||
for (var i = 0; i < list.length; i++) {
|
||||
final value = list[i];
|
||||
bytesCount += value.length * 3;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
bytesCount += 3 +
|
||||
FinTaskPosSchema.estimateSize(
|
||||
object.pos, allOffsets[FinTaskPos]!, allOffsets);
|
||||
{
|
||||
final value = object.sign;
|
||||
if (value != null) {
|
||||
bytesCount += 3 + value.length * 3;
|
||||
}
|
||||
}
|
||||
bytesCount += 3 + object.time.length * 3;
|
||||
{
|
||||
final value = object.val;
|
||||
if (value != null) {
|
||||
bytesCount += 3 + value.length * 3;
|
||||
}
|
||||
}
|
||||
return bytesCount;
|
||||
}
|
||||
|
||||
void _finTourTaskSerialize(
|
||||
FinTourTask object,
|
||||
IsarWriter writer,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
writer.writeLong(offsets[0], object.code);
|
||||
writer.writeStringList(offsets[1], object.codes);
|
||||
writer.writeObject<FinTaskPos>(
|
||||
offsets[2],
|
||||
allOffsets,
|
||||
FinTaskPosSchema.serialize,
|
||||
object.pos,
|
||||
);
|
||||
writer.writeLong(offsets[3], object.sId);
|
||||
writer.writeString(offsets[4], object.sign);
|
||||
writer.writeString(offsets[5], object.time);
|
||||
writer.writeString(offsets[6], object.val);
|
||||
}
|
||||
|
||||
FinTourTask _finTourTaskDeserialize(
|
||||
Id id,
|
||||
IsarReader reader,
|
||||
List<int> offsets,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
final object = FinTourTask();
|
||||
object.code = reader.readLongOrNull(offsets[0]);
|
||||
object.codes = reader.readStringList(offsets[1]);
|
||||
object.pos = reader.readObjectOrNull<FinTaskPos>(
|
||||
offsets[2],
|
||||
FinTaskPosSchema.deserialize,
|
||||
allOffsets,
|
||||
) ??
|
||||
FinTaskPos();
|
||||
object.sId = reader.readLong(offsets[3]);
|
||||
object.sign = reader.readStringOrNull(offsets[4]);
|
||||
object.time = reader.readString(offsets[5]);
|
||||
object.val = reader.readStringOrNull(offsets[6]);
|
||||
return object;
|
||||
}
|
||||
|
||||
P _finTourTaskDeserializeProp<P>(
|
||||
IsarReader reader,
|
||||
int propertyId,
|
||||
int offset,
|
||||
Map<Type, List<int>> allOffsets,
|
||||
) {
|
||||
switch (propertyId) {
|
||||
case 0:
|
||||
return (reader.readLongOrNull(offset)) as P;
|
||||
case 1:
|
||||
return (reader.readStringList(offset)) as P;
|
||||
case 2:
|
||||
return (reader.readObjectOrNull<FinTaskPos>(
|
||||
offset,
|
||||
FinTaskPosSchema.deserialize,
|
||||
allOffsets,
|
||||
) ??
|
||||
FinTaskPos()) as P;
|
||||
case 3:
|
||||
return (reader.readLong(offset)) as P;
|
||||
case 4:
|
||||
return (reader.readStringOrNull(offset)) as P;
|
||||
case 5:
|
||||
return (reader.readString(offset)) as P;
|
||||
case 6:
|
||||
return (reader.readStringOrNull(offset)) as P;
|
||||
default:
|
||||
throw IsarError('Unknown property with id $propertyId');
|
||||
}
|
||||
}
|
||||
|
||||
extension FinTourTaskQueryFilter
|
||||
on QueryBuilder<FinTourTask, FinTourTask, QFilterCondition> {
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codeIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'code',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codeIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'code',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codeEqualTo(
|
||||
int? value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'code',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codeGreaterThan(
|
||||
int? value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'code',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codeLessThan(
|
||||
int? value, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'code',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codeBetween(
|
||||
int? lower,
|
||||
int? upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'code',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codesIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'codes',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'codes',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'codes',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'codes',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'codes',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementBetween(
|
||||
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'codes',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'codes',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'codes',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementContains(String value, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'codes',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementMatches(String pattern, {bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'codes',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'codes',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesElementIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'codes',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesLengthEqualTo(int length) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.listLength(
|
||||
r'codes',
|
||||
length,
|
||||
true,
|
||||
length,
|
||||
true,
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> codesIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.listLength(
|
||||
r'codes',
|
||||
0,
|
||||
true,
|
||||
0,
|
||||
true,
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.listLength(
|
||||
r'codes',
|
||||
0,
|
||||
false,
|
||||
999999,
|
||||
true,
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesLengthLessThan(
|
||||
int length, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.listLength(
|
||||
r'codes',
|
||||
0,
|
||||
true,
|
||||
length,
|
||||
include,
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesLengthGreaterThan(
|
||||
int length, {
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.listLength(
|
||||
r'codes',
|
||||
length,
|
||||
include,
|
||||
999999,
|
||||
true,
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
codesLengthBetween(
|
||||
int lower,
|
||||
int upper, {
|
||||
bool includeLower = true,
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.listLength(
|
||||
r'codes',
|
||||
lower,
|
||||
includeLower,
|
||||
upper,
|
||||
includeUpper,
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> sIdEqualTo(
|
||||
int value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'sId',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, 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<FinTourTask, FinTourTask, 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<FinTourTask, FinTourTask, 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,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'sign',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
signIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'sign',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signEqualTo(
|
||||
String? value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'sign',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signGreaterThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'sign',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signLessThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'sign',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signBetween(
|
||||
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'sign',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'sign',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'sign',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'sign',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'sign',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> signIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'sign',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
signIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'sign',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeEqualTo(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'time',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeGreaterThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeLessThan(
|
||||
String value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'time',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeBetween(
|
||||
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'time',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'time',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'time',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'time',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'time',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> timeIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'time',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
timeIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'time',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'val',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'val',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valEqualTo(
|
||||
String? value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'val',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valGreaterThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'val',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valLessThan(
|
||||
String? value, {
|
||||
bool include = false,
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'val',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valBetween(
|
||||
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'val',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valStartsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'val',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valEndsWith(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'val',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valContains(
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'val',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valMatches(
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'val',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> valIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'val',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition>
|
||||
valIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'val',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension FinTourTaskQueryObject
|
||||
on QueryBuilder<FinTourTask, FinTourTask, QFilterCondition> {
|
||||
QueryBuilder<FinTourTask, FinTourTask, QAfterFilterCondition> pos(
|
||||
FilterQuery<FinTaskPos> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.object(q, r'pos');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
@@ -0,0 +1,120 @@
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'zip_message.g.dart';
|
||||
|
||||
/*
|
||||
{
|
||||
"recv": "rank",
|
||||
"payload": {
|
||||
"set_pos": {
|
||||
"zip": "22525",
|
||||
"track": {
|
||||
"time": "2021-03-01T12:55:51Z",
|
||||
"pos":
|
||||
{
|
||||
"lat": 53.595121,
|
||||
"long": 9.907433,
|
||||
"acc": 35
|
||||
}
|
||||
}
|
||||
},
|
||||
"reg_zip": {
|
||||
"id": 2,
|
||||
"zip": "22039"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
@JsonSerializable()
|
||||
class ZipMessage {
|
||||
@JsonKey(name: "set_pos")
|
||||
ZipSetPos? setPos;
|
||||
|
||||
@JsonKey(name: "req_zip")
|
||||
ZipReqZip? reqZip;
|
||||
|
||||
ZipMessage();
|
||||
|
||||
factory ZipMessage.fromJson(Map<String, dynamic> json) => _$ZipMessageFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$ZipMessageToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipReqZip {
|
||||
late int id;
|
||||
|
||||
late String zip;
|
||||
|
||||
ZipReqZip();
|
||||
|
||||
factory ZipReqZip.fromJson(Map<String, dynamic> json) => _$ZipReqZipFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$ZipReqZipToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipSetPos {
|
||||
late String zip;
|
||||
|
||||
late ZipTrack track;
|
||||
|
||||
ZipSetPos();
|
||||
|
||||
factory ZipSetPos.fromJson(Map<String, dynamic> json) => _$ZipSetPosFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$ZipSetPosToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipTrack {
|
||||
late String time;
|
||||
|
||||
late ZipTrackPos? pos;
|
||||
|
||||
ZipTrack();
|
||||
|
||||
factory ZipTrack.fromJson(Map<String, dynamic> json) => _$ZipTrackFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$ZipTrackToJson(this);
|
||||
}
|
||||
|
||||
@embedded
|
||||
@JsonSerializable()
|
||||
class ZipTrackPos {
|
||||
late double lat;
|
||||
|
||||
late double long;
|
||||
|
||||
late int acc;
|
||||
|
||||
ZipTrackPos();
|
||||
|
||||
factory ZipTrackPos.fromJson(Map<String, dynamic> json) => _$ZipTrackPosFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$ZipTrackPosToJson(this);
|
||||
}
|
||||
|
||||
/*
|
||||
@JsonSerializable()
|
||||
class MessageContent
|
||||
{
|
||||
late String text;
|
||||
|
||||
late String subj;
|
||||
|
||||
late String time;
|
||||
|
||||
MessageContent();
|
||||
|
||||
factory MessageContent.fromJson(Map<String, dynamic> json) => _$MessageContentFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$MessageContentToJson(this);
|
||||
}
|
||||
|
||||
*/
|
||||
File diff suppressed because it is too large.
Load diff
@@ -7,7 +7,8 @@ class Constants {
|
||||
static const String messageTopicConnectionStatusChanged = "connection_status_changed";
|
||||
static const String messageTopicSessionInfoUpdate = "status_info_updated";
|
||||
static const String messageTopicSessionStatusInfoUpdate = "session_status_info_updated";
|
||||
static const String messageTopicStatusInfoUpdate = "status_info_updated";
|
||||
static const String messageTopicStatusInfoUpdated = "status_info_updated";
|
||||
static const String messageTopicRankingUpdated = "ranking_updated";
|
||||
static const String messageTopicJobReceived = "job_received";
|
||||
static const String messageTopicJobDeleted = "job_deleted";
|
||||
static const String messageTopicMessageReceived = "message_received";
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
import 'package:stadtbote/model/status.dart';
|
||||
|
||||
class RankingUpdated {
|
||||
RankingUpdated();
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import 'dart:math';
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:mqtt_client/mqtt_client.dart';
|
||||
import 'package:mqtt_client/mqtt_server_client.dart';
|
||||
import 'package:stadtbote/model/ranking.dart';
|
||||
import 'package:stadtbote/model/status.dart';
|
||||
import 'package:stadtbote/protocoll_messages/bootstrap_request.dart';
|
||||
import 'package:stadtbote/protocoll_messages/bootstrap_response_payload.dart';
|
||||
@@ -21,6 +22,7 @@ import 'package:stadtbote/tools/message_service.dart';
|
||||
import 'package:stadtbote/tools/messages/job_deleted_message.dart';
|
||||
import 'package:stadtbote/tools/messages/job_received_message.dart';
|
||||
import 'package:stadtbote/tools/messages/message_message.dart';
|
||||
import 'package:stadtbote/tools/messages/ranking_updated.dart';
|
||||
import 'package:stadtbote/tools/messages/session_info_update.dart';
|
||||
import 'package:stadtbote/tools/messages/status_info_update.dart';
|
||||
// ignore: depend_on_referenced_packages
|
||||
@@ -249,19 +251,19 @@ class MqttCore {
|
||||
await MyApp.isarInstance.status.put(statusMessage);
|
||||
});
|
||||
|
||||
MessageService().publish<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdate, arguments: StatusInfoUpdate(status: statusMessage));
|
||||
MessageService().publish<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdated, arguments: StatusInfoUpdate(status: statusMessage));
|
||||
}
|
||||
|
||||
void _rankingMessageReceived(payloadData) async {
|
||||
Util.logInfo('_rankingMessageReceived');
|
||||
|
||||
/*var statusMessage = Status.fromJson(payloadData['status']);
|
||||
void _rankingMessageReceived(List<dynamic> payloadData) async {
|
||||
Map<String, dynamic> rankingMap = {};
|
||||
rankingMap["ranks"] = payloadData;
|
||||
var ranking = Ranking.fromJson(rankingMap);
|
||||
|
||||
await MyApp.isarInstance.writeTxn(() async {
|
||||
await MyApp.isarInstance.status.put(statusMessage);
|
||||
await MyApp.isarInstance.rankings.put(ranking);
|
||||
});
|
||||
|
||||
BroadcastReceiver().publish<StatusInfoUpdate>(Constants.messageTopicStatusInfoUpdate, arguments: StatusInfoUpdate(status: statusMessage));*/
|
||||
MessageService().publish<RankingUpdated>(Constants.messageTopicRankingUpdated, arguments: RankingUpdated());
|
||||
}
|
||||
|
||||
void _jobMessageReceived(payloadData) async {
|
||||
|
||||
+1
-1
@@ -299,7 +299,7 @@ String mapVehicleTypeToText(int vehType) {
|
||||
return "Service";
|
||||
}
|
||||
|
||||
return "!UNBEKANTER VEHICLE TYPE!";
|
||||
return "!?????!";
|
||||
}
|
||||
|
||||
String mapTourMode(String mode) {
|
||||
|
||||
Reference in new issue
Block a user