finish refactor provider
parent
64dbcce06f
commit
9f19b2566f
@ -1,23 +0,0 @@
|
||||
import 'package:doctor_app_flutter/config/config.dart';
|
||||
import 'package:doctor_app_flutter/core/model/hospitals_model.dart';
|
||||
import 'package:doctor_app_flutter/core/service/base/base_service.dart';
|
||||
|
||||
///This service just an example
|
||||
class HospitalService extends BaseService {
|
||||
List<HospitalsModel> _hospitals = List();
|
||||
|
||||
List<HospitalsModel> get hospitals => _hospitals;
|
||||
|
||||
Future getHospitals() async {
|
||||
await baseAppClient.post(GET_PROJECTS,
|
||||
onSuccess: (dynamic response, int statusCode) {
|
||||
_hospitals.clear();
|
||||
response['ListProject'].forEach((hospital) {
|
||||
_hospitals.add(HospitalsModel.fromJson(hospital));
|
||||
});
|
||||
}, onFailure: (String error, int statusCode) {
|
||||
hasError = true;
|
||||
super.error = error;
|
||||
}, body: Map());
|
||||
}
|
||||
}
|
||||
@ -1,23 +1,31 @@
|
||||
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
|
||||
import 'package:doctor_app_flutter/core/model/hospitals_model.dart';
|
||||
import 'package:doctor_app_flutter/core/service/hospital/hospitals_service.dart';
|
||||
import 'package:doctor_app_flutter/client/base_app_client.dart';
|
||||
import 'package:doctor_app_flutter/config/config.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
|
||||
import '../../locator.dart';
|
||||
import 'base_view_model.dart';
|
||||
// TODO change it when change login
|
||||
class HospitalViewModel with ChangeNotifier {
|
||||
BaseAppClient baseAppClient = BaseAppClient();
|
||||
|
||||
///This View Model just an example
|
||||
class HospitalViewModel extends BaseViewModel {
|
||||
HospitalService _hospitalService = locator<HospitalService>();
|
||||
Future<Map> getProjectsList() async {
|
||||
const url = GET_PROJECTS;
|
||||
// TODO create model or remove it if no info need
|
||||
var info = {
|
||||
"LanguageID": 1,
|
||||
"stamp": "2020-02-26T13:51:44.111Z",
|
||||
"IPAdress": "11.11.11.11",
|
||||
"VersionID": 1.2,
|
||||
"Channel": 9,
|
||||
"TokenID": "",
|
||||
"SessionID": "i1UJwCTSqt",
|
||||
"IsLoginForDoctorApp": true
|
||||
};
|
||||
dynamic localRes;
|
||||
|
||||
List<HospitalsModel> get hospitals => _hospitalService.hospitals;
|
||||
|
||||
Future getHospitals() async {
|
||||
setState(ViewState.Busy);
|
||||
await _hospitalService.getHospitals();
|
||||
if (_hospitalService.hasError) {
|
||||
error = _hospitalService.error;
|
||||
setState(ViewState.Error);
|
||||
} else
|
||||
setState(ViewState.Idle);
|
||||
await baseAppClient.post(url, onSuccess: (response, statusCode) async {
|
||||
localRes = response;
|
||||
}, onFailure: (String error, int statusCode) {
|
||||
throw error;
|
||||
}, body: info);
|
||||
return Future.value(localRes);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,29 +0,0 @@
|
||||
import 'package:doctor_app_flutter/client/base_app_client.dart';
|
||||
import 'package:doctor_app_flutter/config/config.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
|
||||
class HospitalProvider with ChangeNotifier {
|
||||
BaseAppClient baseAppClient = BaseAppClient();
|
||||
|
||||
Future<Map> getProjectsList() async {
|
||||
const url = GET_PROJECTS;
|
||||
var info = {
|
||||
"LanguageID": 1,
|
||||
"stamp": "2020-02-26T13:51:44.111Z",
|
||||
"IPAdress": "11.11.11.11",
|
||||
"VersionID": 1.2,
|
||||
"Channel": 9,
|
||||
"TokenID": "",
|
||||
"SessionID": "i1UJwCTSqt",
|
||||
"IsLoginForDoctorApp": true
|
||||
};
|
||||
dynamic localRes;
|
||||
|
||||
await baseAppClient.post(url, onSuccess: (response, statusCode) async {
|
||||
localRes = response;
|
||||
}, onFailure: (String error, int statusCode) {
|
||||
throw error;
|
||||
}, body: info);
|
||||
return Future.value(localRes);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue