add maintenance request completed

main
muhammad.abbasi 2 years ago
parent 0b72f0b219
commit c2f4722bb3

@ -6,6 +6,7 @@ import 'package:test_sa/models/service_request/supp_engineer_work_orders.dart';
import 'package:test_sa/models/service_request/supplier_details.dart';
class ActivityMaintenanceHelperModel {
int? id;
int? workOrderId;
int? lastSituationId;
Lookup? activityStatus;
@ -29,7 +30,8 @@ class ActivityMaintenanceHelperModel {
List<AssistantEmployees>? assistantEmployees;
ActivityMaintenanceHelperModel(
{this.workOrderId,
{this.id,
this.workOrderId,
this.lastSituationId,
this.startTime,
this.supplier,
@ -52,6 +54,7 @@ class ActivityMaintenanceHelperModel {
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['id'] = id;
data['workOrderId'] = workOrderId;
data['lastSituationId'] = lastSituationId;
data['activityStatusId'] = activityStatus?.id;

@ -603,6 +603,7 @@ class RequestDetailProvider extends ChangeNotifier {
currentWorkOrder = WorkOrderDetail.fromJson(json.decode(response.body));
updateCurrentWorkOrder(currentWorkOrder);
notifyListeners();
return response.statusCode;
}
isLoading = false;
notifyListeners();

@ -17,6 +17,7 @@ import 'package:test_sa/new_views/common_widgets/default_app_bar.dart';
import 'package:test_sa/service_request_latest/request_detail_provider.dart';
import 'package:test_sa/service_request_latest/views/components/action_button/footer_action_button.dart';
import 'package:test_sa/service_request_latest/views/components/bottom_sheets/service_request_bottomsheet.dart';
import 'package:test_sa/service_request_latest/views/forms/maintenance_request/maintenance_request_main.dart';
import 'package:test_sa/service_request_latest/views/forms/spare_part/spare_part_request.dart';
import 'package:test_sa/views/widgets/images/files_list.dart';
import 'package:test_sa/views/widgets/loaders/no_data_found.dart';
@ -83,9 +84,7 @@ class ActivitiesListView extends StatelessWidget {
backgroundColor: AppColor.getHistoryLogStatusColorByName(activity.activityStatus!.name!),
),
"drag_icon".toSvgAsset(height: 12, width: 23, color: AppColor.neutral160),
if (userProvider.user!.type == UsersTypes.engineer &&
requestDetailProvider.currentWorkOrder?.data?.status?.value != 5 &&
requestDetailProvider.currentWorkOrder?.data?.status?.value != 3)
if (userProvider.user!.type == UsersTypes.engineer && requestDetailProvider.currentWorkOrder?.data?.status?.value != 5 && requestDetailProvider.currentWorkOrder?.data?.status?.value != 3)
Row(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
@ -115,8 +114,7 @@ builder: (_) => const SparePartRequest(),
24.width,
"delete_icon".toSvgAsset(height: 21, width: 21).onPress(() async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
int status =
await requestDetailProvider.deleteActivitySparePart(id: activity.id!, workOrderId: requestDetailProvider.currentWorkOrder!.data!.requestId!);
int status = await requestDetailProvider.deleteActivitySparePart(id: activity.id!, workOrderId: requestDetailProvider.currentWorkOrder!.data!.requestId!);
if (status == 200) {
await requestDetailProvider.getWorkOrderById(id: requestDetailProvider.currentWorkOrder!.data!.requestId!);
Navigator.pop(context);
@ -172,6 +170,7 @@ FilesList(images: activity.activitySparePart!.acitiySparePartAttachments!.map((t
// );
});
}
Widget maintenanceActivityCard({required RequestDetailProvider requestDetailProvider, required UserProvider userProvider, required BuildContext context, required Activities activity}) {
return Column(
mainAxisSize: MainAxisSize.min,
@ -186,9 +185,7 @@ FilesList(images: activity.activitySparePart!.acitiySparePartAttachments!.map((t
backgroundColor: AppColor.getHistoryLogStatusColorByName(activity.activityStatus!.name!),
),
"drag_icon".toSvgAsset(height: 12, width: 23, color: AppColor.neutral160),
if (userProvider.user!.type == UsersTypes.engineer &&
requestDetailProvider.currentWorkOrder?.data?.status?.value != 5 &&
requestDetailProvider.currentWorkOrder?.data?.status?.value != 3)
if (userProvider.user!.type == UsersTypes.engineer && requestDetailProvider.currentWorkOrder?.data?.status?.value != 5 && requestDetailProvider.currentWorkOrder?.data?.status?.value != 3)
Row(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
@ -212,14 +209,13 @@ activityStatusId: activity.activityStatus?.id,
requestDetailProvider.updateSparePartHelperModel(requestDetailProvider.sparePartHelperModel);
Navigator.of(context).push(MaterialPageRoute(
builder: (_) => const SparePartRequest(),
builder: (_) => const MaintenanceRequestForm(),
));
}),
24.width,
"delete_icon".toSvgAsset(height: 21, width: 21).onPress(() async {
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
int status =
await requestDetailProvider.deleteActivitySparePart(id: activity.id!, workOrderId: requestDetailProvider.currentWorkOrder!.data!.requestId!);
int status = await requestDetailProvider.deleteActivitySparePart(id: activity.id!, workOrderId: requestDetailProvider.currentWorkOrder!.data!.requestId!);
if (status == 200) {
await requestDetailProvider.getWorkOrderById(id: requestDetailProvider.currentWorkOrder!.data!.requestId!);
Navigator.pop(context);

@ -36,7 +36,12 @@ class _MaintenanceRequestFormState extends State<MaintenanceRequestForm> with Si
}
Future<void> getInitialData() async {
Provider.of<ServiceReportRepairLocationProvider>(context, listen: false).getTypes();
Provider.of<RequestDetailProvider>(context,listen: false).activityMaintenanceHelperModel?.modelAssistantEmployees = MaintenanceActivityAssistantEmployees();
RequestDetailProvider requestDetailProvider = Provider.of<RequestDetailProvider>(context,listen: false);
requestDetailProvider.activityMaintenanceHelperModel = ActivityMaintenanceHelperModel(
);
requestDetailProvider.activityMaintenanceHelperModel?.modelAssistantEmployees = MaintenanceActivityAssistantEmployees();
}
@ -105,6 +110,7 @@ class _MaintenanceRequestFormState extends State<MaintenanceRequestForm> with Si
int status = -1;
// if (requestDetailProvider.activityMaintenanceHelperModel?.id == 0) {
status = await requestDetailProvider.createActivityMaintenanceRequest();
print('status i got is $status');
// } else {
// //TODO update logic...
// status = await requestDetailProvider.updateActivityMaintenance();

Loading…
Cancel
Save