|
|
|
|
@ -1,5 +1,6 @@
|
|
|
|
|
import 'dart:convert';
|
|
|
|
|
import 'dart:io';
|
|
|
|
|
|
|
|
|
|
import 'package:flutter/cupertino.dart';
|
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
|
@ -31,6 +32,7 @@ import 'package:test_sa/views/widgets/equipment/asset_picker.dart';
|
|
|
|
|
import 'package:test_sa/views/widgets/images/multi_image_picker.dart';
|
|
|
|
|
import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
|
|
|
|
|
import 'package:test_sa/views/widgets/sound/TextSpeechRecordWidget.dart';
|
|
|
|
|
|
|
|
|
|
import '../../../../../../new_views/common_widgets/default_app_bar.dart';
|
|
|
|
|
|
|
|
|
|
class CreateNewRequest extends StatefulWidget {
|
|
|
|
|
@ -81,15 +83,17 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
isFirstActionSubmitted = _serviceRequest.firstAction != null;
|
|
|
|
|
// _isLoading = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<void> getInitialData() async {
|
|
|
|
|
WidgetsBinding.instance.addPostFrameCallback((_) async{
|
|
|
|
|
await Provider.of<PriorityProvider>(context,listen: false).getDate();
|
|
|
|
|
await Provider.of<EquipmentStatusProvider>(context,listen: false).getDate();
|
|
|
|
|
await Provider.of<RequestedThroughProvider>(context,listen: false).getDate();
|
|
|
|
|
await Provider.of<TypeOfRequestProvider>(context,listen: false).getDate();
|
|
|
|
|
WidgetsBinding.instance.addPostFrameCallback((_) async {
|
|
|
|
|
if(Provider.of<SettingProvider>(context, listen: false).showPriority) {
|
|
|
|
|
await Provider.of<PriorityProvider>(context, listen: false).getDate();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
await Provider.of<EquipmentStatusProvider>(context, listen: false).getDate();
|
|
|
|
|
await Provider.of<RequestedThroughProvider>(context, listen: false).getDate();
|
|
|
|
|
await Provider.of<TypeOfRequestProvider>(context, listen: false).getDate();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
|
@ -143,9 +147,11 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
showPendingRequests();
|
|
|
|
|
}),
|
|
|
|
|
],
|
|
|
|
|
21.height,
|
|
|
|
|
if (Provider.of<SettingProvider>(context, listen: false).showPriority) ...[
|
|
|
|
|
16.height,
|
|
|
|
|
highPriorityWidget(),
|
|
|
|
|
20.height,
|
|
|
|
|
],
|
|
|
|
|
16.height,
|
|
|
|
|
assetStatusWidget(context),
|
|
|
|
|
24.height,
|
|
|
|
|
MultiFilesPicker(
|
|
|
|
|
@ -210,7 +216,7 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
height: 24,
|
|
|
|
|
child: Radio(
|
|
|
|
|
value: element,
|
|
|
|
|
activeColor:AppColor.primary10,
|
|
|
|
|
activeColor: AppColor.primary10,
|
|
|
|
|
fillColor: WidgetStateColor.resolveWith((states) {
|
|
|
|
|
if (states.contains(WidgetState.selected)) {
|
|
|
|
|
return AppColor.primary10; // Thumb color when selected
|
|
|
|
|
@ -225,7 +231,7 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
}),
|
|
|
|
|
),
|
|
|
|
|
8.width,
|
|
|
|
|
Text(element.name??'', style: AppTextStyles.tinyFont.copyWith(color:AppColor.neutral120)),
|
|
|
|
|
Text(element.name ?? '', style: AppTextStyles.tinyFont.copyWith(color: AppColor.neutral120)),
|
|
|
|
|
],
|
|
|
|
|
)
|
|
|
|
|
],
|
|
|
|
|
@ -257,11 +263,11 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
children: [
|
|
|
|
|
context.translation.highPriority.bodyText(context).custom(color: AppColor.black20),
|
|
|
|
|
Consumer<PriorityProvider>(builder: (cxt, snapshot, _) {
|
|
|
|
|
if(snapshot.items.isNotEmpty){
|
|
|
|
|
if (snapshot.items.isNotEmpty) {
|
|
|
|
|
_serviceRequest.priority ??= snapshot.items.firstWhere((element) => element.value == 0, orElse: () => Lookup());
|
|
|
|
|
}
|
|
|
|
|
return CupertinoSwitch(
|
|
|
|
|
thumbColor:_serviceRequest.priority?.value != 0? AppColor.red70:AppColor.neutral10,
|
|
|
|
|
thumbColor: _serviceRequest.priority?.value != 0 ? AppColor.red70 : AppColor.neutral10,
|
|
|
|
|
activeColor: AppColor.red30.withOpacity(0.4),
|
|
|
|
|
value: _serviceRequest.priority?.value != 0,
|
|
|
|
|
onChanged: (state) {
|
|
|
|
|
@ -287,8 +293,7 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
serviceRequest?.audio = audio;
|
|
|
|
|
},
|
|
|
|
|
enabled: serviceRequest == null ? true : false,
|
|
|
|
|
)
|
|
|
|
|
.paddingOnly(start: 16, end: 16,bottom: 16);
|
|
|
|
|
).paddingOnly(start: 16, end: 16, bottom: 16);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool checkPendingRequest = false;
|
|
|
|
|
@ -360,13 +365,12 @@ class _CreateNewRequestState extends State<CreateNewRequest> with TickerProvider
|
|
|
|
|
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
|
|
|
|
|
|
|
|
|
|
int status = await _requestDetailProvider.createWorkOrder();
|
|
|
|
|
if(status==200){
|
|
|
|
|
DashBoardProvider dashBoardProvider = Provider.of<DashBoardProvider>(context,listen: false);
|
|
|
|
|
dashBoardProvider.refreshDashboard(context: context,userType: UsersTypes.nurse);
|
|
|
|
|
if (status == 200) {
|
|
|
|
|
DashBoardProvider dashBoardProvider = Provider.of<DashBoardProvider>(context, listen: false);
|
|
|
|
|
dashBoardProvider.refreshDashboard(context: context, userType: UsersTypes.nurse);
|
|
|
|
|
Navigator.pop(context);
|
|
|
|
|
Navigator.pop(context);
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
} else {
|
|
|
|
|
Navigator.pop(context);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|