find_us
parent
db79f299b6
commit
20f9f6f06c
@ -0,0 +1,39 @@
|
||||
import 'package:diplomaticquarterapp/config/config.dart';
|
||||
import 'package:diplomaticquarterapp/core/model/er/projectavgerwaitingtime.dart';
|
||||
import '../base_service.dart';
|
||||
|
||||
class ErService extends BaseService {
|
||||
List<ProjectAvgERWaitingTime> projectAvgERWaitingTimeModelList = List();
|
||||
Map<String, dynamic> body = Map();
|
||||
String Latitude = "";
|
||||
String Longitude = "";
|
||||
String PhoneNumber = "";
|
||||
|
||||
Future getProjectAvgERWaitingTimeOrders({int id, int projectID}) async {
|
||||
hasError = false;
|
||||
|
||||
if (id != null && projectID != null) {
|
||||
body['ID'] = id;
|
||||
body['ProjectID'] = projectID;
|
||||
}
|
||||
|
||||
await baseAppClient.post(GET_NEAREST_HOSPITAL,
|
||||
onSuccess: (dynamic response, int statusCode) {
|
||||
projectAvgERWaitingTimeModelList.clear();
|
||||
response['List_ProjectAvgERWaitingTime'].forEach((vital) {
|
||||
projectAvgERWaitingTimeModelList
|
||||
.add(ProjectAvgERWaitingTime.fromJson(vital));
|
||||
});
|
||||
projectAvgERWaitingTimeModelList.forEach((element) {
|
||||
Latitude = '${element.latitude}';
|
||||
Longitude = '${element.longitude}';
|
||||
PhoneNumber = '${element.phoneNumber}';
|
||||
});
|
||||
}, onFailure: (String error, int statusCode) {
|
||||
hasError = true;
|
||||
super.error = error;
|
||||
}, body: body);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,34 @@
|
||||
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
|
||||
import 'package:diplomaticquarterapp/core/model/er/projectavgerwaitingtime.dart';
|
||||
|
||||
import 'package:diplomaticquarterapp/core/service/er/er_service.dart';
|
||||
import 'package:diplomaticquarterapp/core/viewModels/base_view_model.dart';
|
||||
import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/BranchView.dart';
|
||||
|
||||
import '../../../locator.dart';
|
||||
|
||||
class NearHospitalViewModel extends BaseViewModel {
|
||||
|
||||
|
||||
ErService _erService = locator<ErService>();
|
||||
List<ProjectAvgERWaitingTime> get ProjectAvgERWaitingTimeModeList =>
|
||||
_erService.projectAvgERWaitingTimeModelList;
|
||||
|
||||
getProjectAvgERWaitingTimeOrders({int id, int projectID}) async {
|
||||
setState(ViewState.Busy);
|
||||
|
||||
if (id != null && projectID != null) {
|
||||
|
||||
await _erService.getProjectAvgERWaitingTimeOrders(id: id,projectID: projectID);
|
||||
} else {
|
||||
await _erService.getProjectAvgERWaitingTimeOrders();
|
||||
}
|
||||
if (_erService.hasError) {
|
||||
error = _erService.error;
|
||||
setState(ViewState.Error);
|
||||
} else
|
||||
setState(ViewState.Idle);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -1,147 +1,339 @@
|
||||
import 'package:diplomaticquarterapp/core/viewModels/er/near_hospital_view_model.dart';
|
||||
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
|
||||
import 'package:diplomaticquarterapp/uitl/location_util.dart';
|
||||
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
|
||||
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
|
||||
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import '../../uitl/translations_delegate_base.dart';
|
||||
import 'package:diplomaticquarterapp/pages/ErService/widgets/card_common.dart';
|
||||
import 'widgets/card_position.dart';
|
||||
|
||||
class NearestEr extends StatefulWidget {
|
||||
final bool isAppbar;
|
||||
|
||||
const NearestEr({Key key, this.isAppbar}) : super(key: key);
|
||||
@override
|
||||
_NearestErState createState() => _NearestErState();
|
||||
}
|
||||
class NearestEr extends StatelessWidget {
|
||||
|
||||
class _NearestErState extends State<NearestEr> {
|
||||
LocationUtils locationUtils;
|
||||
@override
|
||||
void initState() {
|
||||
locationUtils =
|
||||
new LocationUtils(isShowConfirmDialog: true, context: context);
|
||||
WidgetsBinding.instance
|
||||
.addPostFrameCallback((_) => locationUtils.getCurrentLocation());
|
||||
static const String url = "assets/images/";
|
||||
|
||||
super.initState();
|
||||
}
|
||||
int appointmentNo;
|
||||
int projectID;
|
||||
NearestEr({this.appointmentNo, this.projectID});
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return AppScaffold(
|
||||
isShowAppBar: widget.isAppbar,
|
||||
appBarTitle: TranslationBase.of(context).bookAppo,
|
||||
body: Container(
|
||||
margin: EdgeInsets.fromLTRB(10.0, 20.0, 10.0, 10.0),
|
||||
child: ListView(
|
||||
|
||||
children: <Widget>[
|
||||
Text(TranslationBase.of(context).searchBy,
|
||||
style: TextStyle(
|
||||
fontSize: 24.0,
|
||||
letterSpacing: 1.0,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: new Color(0xFF60686b))),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(0.0, 10.0, 0.0, 10.0),
|
||||
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
text: "Olaya Hospital",
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: TranslationBase.of(context).requestA,
|
||||
type: 3,
|
||||
),
|
||||
flex: 0,
|
||||
),
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
text: "Takhassusi Hospital",
|
||||
subText: TranslationBase.of(context).locationa,
|
||||
type: 5),
|
||||
flex: 0,
|
||||
|
||||
)
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
return BaseView<NearHospitalViewModel>(
|
||||
onModelReady: appointmentNo != null && projectID != null
|
||||
? (model) => model.getProjectAvgERWaitingTimeOrders(
|
||||
id: appointmentNo, projectID: projectID)
|
||||
: (model) => model.getProjectAvgERWaitingTimeOrders(),
|
||||
builder: (_, mode, widget) => AppScaffold(
|
||||
isShowAppBar: true,
|
||||
appBarTitle: 'Nearest ER',
|
||||
baseViewModel: mode,
|
||||
|
||||
body: mode.ProjectAvgERWaitingTimeModeList.length > 0
|
||||
? Container(
|
||||
child: ListView(
|
||||
|
||||
children: <Widget>[
|
||||
Text(TranslationBase.of(context).searchBy,
|
||||
style: TextStyle(
|
||||
fontSize: 24.0,
|
||||
letterSpacing: 1.0,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: new Color(0xFF60686b))),
|
||||
Container(
|
||||
margin: EdgeInsets.fromLTRB(0.0, 10.0, 0.0, 10.0),
|
||||
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
text: "Arryan Hospital",
|
||||
subText: TranslationBase.of(context).requestA,
|
||||
type: 4,
|
||||
),
|
||||
flex: 0,
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers,
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD,
|
||||
),
|
||||
flex: 0,
|
||||
|
||||
),
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
// mode
|
||||
// .vitalSignResModelList[
|
||||
// mode.vitalSignResModelList.length - 1]
|
||||
// .heightCm
|
||||
// .toString()
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers,
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD,
|
||||
),
|
||||
flex: 0,
|
||||
|
||||
)
|
||||
],
|
||||
),
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
text: "Suwaidi Hospital",
|
||||
subText: TranslationBase.of(context).locationa,
|
||||
type: 6),
|
||||
flex: 0,
|
||||
)
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
text: "Al Qassim Hospital",
|
||||
subText: TranslationBase.of(context).requestA,
|
||||
type: 7,
|
||||
),
|
||||
flex: 0,
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
// mode
|
||||
// .vitalSignResModelList[
|
||||
// mode.vitalSignResModelList.length - 1]
|
||||
// .heightCm
|
||||
// .toString()
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers,
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD,
|
||||
),
|
||||
flex: 0,
|
||||
),
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
// mode
|
||||
// .vitalSignResModelList[
|
||||
// mode.vitalSignResModelList.length - 1]
|
||||
// .heightCm
|
||||
// .toString()
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers,
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD,
|
||||
),
|
||||
flex: 0,
|
||||
)
|
||||
],
|
||||
),
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
text: "Khobar Hospital",
|
||||
subText: TranslationBase.of(context).locationa,
|
||||
type: 8),
|
||||
flex: 0,
|
||||
|
||||
)
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
text: "Dubai Hospital",
|
||||
subText: TranslationBase.of(context).requestA,
|
||||
type: 1,
|
||||
|
||||
),
|
||||
flex: 0,
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
// mode
|
||||
// .vitalSignResModelList[
|
||||
// mode.vitalSignResModelList.length - 1]
|
||||
// .heightCm
|
||||
// .toString()
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers,
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD,
|
||||
),
|
||||
flex: 0,
|
||||
),
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
// mode
|
||||
// .vitalSignResModelList[
|
||||
// mode.vitalSignResModelList.length - 1]
|
||||
// .heightCm
|
||||
// .toString()
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers,
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD,
|
||||
),
|
||||
flex: 0,
|
||||
|
||||
)
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: <Widget>[
|
||||
Expanded(
|
||||
child: CardPosition(
|
||||
|
||||
|
||||
text: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].projectName,
|
||||
image: 'assets/images/new-design/find_us_icon.png',
|
||||
|
||||
subText: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].distanceInKilometers.toString(),
|
||||
type: mode.ProjectAvgERWaitingTimeModeList[mode.ProjectAvgERWaitingTimeModeList.length-1].iD.toString(),
|
||||
),
|
||||
flex: 0,
|
||||
),
|
||||
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
),
|
||||
],
|
||||
)
|
||||
),
|
||||
],
|
||||
),
|
||||
)
|
||||
: Center(
|
||||
child: Texts('No Data'),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//class NearestEr extends StatefulWidget {
|
||||
// static const String url = "assets/images/";
|
||||
// final bool isAppbar;
|
||||
//
|
||||
//
|
||||
// const NearestEr({Key key, this.isAppbar}) : super(key: key);
|
||||
// @override
|
||||
// _NearestErState createState() => _NearestErState();
|
||||
//}
|
||||
//
|
||||
//class _NearestErState extends State<NearestEr> {
|
||||
// LocationUtils locationUtils;
|
||||
// @override
|
||||
// void initState() {
|
||||
// locationUtils =
|
||||
// new LocationUtils(isShowConfirmDialog: true, context: context);
|
||||
// WidgetsBinding.instance
|
||||
// .addPostFrameCallback((_) => locationUtils.getCurrentLocation());
|
||||
//
|
||||
// super.initState();
|
||||
// }
|
||||
// @override
|
||||
// Widget build(BuildContext context) {
|
||||
// return AppScaffold(
|
||||
// isShowAppBar: widget.isAppbar,
|
||||
// appBarTitle: TranslationBase.of(context).bookAppo,
|
||||
// body: Container(
|
||||
// margin: EdgeInsets.fromLTRB(10.0, 20.0, 10.0, 10.0),
|
||||
// child: ListView(
|
||||
//
|
||||
// children: <Widget>[
|
||||
// Text(TranslationBase.of(context).searchBy,
|
||||
// style: TextStyle(
|
||||
// fontSize: 24.0,
|
||||
// letterSpacing: 1.0,
|
||||
// fontWeight: FontWeight.bold,
|
||||
// color: new Color(0xFF60686b))),
|
||||
// Container(
|
||||
// margin: EdgeInsets.fromLTRB(0.0, 10.0, 0.0, 10.0),
|
||||
//
|
||||
// child: Column(
|
||||
// mainAxisAlignment: MainAxisAlignment.center,
|
||||
// children: <Widget>[
|
||||
// Row(
|
||||
// mainAxisSize: MainAxisSize.min,
|
||||
// mainAxisAlignment: MainAxisAlignment.center,
|
||||
// children: <Widget>[
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// text: "Olaya Hospital",
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
//
|
||||
// subText: TranslationBase.of(context).requestA,
|
||||
// type: 3,
|
||||
// ),
|
||||
// flex: 0,
|
||||
//
|
||||
// ),
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
// text: "Takhassusi Hospital",
|
||||
// subText: TranslationBase.of(context).locationa,
|
||||
// type: 5),
|
||||
// flex: 0,
|
||||
//
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisSize: MainAxisSize.max,
|
||||
// mainAxisAlignment: MainAxisAlignment.center,
|
||||
// children: <Widget>[
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
// text: "Arryan Hospital",
|
||||
// subText: TranslationBase.of(context).requestA,
|
||||
// type: 4,
|
||||
// ),
|
||||
// flex: 0,
|
||||
// ),
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
// text: "Suwaidi Hospital",
|
||||
// subText: TranslationBase.of(context).locationa,
|
||||
// type: 6),
|
||||
// flex: 0,
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisSize: MainAxisSize.max,
|
||||
// mainAxisAlignment: MainAxisAlignment.center,
|
||||
// children: <Widget>[
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
// text: "Al Qassim Hospital",
|
||||
// subText: TranslationBase.of(context).requestA,
|
||||
// type: 7,
|
||||
// ),
|
||||
// flex: 0,
|
||||
// ),
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
// text: "Khobar Hospital",
|
||||
// subText: TranslationBase.of(context).locationa,
|
||||
// type: 8),
|
||||
// flex: 0,
|
||||
//
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// Row(
|
||||
// mainAxisSize: MainAxisSize.max,
|
||||
// mainAxisAlignment: MainAxisAlignment.center,
|
||||
// children: <Widget>[
|
||||
// Expanded(
|
||||
// child: CardPosition(
|
||||
// image: 'assets/images/new-design/find_us_icon.png',
|
||||
// text: "Dubai Hospital",
|
||||
// subText: TranslationBase.of(context).requestA,
|
||||
// type: 1,
|
||||
//
|
||||
// ),
|
||||
// flex: 0,
|
||||
// ),
|
||||
//
|
||||
// ],
|
||||
// ),
|
||||
// ],
|
||||
// )
|
||||
// ),
|
||||
// ],
|
||||
// ),
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
//}
|
||||
|
||||
Loading…
Reference in New Issue