49 lines
1.5 KiB
Dart
49 lines
1.5 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:lamiter/Class/API/api.dart';
|
|
import 'package:lamiter/Class/Entity/entity.dart';
|
|
import 'package:lamiter/Class/Service/course.dart';
|
|
import 'package:lamiter/Class/Service/service_item_filt_type.dart';
|
|
import 'package:lamiter/Provider/Service/service_item_provider.dart';
|
|
import 'package:lamiter/Provider/User/manager_provider.dart';
|
|
import 'package:provider/provider.dart';
|
|
|
|
class CourseProvider extends ServiceItemProvider {
|
|
CourseProvider() : super() {
|
|
super.init();
|
|
}
|
|
|
|
@override
|
|
List<ServiceItemFiltType> filtTypes() {
|
|
return [
|
|
ServiceItemFiltType.supportCompany,
|
|
ServiceItemFiltType.urbanDisease,
|
|
ServiceItemFiltType.constitution,
|
|
ServiceItemFiltType.postureIssue,
|
|
];
|
|
}
|
|
|
|
@override
|
|
Future<void> refresh(BuildContext context) async {
|
|
final manaer = context.read<ManagerProvider>().self;
|
|
|
|
// 療程
|
|
var res = await API().get_courses(manaer!.id!);
|
|
if (res.containsKey("success")) {
|
|
serviceItems =
|
|
res["success"].map<Course>((json) => Course.fromJson(json)).toList();
|
|
filtedList = sortWithLastUpdateTime(serviceItems);
|
|
}
|
|
|
|
// 品牌
|
|
Set<Entity> companyPairsSet = {};
|
|
for (var serviceItem in serviceItems) {
|
|
var companyPair =
|
|
Entity(id: serviceItem.companyId, name: serviceItem.companyName);
|
|
companyPairsSet.add(companyPair);
|
|
}
|
|
companyPairs = companyPairsSet.toList();
|
|
|
|
notifyListeners();
|
|
}
|
|
}
|