verify asset detail card added on detail screen
parent
898eac0ee8
commit
f45e0e4f80
@ -1,3 +1,4 @@
|
||||
org.gradle.jvmargs=-Xmx2048m
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
org.gradle.java.home=/Users/waseem/Library/Java/JavaVirtualMachines/jbr-17.0.12/Contents/Home
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class ServiceRequestUtils{
|
||||
static int calculateAndAssignWorkingHours({
|
||||
required DateTime? startTime,
|
||||
required DateTime? endTime,
|
||||
required TextEditingController workingHoursController,
|
||||
required Function(int) updateModel, // A callback to update the model
|
||||
}) {
|
||||
print('end date i got is ${endTime}');
|
||||
if (startTime != null && endTime != null) {
|
||||
|
||||
Duration difference = endTime.difference(startTime);
|
||||
int hours = difference.inHours;
|
||||
|
||||
// Update the controller and model
|
||||
workingHoursController.text = hours.toString();
|
||||
updateModel(hours); // Call the function to update the model
|
||||
|
||||
return hours;
|
||||
} else {
|
||||
return -1; // Indicating invalid input
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,66 @@
|
||||
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/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';
|
||||
import 'package:test_sa/service_request_latest/views/components/verify_arrival_view.dart';
|
||||
import 'package:test_sa/service_request_latest/views/forms/asset_retired/verify_asset_detail.dart';
|
||||
import 'package:test_sa/views/widgets/requests/request_status.dart';
|
||||
|
||||
class AssetDetailCard extends StatelessWidget {
|
||||
const AssetDetailCard({Key? key}) : super(key: key);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
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: [
|
||||
StatusLabel(
|
||||
label: requestDetailProvider.engineerUpdateWorkOrderHelperModel?.equipmentStatus?.name,
|
||||
id: requestDetailProvider.engineerUpdateWorkOrderHelperModel!.equipmentStatus!.id ?? 0,
|
||||
radius: 4,
|
||||
textColor: AppColor.white10,
|
||||
backgroundColor: AppColor.getEquipmentStatusColor(context, requestDetailProvider.engineerUpdateWorkOrderHelperModel!.equipmentStatus!.id ?? 0),
|
||||
),
|
||||
"edit_icon".toSvgAsset(height: 21, width: 21).onPress(() {
|
||||
Navigator.push(context, MaterialPageRoute(builder: (context) => const VerifyAssetDetails()));
|
||||
}),
|
||||
]),
|
||||
6.height,
|
||||
context.translation.assetSituation.heading6(context).custom(color: AppColor.black20),
|
||||
6.height,
|
||||
Text(
|
||||
'${context.translation.returnToService}: ${requestDetailProvider.engineerUpdateWorkOrderHelperModel?.returnToService?.toAssetDetailsFormat}',
|
||||
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120),
|
||||
),
|
||||
6.height,
|
||||
Text(
|
||||
'${context.translation.loanAvailability}: ${requestDetailProvider.engineerUpdateWorkOrderHelperModel?.loanAvailability?.name}',
|
||||
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120),
|
||||
),
|
||||
6.height,
|
||||
Text(
|
||||
'${context.translation.failureReason}: ${requestDetailProvider.engineerUpdateWorkOrderHelperModel?.failureReason?.name}',
|
||||
style: AppTextStyles.bodyText.copyWith(color: context.isDark ? AppColor.neutral10 : AppColor.neutral120),
|
||||
),
|
||||
|
||||
],
|
||||
),
|
||||
);
|
||||
});
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue