Enhancemnets

merge-requests/30/head
zaid_daoud 3 years ago
parent 64cb524917
commit 9346990626

@ -314,8 +314,8 @@ class ServiceRequestsProvider extends ChangeNotifier {
"currentSituation": null, "currentSituation": null,
"repairLocation": report.repairLocation?.toMap(), "repairLocation": report.repairLocation?.toMap(),
"reason": report.reason?.toMap(), "reason": report.reason?.toMap(),
"startofWorkTime": report.timer?.startAt?.toIso8601String() ?? "", "startofWorkTime": report.startDate?.toIso8601String() ?? "",
"endofWorkTime": report.timer?.endAt?.toIso8601String() ?? "", "endofWorkTime": report.endDate?.toIso8601String() ?? "",
"workingHours": report.timer?.durationInSecond, "workingHours": report.timer?.durationInSecond,
"travelingHours": report.travelingHours, "travelingHours": report.travelingHours,
"travelingExpenses": report.travelingExpense ?? 0, "travelingExpenses": report.travelingExpense ?? 0,

@ -13,6 +13,7 @@ class ServiceReport {
String operatingHours; String operatingHours;
DateTime visitDate; DateTime visitDate;
DateTime endDate; DateTime endDate;
DateTime startDate;
Lookup assetType; Lookup assetType;
Lookup callLastSituation; Lookup callLastSituation;
Lookup repairLocation; Lookup repairLocation;
@ -69,6 +70,7 @@ class ServiceReport {
this.comment, this.comment,
this.repairLocation, this.repairLocation,
this.travelingExpense, this.travelingExpense,
this.startDate,
}); });
Map<String, dynamic> toMap(ServiceRequest request) { Map<String, dynamic> toMap(ServiceRequest request) {
@ -123,6 +125,8 @@ class ServiceReport {
_map["engSignature"] = signatureEngineer; _map["engSignature"] = signatureEngineer;
_map["comment"] = comment; _map["comment"] = comment;
_map["travelingExpense"] = travelingExpense; _map["travelingExpense"] = travelingExpense;
_map["startofWorkTime"] = startDate;
_map["endofWorkTime"] = endDate;
return _map; return _map;
} }

@ -35,6 +35,7 @@ import 'package:test_sa/views/widgets/status/report/service_status.dart';
import 'package:test_sa/views/widgets/timer/app_timer.dart'; import 'package:test_sa/views/widgets/timer/app_timer.dart';
import 'package:test_sa/views/widgets/titles/app_sub_title.dart'; import 'package:test_sa/views/widgets/titles/app_sub_title.dart';
import '../../../../widgets/speech_to_text/speech_to_text.dart';
import '../../../../widgets/status/report/service_report_repair_location.dart'; import '../../../../widgets/status/report/service_report_repair_location.dart';
class CreateServiceReport extends StatefulWidget { class CreateServiceReport extends StatefulWidget {
@ -330,6 +331,54 @@ class _CreateServiceReportState extends State<CreateServiceReport> with TickerPr
SizedBox( SizedBox(
height: 8 * AppStyle.getScaleFactor(context), height: 8 * AppStyle.getScaleFactor(context),
), ),
Row(
children: [
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
const ASubTitle("Start Date"),
SizedBox(
height: 8 * AppStyle.getScaleFactor(context),
),
ADatePicker(
date: _serviceReport.startDate,
from: DateTime.now().subtract(const Duration(days: 365)),
to: DateTime.now().add(const Duration(days: 365)),
onDatePicker: (date) {
_serviceReport.startDate = date;
setState(() {});
},
),
],
),
),
const SizedBox(width: 8),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
const ASubTitle("End Date"),
SizedBox(
height: 8 * AppStyle.getScaleFactor(context),
),
ADatePicker(
date: _serviceReport.endDate,
from: DateTime.now().subtract(const Duration(days: 365)),
to: DateTime.now().add(const Duration(days: 365)),
onDatePicker: (date) {
_serviceReport.endDate = date;
setState(() {});
},
),
],
),
),
],
),
SizedBox(
height: 8 * AppStyle.getScaleFactor(context),
),
const ASubTitle("Assigned Employee"), const ASubTitle("Assigned Employee"),
const SizedBox( const SizedBox(
height: 8, height: 8,
@ -404,65 +453,69 @@ class _CreateServiceReportState extends State<CreateServiceReport> with TickerPr
), ),
], ],
), ),
// const SizedBox(height: 8,), const SizedBox(height: 8),
// Row( Row(
// children: [ children: [
// ASubTitle(_subtitle.faultDescription), ASubTitle(_subtitle.faultDescription),
// Expanded( Expanded(
// child: SizedBox( child: SizedBox(
// height: 32 * AppStyle.getScaleFactor(context), height: 32 * AppStyle.getScaleFactor(context),
// child: SpeechToTextButton( child: SpeechToTextButton(
// controller: _faultController, controller: _faultController,
// mini: true, mini: true,
// ), ),
// ), ),
// ), ),
// ], ],
// ), ),
// const SizedBox(height: 4,), const SizedBox(
// ATextFormField( height: 4,
// initialValue: _serviceReport?.faultDescriptionId, ),
// textAlign: TextAlign.center, ATextFormField(
// controller: _faultController, initialValue: _serviceReport?.faultDescriptionId?.toString(),
// style: Theme.of(context).textTheme.subtitle1, textAlign: TextAlign.center,
// validator: (value) => controller: _faultController,
// Validator.hasValue(value) style: Theme.of(context).textTheme.titleMedium,
// ? null : _subtitle.requiredWord, validator: (value) => Validator.hasValue(value) ? null : _subtitle.requiredWord,
// textInputType: TextInputType.multiline, textInputType: TextInputType.multiline,
// onSaved: (value){ onSaved: (value) {
// _serviceReport.faultDescriptionId = value; _serviceReport.faultDescriptionId = int.tryParse(value) ?? 0;
// }, },
// ), ),
// const SizedBox(height: 8,), const SizedBox(
// Row( height: 8,
// children: [ ),
// ASubTitle(_subtitle.workPreformed), Row(
// Expanded( children: [
// child: SizedBox( ASubTitle(_subtitle.workPreformed),
// height: 32 * AppStyle.getScaleFactor(context), Expanded(
// child: SpeechToTextButton( child: SizedBox(
// controller: _workPreformedController, height: 32 * AppStyle.getScaleFactor(context),
// mini: true, child: SpeechToTextButton(
// ), controller: _workPreformedController,
// ), mini: true,
// ), ),
// ], ),
// ), ),
// const SizedBox(height: 4,), ],
// ATextFormField( ),
// initialValue: _serviceReport?.workPreformed, const SizedBox(
// textAlign: TextAlign.center, height: 4,
// controller: _workPreformedController, ),
// style: Theme.of(context).textTheme.subtitle1, ATextFormField(
// validator: (value) => initialValue: _serviceReport?.workPreformed,
// Validator.hasValue(value) textAlign: TextAlign.center,
// ? null : _subtitle.requiredWord, controller: _workPreformedController,
// textInputType: TextInputType.multiline, style: Theme.of(context).textTheme.subtitle1,
// onSaved: (value){ validator: (value) => Validator.hasValue(value) ? null : _subtitle.requiredWord,
// _serviceReport.workPreformed = value; textInputType: TextInputType.multiline,
// }, onSaved: (value) {
// ), _serviceReport.workPreformed = value;
// const SizedBox(height: 8,), },
),
const SizedBox(
height: 8,
),
const SizedBox( const SizedBox(
height: 8, height: 8,

Loading…
Cancel
Save