in progress
parent
58666916cc
commit
c2b3288423
@ -0,0 +1,38 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:http/http.dart';
|
||||
import 'package:test_sa/providers/loading_list_notifier.dart';
|
||||
|
||||
import '../../controllers/api_routes/api_manager.dart';
|
||||
import '../../controllers/api_routes/urls.dart';
|
||||
import '../../models/lookup.dart';
|
||||
|
||||
class RejectReasonProvider extends LoadingListNotifier<Lookup> {
|
||||
|
||||
|
||||
@override
|
||||
Future getDate() async {
|
||||
if (loading == true) return -2;
|
||||
loading = true;
|
||||
notifyListeners();
|
||||
loading = true;
|
||||
notifyListeners();
|
||||
try {
|
||||
Response response = await ApiManager.instance.get(URLs.getServiceReportRejectionReasons);
|
||||
stateCode = response.statusCode;
|
||||
if (response.statusCode >= 200 && response.statusCode < 300) {
|
||||
// client's request was successfully received
|
||||
List categoriesListJson = json.decode(response.body)["data"];
|
||||
items = categoriesListJson.map((item) => Lookup.fromJson(item)).toList();
|
||||
}
|
||||
loading = false;
|
||||
notifyListeners();
|
||||
return response.statusCode;
|
||||
} catch (error) {
|
||||
loading = false;
|
||||
stateCode = -1;
|
||||
notifyListeners();
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:http/http.dart';
|
||||
import 'package:test_sa/controllers/api_routes/api_manager.dart';
|
||||
import 'package:test_sa/controllers/api_routes/urls.dart';
|
||||
import 'package:test_sa/models/fault_description.dart';
|
||||
import 'package:test_sa/models/service_request/spare_parts.dart';
|
||||
|
||||
class FaultDescriptionProvider extends ChangeNotifier {
|
||||
|
||||
int? _stateCode;
|
||||
|
||||
int? get stateCode => _stateCode;
|
||||
|
||||
bool _loading = false;
|
||||
|
||||
bool get isLoading => _loading;
|
||||
|
||||
set isLoading(bool isLoading) {
|
||||
_loading = isLoading;
|
||||
notifyListeners();
|
||||
}
|
||||
Future<List<FaultDescription>> getFaultDescriptionList({num? assetId}) async {
|
||||
late Response response;
|
||||
try {
|
||||
|
||||
response = await ApiManager.instance.get(URLs.getFaultDescription+"?assetId=$assetId",);
|
||||
List<FaultDescription> list = [];
|
||||
if (response.statusCode >= 200 && response.statusCode < 300) {
|
||||
// client's request was successfully received
|
||||
List faultListJson = json.decode(response.body)["data"];
|
||||
list = faultListJson.map((fault) => FaultDescription.fromJson(fault)).toList();
|
||||
}
|
||||
return list;
|
||||
} catch (error) {
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,42 +1,55 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:test_sa/extensions/context_extension.dart';
|
||||
import 'package:test_sa/extensions/int_extensions.dart';
|
||||
import 'package:test_sa/extensions/string_extensions.dart';
|
||||
import 'package:test_sa/extensions/text_extensions.dart';
|
||||
import 'package:test_sa/extensions/widget_extensions.dart';
|
||||
import 'package:test_sa/models/helper_data_models/workorder/work_order_helper_models.dart';
|
||||
import 'package:test_sa/models/service_request/service_request.dart';
|
||||
import 'package:test_sa/new_views/app_style/app_color.dart';
|
||||
import 'package:test_sa/service_request_latest/request_detail_provider.dart';
|
||||
import 'package:test_sa/service_request_latest/views/components/bottom_sheets/service_request_bottomsheet.dart';
|
||||
|
||||
class InitialVisitCard extends StatelessWidget {
|
||||
const InitialVisitCard({Key? key}) : super(key: key);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(14),
|
||||
color: AppColor.white10,
|
||||
),
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.toScreenWidth, vertical: 14.toScreenHeight),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [
|
||||
Text(
|
||||
DateTime.now().toString().toInitialVisitCardFormat,
|
||||
textAlign: TextAlign.end,
|
||||
style: AppTextStyles.heading6.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.black10),
|
||||
),
|
||||
"edit_icon".toSvgAsset(height: 21, width: 21).onPress(() {
|
||||
//open bottom sheet again with the informations added...
|
||||
}),
|
||||
]),
|
||||
2.height,
|
||||
context.translation.visitDateAndTime.heading6(context).custom(color: AppColor.neutral120),
|
||||
8.height,
|
||||
'Comments for the visit will be visible here for reference'.heading6(context).custom(color: AppColor.neutral120),
|
||||
return Consumer<RequestDetailProvider>(builder: (context, RequestDetailProvider requestDetailProvider, snapshot) {
|
||||
|
||||
],
|
||||
),
|
||||
);
|
||||
return Container(
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(14),
|
||||
color: AppColor.white10,
|
||||
),
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.toScreenWidth, vertical: 14.toScreenHeight),
|
||||
margin: EdgeInsets.only(top: 10.toScreenHeight),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [
|
||||
Text(
|
||||
requestDetailProvider.needVisitHelperModel!.visitDate.toString().toInitialVisitCardFormat,
|
||||
textAlign: TextAlign.end,
|
||||
style: AppTextStyles.heading6.copyWith(color: context.isDark ? AppColor.neutral30 : AppColor.black10),
|
||||
),
|
||||
"edit_icon".toSvgAsset(height: 21, width: 21).onPress(() {
|
||||
|
||||
ServiceRequestBottomSheet.initialVisitBottomSheet(context: context);
|
||||
}),
|
||||
]),
|
||||
2.height,
|
||||
context.translation.visitDateAndTime.bodyText2(context).custom(color: AppColor.neutral120),
|
||||
8.height,
|
||||
if (requestDetailProvider.needVisitHelperModel?.comment != null) ...[
|
||||
requestDetailProvider.needVisitHelperModel!.comment!.bodyText2(context).custom(
|
||||
color: AppColor.neutral120,
|
||||
),
|
||||
]
|
||||
],
|
||||
),
|
||||
);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue