Income and Assets are successfully being inserted and selected! Still needs tweaking, such as Asset saying "monthly".
This commit is contained in:
parent
f6f167dd83
commit
e5e85b68ff
@ -331,7 +331,7 @@ class _TrackedItemInputDialogState extends State<TrackedItemInputDialog> {
|
|||||||
title: Center(
|
title: Center(
|
||||||
child: widget.entry == null
|
child: widget.entry == null
|
||||||
? Text("New ${_type!.title}")
|
? Text("New ${_type!.title}")
|
||||||
: Text("Edit Expense"),
|
: Text("Edit ${_type!.title}"),
|
||||||
),
|
),
|
||||||
content: FutureBuilder<List<Expense>>(
|
content: FutureBuilder<List<Expense>>(
|
||||||
future: DatabaseHelper.instance.getExpenses(),
|
future: DatabaseHelper.instance.getExpenses(),
|
||||||
@ -399,6 +399,7 @@ class _TrackedItemInputDialogState extends State<TrackedItemInputDialog> {
|
|||||||
_amount = double.parse(value!);
|
_amount = double.parse(value!);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
if (_type != ItemType.asset)
|
||||||
DropdownButtonFormField(
|
DropdownButtonFormField(
|
||||||
items: Frequency.values
|
items: Frequency.values
|
||||||
.map(
|
.map(
|
||||||
@ -468,6 +469,8 @@ class _TrackedItemInputDialogState extends State<TrackedItemInputDialog> {
|
|||||||
if (_formKey.currentState!.validate()) {
|
if (_formKey.currentState!.validate()) {
|
||||||
_formKey.currentState!.save();
|
_formKey.currentState!.save();
|
||||||
setState(() {
|
setState(() {
|
||||||
|
switch (_type) {
|
||||||
|
case ItemType.expense:
|
||||||
Expense expense = Expense(
|
Expense expense = Expense(
|
||||||
id: _id,
|
id: _id,
|
||||||
name: _name,
|
name: _name,
|
||||||
@ -484,6 +487,47 @@ class _TrackedItemInputDialogState extends State<TrackedItemInputDialog> {
|
|||||||
expense,
|
expense,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
case ItemType.income:
|
||||||
|
Income income = Income(
|
||||||
|
id: _id,
|
||||||
|
name: _name,
|
||||||
|
amount: _amount,
|
||||||
|
frequency: _freq,
|
||||||
|
description: _desc,
|
||||||
|
);
|
||||||
|
if (_id != null) {
|
||||||
|
DatabaseHelper.instance.updateIncome(
|
||||||
|
income,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
DatabaseHelper.instance.addIncome(
|
||||||
|
income,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ItemType.asset:
|
||||||
|
Asset asset = Asset(
|
||||||
|
id: _id,
|
||||||
|
name: _name,
|
||||||
|
amount: _amount,
|
||||||
|
description: _desc,
|
||||||
|
);
|
||||||
|
if (_id != null) {
|
||||||
|
DatabaseHelper.instance.updateAsset(
|
||||||
|
asset,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
DatabaseHelper.instance.addAsset(
|
||||||
|
asset,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw UnimplementedError(
|
||||||
|
"No code for type ${_type!.title}",
|
||||||
|
);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
widget.notifyParent();
|
widget.notifyParent();
|
||||||
Navigator.of(context).pop();
|
Navigator.of(context).pop();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user