56 lines
1.6 KiB
Dart
56 lines
1.6 KiB
Dart
import 'package:aitrainer_app/model/customer.dart';
|
|
import 'package:aitrainer_app/model/exercise.dart';
|
|
import 'package:aitrainer_app/model/exercise_type.dart';
|
|
import 'package:aitrainer_app/service/exercise_service.dart';
|
|
import 'package:flutter/cupertino.dart';
|
|
|
|
import 'exercise_view_model.dart';
|
|
|
|
class ExerciseChangingViewModel with ChangeNotifier {
|
|
Customer customer;
|
|
ExerciseType exerciseType;
|
|
List<ExerciseViewModel> exerciseList = List<ExerciseViewModel>();
|
|
|
|
ExerciseViewModel exerciseViewModel = ExerciseViewModel();
|
|
|
|
ExerciseChangingViewModel(exerciseViewModel) {
|
|
this.exerciseViewModel = exerciseViewModel;
|
|
}
|
|
|
|
int quantity;
|
|
|
|
setCustomer(Customer customer) {
|
|
this.customer = customer;
|
|
notifyListeners();
|
|
}
|
|
|
|
setExerciseType( ExerciseType exerciseType) {
|
|
this.exerciseType = exerciseType;
|
|
notifyListeners();
|
|
}
|
|
|
|
setQuantity(int quantity) {
|
|
this.quantity = quantity;
|
|
}
|
|
|
|
addExercise() async {
|
|
// this.exerciseViewModel = exerciseViewModel;
|
|
final Exercise modelExercise = exerciseViewModel.getExercise();
|
|
modelExercise.customerId = this.customer.customerId;
|
|
modelExercise.exerciseTypeId = this.exerciseType.exerciseTypeId;
|
|
await ExerciseApi().addExercise(modelExercise);
|
|
}
|
|
|
|
createNewModel() {
|
|
exerciseViewModel = ExerciseViewModel();
|
|
exerciseViewModel.createNew();
|
|
}
|
|
|
|
Future<List<ExerciseViewModel>> getExercisesByCustomer( int customerId ) async {
|
|
final results = await ExerciseApi().getExercisesByCustomer(customerId);
|
|
this.exerciseList = results.map((item) => ExerciseViewModel(exercise: item)).toList();
|
|
notifyListeners();
|
|
return this.exerciseList;
|
|
}
|
|
|
|
} |