Feat: Fügt eine 1:n Beziehung zwischen RecurringTransaction und Transaction hinzu
This commit is contained in:
@@ -17,9 +17,21 @@ const TransactionSchema = CollectionSchema(
|
||||
name: r'Transaction',
|
||||
id: 5320225499417954855,
|
||||
properties: {
|
||||
r'amount': PropertySchema(id: 0, name: r'amount', type: IsarType.double),
|
||||
r'date': PropertySchema(id: 1, name: r'date', type: IsarType.dateTime),
|
||||
r'name': PropertySchema(id: 2, name: r'name', type: IsarType.string),
|
||||
r'amount': PropertySchema(
|
||||
id: 0,
|
||||
name: r'amount',
|
||||
type: IsarType.double,
|
||||
),
|
||||
r'date': PropertySchema(
|
||||
id: 1,
|
||||
name: r'date',
|
||||
type: IsarType.dateTime,
|
||||
),
|
||||
r'name': PropertySchema(
|
||||
id: 2,
|
||||
name: r'name',
|
||||
type: IsarType.string,
|
||||
)
|
||||
},
|
||||
estimateSize: _transactionEstimateSize,
|
||||
serialize: _transactionSerialize,
|
||||
@@ -27,7 +39,14 @@ const TransactionSchema = CollectionSchema(
|
||||
deserializeProp: _transactionDeserializeProp,
|
||||
idName: r'id',
|
||||
indexes: {},
|
||||
links: {},
|
||||
links: {
|
||||
r'recurringTransaction': LinkSchema(
|
||||
id: 8918082780894736839,
|
||||
name: r'recurringTransaction',
|
||||
target: r'RecurringTransaction',
|
||||
single: true,
|
||||
)
|
||||
},
|
||||
embeddedSchemas: {},
|
||||
getId: _transactionGetId,
|
||||
getLinks: _transactionGetLinks,
|
||||
@@ -93,15 +112,14 @@ Id _transactionGetId(Transaction object) {
|
||||
}
|
||||
|
||||
List<IsarLinkBase<dynamic>> _transactionGetLinks(Transaction object) {
|
||||
return [];
|
||||
return [object.recurringTransaction];
|
||||
}
|
||||
|
||||
void _transactionAttach(
|
||||
IsarCollection<dynamic> col,
|
||||
Id id,
|
||||
Transaction object,
|
||||
) {
|
||||
void _transactionAttach(IsarCollection<dynamic> col, Id id,
|
||||
Transaction object) {
|
||||
object.id = id;
|
||||
object.recurringTransaction.attach(col,
|
||||
col.isar.collection<RecurringTransaction>(), r'recurringTransaction', id);
|
||||
}
|
||||
|
||||
extension TransactionQueryWhereSort
|
||||
@@ -117,13 +135,15 @@ extension TransactionQueryWhere
|
||||
on QueryBuilder<Transaction, Transaction, QWhereClause> {
|
||||
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idEqualTo(Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(IdWhereClause.between(lower: id, upper: id));
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: id,
|
||||
upper: id,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idNotEqualTo(
|
||||
Id id,
|
||||
) {
|
||||
Id id) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
if (query.whereSort == Sort.asc) {
|
||||
return query
|
||||
@@ -145,10 +165,8 @@ extension TransactionQueryWhere
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idGreaterThan(
|
||||
Id id, {
|
||||
bool include = false,
|
||||
}) {
|
||||
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idGreaterThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.greaterThan(lower: id, includeLower: include),
|
||||
@@ -156,10 +174,8 @@ extension TransactionQueryWhere
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idLessThan(
|
||||
Id id, {
|
||||
bool include = false,
|
||||
}) {
|
||||
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idLessThan(Id id,
|
||||
{bool include = false}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.lessThan(upper: id, includeUpper: include),
|
||||
@@ -174,14 +190,12 @@ extension TransactionQueryWhere
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addWhereClause(
|
||||
IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
),
|
||||
);
|
||||
return query.addWhereClause(IdWhereClause.between(
|
||||
lower: lowerId,
|
||||
includeLower: includeLower,
|
||||
upper: upperId,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -193,13 +207,11 @@ extension TransactionQueryFilter
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.equalTo(
|
||||
property: r'amount',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'amount',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -210,14 +222,12 @@ extension TransactionQueryFilter
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'amount',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'amount',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -227,14 +237,12 @@ extension TransactionQueryFilter
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'amount',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'amount',
|
||||
value: value,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -246,43 +254,41 @@ extension TransactionQueryFilter
|
||||
double epsilon = Query.epsilon,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.between(
|
||||
property: r'amount',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'amount',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
epsilon: epsilon,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> dateIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
const FilterCondition.isNull(property: r'date'),
|
||||
);
|
||||
return query.addFilterCondition(const FilterCondition.isNull(
|
||||
property: r'date',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
|
||||
dateIsNotNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
const FilterCondition.isNotNull(property: r'date'),
|
||||
);
|
||||
return query.addFilterCondition(const FilterCondition.isNotNull(
|
||||
property: r'date',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> dateEqualTo(
|
||||
DateTime? value,
|
||||
) {
|
||||
DateTime? value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.equalTo(property: r'date', value: value),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'date',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -291,13 +297,11 @@ extension TransactionQueryFilter
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'date',
|
||||
value: value,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'date',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -306,13 +310,11 @@ extension TransactionQueryFilter
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'date',
|
||||
value: value,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'date',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -323,25 +325,23 @@ extension TransactionQueryFilter
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.between(
|
||||
property: r'date',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'date',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> idEqualTo(
|
||||
Id value,
|
||||
) {
|
||||
Id value) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.equalTo(property: r'id', value: value),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -350,13 +350,11 @@ extension TransactionQueryFilter
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -365,13 +363,11 @@ extension TransactionQueryFilter
|
||||
bool include = false,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'id',
|
||||
value: value,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -382,15 +378,13 @@ extension TransactionQueryFilter
|
||||
bool includeUpper = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'id',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -399,13 +393,11 @@ extension TransactionQueryFilter
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.equalTo(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -415,14 +407,12 @@ extension TransactionQueryFilter
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
include: include,
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -432,14 +422,12 @@ extension TransactionQueryFilter
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.lessThan(
|
||||
include: include,
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -451,16 +439,14 @@ extension TransactionQueryFilter
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.between(
|
||||
property: r'name',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.between(
|
||||
property: r'name',
|
||||
lower: lower,
|
||||
includeLower: includeLower,
|
||||
upper: upper,
|
||||
includeUpper: includeUpper,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -469,13 +455,11 @@ extension TransactionQueryFilter
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.startsWith(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.startsWith(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
@@ -484,60 +468,54 @@ extension TransactionQueryFilter
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.endsWith(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.endsWith(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> nameContains(
|
||||
String value, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
String value,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.contains(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.contains(
|
||||
property: r'name',
|
||||
value: value,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> nameMatches(
|
||||
String pattern, {
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
String pattern,
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.matches(
|
||||
property: r'name',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.matches(
|
||||
property: r'name',
|
||||
wildcard: pattern,
|
||||
caseSensitive: caseSensitive,
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> nameIsEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.equalTo(property: r'name', value: ''),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.equalTo(
|
||||
property: r'name',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
|
||||
nameIsNotEmpty() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addFilterCondition(
|
||||
FilterCondition.greaterThan(property: r'name', value: ''),
|
||||
);
|
||||
return query.addFilterCondition(FilterCondition.greaterThan(
|
||||
property: r'name',
|
||||
value: '',
|
||||
));
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -546,7 +524,21 @@ extension TransactionQueryObject
|
||||
on QueryBuilder<Transaction, Transaction, QFilterCondition> {}
|
||||
|
||||
extension TransactionQueryLinks
|
||||
on QueryBuilder<Transaction, Transaction, QFilterCondition> {}
|
||||
on QueryBuilder<Transaction, Transaction, QFilterCondition> {
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
|
||||
recurringTransaction(FilterQuery<RecurringTransaction> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.link(q, r'recurringTransaction');
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
|
||||
recurringTransactionIsNull() {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.linkLength(r'recurringTransaction', 0, true, 0, true);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
extension TransactionQuerySortBy
|
||||
on QueryBuilder<Transaction, Transaction, QSortBy> {
|
||||
@@ -652,9 +644,8 @@ extension TransactionQueryWhereDistinct
|
||||
});
|
||||
}
|
||||
|
||||
QueryBuilder<Transaction, Transaction, QDistinct> distinctByName({
|
||||
bool caseSensitive = true,
|
||||
}) {
|
||||
QueryBuilder<Transaction, Transaction, QDistinct> distinctByName(
|
||||
{bool caseSensitive = true}) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.addDistinctBy(r'name', caseSensitive: caseSensitive);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user