This commit is contained in:
jantunesmesias 2024-08-06 13:35:42 -03:00
parent 330d86c102
commit 4989ba6b2b
6 changed files with 428 additions and 427 deletions

View File

@ -343,6 +343,7 @@ Future<bool> visitRequestComponentAction(
); );
if (respondeSolicitacaoCall.statusCode == 200) { if (respondeSolicitacaoCall.statusCode == 200) {
log('jsonBody: ${respondeSolicitacaoCall.jsonBody}; actionValue: $actionValue; refUUID: $refUUID; responseValue: $responseValue; vteUUID: $vteUUID');
return true; return true;
} else { } else {
log('headers: ${respondeSolicitacaoCall.headers}'); log('headers: ${respondeSolicitacaoCall.headers}');

View File

@ -1,3 +1,5 @@
import 'dart:math';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/app_state.dart'; import 'package:hub/app_state.dart';
import 'package:hub/components/templates_components/details_component/details_component_widget.dart'; import 'package:hub/components/templates_components/details_component/details_component_widget.dart';
@ -5,15 +7,28 @@ import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_widgets.dart'; import 'package:hub/flutter_flow/flutter_flow_widgets.dart';
import 'package:hub/flutter_flow/internationalization.dart'; import 'package:hub/flutter_flow/internationalization.dart';
import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:rxdart/rxdart.dart'; import 'package:rxdart/rxdart.dart';
import 'package:share_plus/share_plus.dart'; import 'package:share_plus/share_plus.dart';
bool? getStatus(dynamic data) { enum status { active, unknown, canceled, finished, blocked, inactive }
return data == 'A'
? true status? getStatus(dynamic data) {
: data == 'F' || data == 'B' || data == 'C' || data == 'I' debugPrint('getStatus: $data');
? false switch (data) {
: null; case 'A':
return status.active;
case 'F':
return status.finished;
case 'B':
return status.blocked;
case 'C':
return status.canceled;
case 'I':
return status.inactive;
default:
return status.unknown;
}
} }
Widget buildDetails( Widget buildDetails(
@ -34,10 +49,10 @@ Widget buildDetails(
vawUUID: 'Lorem Ipsus', vawUUID: 'Lorem Ipsus',
vawName: 'Lorem Ipsus', vawName: 'Lorem Ipsus',
vawRef: 'Lorem Ipsus', vawRef: 'Lorem Ipsus',
changeStatusAction: changeStatusAction, changeStatusAction: changeStatusAction,
buttons: [ buttons: [
if (getStatus(visitaWrapItem['VAW_STATUS']) == null) // ACCEPT ACTION if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.active) // ACCEPT ACTION
FlutterFlowIconButton( FlutterFlowIconButton(
icon: const Icon(Icons.done), icon: const Icon(Icons.done),
onPressed: () async { onPressed: () async {
@ -93,9 +108,9 @@ Widget buildDetails(
await changeStatusAction?.call( await changeStatusAction?.call(
context, context,
'L', 'L',
visitaWrapItem['VAW_REF'] ?? '', visitaWrapItem['VAW_ID'] ?? '',
'Mensagem', 'Mensagem',
visitaWrapItem['VTE_ID'] ?? '', visitaWrapItem['VTE_DOCUMENTO'] ?? '',
); );
}, },
options: FFButtonOptions( options: FFButtonOptions(
@ -118,7 +133,8 @@ Widget buildDetails(
}); });
}, },
), ),
if (getStatus(visitaWrapItem['VAW_STATUS']) == null) // REJECT ACTION if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.active) // REJECT ACTION
FlutterFlowIconButton( FlutterFlowIconButton(
icon: const Icon(Icons.close), icon: const Icon(Icons.close),
onPressed: () async { onPressed: () async {
@ -199,185 +215,45 @@ Widget buildDetails(
}); });
}, },
), ),
if (getStatus(visitaWrapItem['VAW_STATUS']) == false) // RECALL ACTION if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.finished) // RECALL ACTION
FlutterFlowIconButton( FlutterFlowIconButton(
icon: const Icon(Icons.refresh), icon: const Icon(Icons.refresh),
onPressed: () async { onPressed: () async {
showDialog(
context: context,
builder: (context) {
return AlertDialog(
title: Text(
FFLocalizations.of(context).getVariableText(
ptText: 'Bloquear Visita',
enText: 'Block Visit',
),
),
content: Text(
FFLocalizations.of(context).getVariableText(
ptText:
'Você tem certeza que deseja bloquear essa visita?',
enText: 'Are you sure you want to block this visit?',
),
),
backgroundColor:
FlutterFlowTheme.of(context).primaryBackground,
actions: [
FFButtonWidget(
text: FFLocalizations.of(context).getVariableText(
enText: 'No',
ptText: 'Não',
),
onPressed: () {
Navigator.pop(context); Navigator.pop(context);
}, Navigator.pop(context);
options: FFButtonOptions( context.pushNamed(
width: 100, 'scheduleCompleteVisitPage',
height: 40, queryParameters: {
color: 'visitorStrList': serializeParam(
FlutterFlowTheme.of(context).primaryBackground, visitaWrapItem['VTE_DOCUMENTO'],
textStyle: TextStyle( ParamType.String,
color: FlutterFlowTheme.of(context).primaryText,
), ),
borderSide: BorderSide( 'visitorJsonList': serializeParam(
color: FlutterFlowTheme.of(context) [visitaWrapItem],
.primaryBackground, ParamType.JSON,
width: 1, isList: true,
), ),
borderRadius: BorderRadius.circular(10)), }.withoutNulls,
),
FFButtonWidget(
text: FFLocalizations.of(context).getVariableText(
enText: 'Yes',
ptText: 'Sim',
),
onPressed: () async {
// await changeStatusAction?.call(
// context,
// 'B',
// visitaWrapItem['VAW_REF'] ?? '',
// 'Mensagem',
// visitaWrapItem['VTE_ID'] ?? '',
// );
},
options: FFButtonOptions(
width: 100,
height: 40,
color: FlutterFlowTheme.of(context).primaryBackground,
textStyle: TextStyle(
color: FlutterFlowTheme.of(context).primaryText,
),
borderSide: BorderSide(
color:
FlutterFlowTheme.of(context).primaryBackground,
width: 1,
),
borderRadius: BorderRadius.circular(10),
),
),
],
); );
});
}, },
), ),
if (getStatus(visitaWrapItem['VAW_STATUS']) == false) // SHARE ACTION if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.finished) // SHARE ACTION
FlutterFlowIconButton( FlutterFlowIconButton(
icon: const Icon(Icons.share), icon: const Icon(Icons.share),
onPressed: () async { onPressed: () async {
Share.share(r''' Share.share('''
Olá ${visitaWrapItem['VTE_NOME']} Olá, \*${visitaWrapItem['VTE_NOME']}\*! Você foi convidado para \*${visitaWrapItem['NAC_DESCRICAO']}\*.
Você foi convidado para ${visitaWrapItem['NAC_DESCRICAO']}
Validade do Convite: \*Validade do Convite\*:
visitaWrapItem['VAW_DTINICIO'] - Início: ${visitaWrapItem['VAW_DTINICIO']}
visitaWrapItem['VAW_DTFIM'] - Fim: ${visitaWrapItem['VAW_DTFIM']}
URL do Convite: https://visita.freaccess.com.br/${visitaWrapItem['VAW_ID']}/${visitaWrapItem['CLI_ID']}/${visitaWrapItem['VAW_CHAVE']} URL do Convite: https://visita.freaccess.com.br/${visitaWrapItem['VAW_ID']}/${visitaWrapItem['CLI_ID']}/${visitaWrapItem['VAW_CHAVE']}
'''); ''');
}, },
), ),
// if (getStatus(visitaWrapItem['VAW_STATUS']) == null) // SEND ACTION
// FlutterFlowIconButton(
// icon: const Icon(Icons.send),
// onPressed: () async {
// showDialog(
// context: context,
// builder: (context) {
// return AlertDialog(
// title: Text(
// FFLocalizations.of(context).getVariableText(
// ptText: 'Bloquear Visita',
// enText: 'Block Visit',
// ),
// ),
// content: Text(
// FFLocalizations.of(context).getVariableText(
// ptText:
// 'Você tem certeza que deseja bloquear essa visita?',
// enText: 'Are you sure you want to block this visit?',
// ),
// ),
// backgroundColor:
// FlutterFlowTheme.of(context).primaryBackground,
// actions: [
// FFButtonWidget(
// text: FFLocalizations.of(context).getVariableText(
// enText: 'No',
// ptText: 'Não',
// ),
// onPressed: () {
// Navigator.pop(context);
// },
// options: FFButtonOptions(
// width: 100,
// height: 40,
// color:
// FlutterFlowTheme.of(context).primaryBackground,
// textStyle: TextStyle(
// color: FlutterFlowTheme.of(context).primaryText,
// ),
// borderSide: BorderSide(
// color: FlutterFlowTheme.of(context)
// .primaryBackground,
// width: 1,
// ),
// borderRadius: BorderRadius.circular(10)),
// ),
// FFButtonWidget(
// text: FFLocalizations.of(context).getVariableText(
// enText: 'Yes',
// ptText: 'Sim',
// ),
// onPressed: () async {
// // await changeStatusAction?.call(
// // context,
// // 'B',
// // visitaWrapItem['VAW_REF'] ?? '',
// // 'Mensagem',
// // visitaWrapItem['VTE_ID'] ?? '',
// // );
// },
// options: FFButtonOptions(
// width: 100,
// height: 40,
// color: FlutterFlowTheme.of(context).primaryBackground,
// textStyle: TextStyle(
// color: FlutterFlowTheme.of(context).primaryText,
// ),
// borderSide: BorderSide(
// color:
// FlutterFlowTheme.of(context).primaryBackground,
// width: 1,
// ),
// borderRadius: BorderRadius.circular(10),
// ),
// ),
// ],
// );
// });
// },
// ),
], ],
labelsHashMap: Map<String, String>.from({ labelsHashMap: Map<String, String>.from({
'Nome': visitaWrapItem['VTE_NOME'] ?? '', 'Nome': visitaWrapItem['VTE_NOME'] ?? '',
@ -389,27 +265,48 @@ Widget buildDetails(
'value': 'E', 'value': 'E',
}), }),
statusHashMap: [ statusHashMap: [
getStatus(visitaWrapItem['VAW_STATUS']) == true if (getStatus(visitaWrapItem['VAW_STATUS']) == status.active)
? Map<String, Color>.from({ Map<String, Color>.from({
FFLocalizations.of(context).getVariableText( FFLocalizations.of(context).getVariableText(
ptText: 'Ativo', ptText: 'Ativo',
enText: 'Active', enText: 'Active',
): FlutterFlowTheme.of(context).success, ): FlutterFlowTheme.of(context).warning,
}) }),
: getStatus(visitaWrapItem['VAW_STATUS']) == null if (getStatus(visitaWrapItem['VAW_STATUS']) == status.unknown)
? Map<String, Color>.from({ Map<String, Color>.from({
FFLocalizations.of(context).getVariableText( FFLocalizations.of(context).getVariableText(
ptText: 'Pendente', ptText: 'Pendente',
enText: 'Pending', enText: 'Pending',
): FlutterFlowTheme.of(context).warning, ): FlutterFlowTheme.of(context).alternate,
}) }),
: Map<String, Color>.from({ if (getStatus(visitaWrapItem['VAW_STATUS']) == status.canceled)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText( FFLocalizations.of(context).getVariableText(
ptText: 'Cancelado', ptText: 'Cancelado',
enText: 'Canceled', enText: 'Canceled',
): FlutterFlowTheme.of(context).error, ): FlutterFlowTheme.of(context).error,
}), }),
if (getStatus(visitaWrapItem['VAW_STATUS']) == status.finished)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Finalizado',
enText: 'Finished',
): FlutterFlowTheme.of(context).success,
}),
if (getStatus(visitaWrapItem['VAW_STATUS']) == status.blocked)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Bloqueado',
enText: 'Blocked',
): FlutterFlowTheme.of(context).error,
}),
if (getStatus(visitaWrapItem['VAW_STATUS']) == status.inactive)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Inativo',
enText: 'Inactive',
): FlutterFlowTheme.of(context).error,
}),
], ],
// vteDocument: liberationHistoryItem['VTE_DOCUMENTO'],
); );
} }

View File

@ -154,7 +154,8 @@ class _RegisiterVistorTemplateComponentWidgetState
Padding( Padding(
padding: const EdgeInsetsDirectional.fromSTEB( padding: const EdgeInsetsDirectional.fromSTEB(
24.0, 0.0, 24.0, 0.0), 24.0, 0.0, 24.0, 0.0),
child: TextFormField( child: Column(children: [
TextFormField(
controller: _model.textController2, controller: _model.textController2,
focusNode: _model.textFieldFocusNode2, focusNode: _model.textFieldFocusNode2,
autovalidateMode: AutovalidateMode.onUserInteraction, autovalidateMode: AutovalidateMode.onUserInteraction,
@ -172,21 +173,22 @@ class _RegisiterVistorTemplateComponentWidgetState
labelStyle: FlutterFlowTheme.of(context) labelStyle: FlutterFlowTheme.of(context)
.labelMedium .labelMedium
.override( .override(
fontFamily: fontFamily: FlutterFlowTheme.of(context)
FlutterFlowTheme.of(context).labelMediumFamily, .labelMediumFamily,
color: FlutterFlowTheme.of(context).primaryText, color: FlutterFlowTheme.of(context).primaryText,
letterSpacing: 0.0, letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey( useGoogleFonts: GoogleFonts.asMap().containsKey(
FlutterFlowTheme.of(context).labelMediumFamily), FlutterFlowTheme.of(context)
.labelMediumFamily),
), ),
hintStyle: FlutterFlowTheme.of(context) hintStyle:
.labelMedium FlutterFlowTheme.of(context).labelMedium.override(
.override( fontFamily: FlutterFlowTheme.of(context)
fontFamily: .labelMediumFamily,
FlutterFlowTheme.of(context).labelMediumFamily,
letterSpacing: 0.0, letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey( useGoogleFonts: GoogleFonts.asMap()
FlutterFlowTheme.of(context).labelMediumFamily), .containsKey(FlutterFlowTheme.of(context)
.labelMediumFamily),
), ),
enabledBorder: OutlineInputBorder( enabledBorder: OutlineInputBorder(
borderSide: BorderSide( borderSide: BorderSide(
@ -235,14 +237,14 @@ class _RegisiterVistorTemplateComponentWidgetState
FilteringTextInputFormatter.allow(RegExp('[0-9]')), FilteringTextInputFormatter.allow(RegExp('[0-9]')),
], ],
), ),
),
FutureBuilder( FutureBuilder(
future: _model.textController2.text.isNotEmpty future: _model.textController2.text.isNotEmpty
? _model.getVisitanteByDocument( ? _model.getVisitanteByDocument(
_model.textController2.text, context) _model.textController2.text, context)
: null, : null,
builder: (BuildContext context, AsyncSnapshot snapshot) { builder: (BuildContext context, AsyncSnapshot snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) { if (snapshot.connectionState ==
ConnectionState.waiting) {
return const SizedBox(); return const SizedBox();
} else if (snapshot.hasError || } else if (snapshot.hasError ||
snapshot.data == null || snapshot.data == null ||
@ -258,25 +260,27 @@ class _RegisiterVistorTemplateComponentWidgetState
? const SizedBox() ? const SizedBox()
: Row( : Row(
mainAxisSize: MainAxisSize.max, mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.end, mainAxisAlignment: MainAxisAlignment.start,
children: [ children: [
Padding( Padding(
padding: EdgeInsets.only( padding: const EdgeInsetsDirectional.only(
right: MediaQuery.sizeOf(context).width * top: 5, start: 12),
0.1),
child: Text( child: Text(
FFLocalizations.of(context) FFLocalizations.of(context)
.getVariableText( .getVariableText(
enText: 'Visitor already registered', enText:
'Visitor already registered',
ptText: 'Visitante já cadastrado', ptText: 'Visitante já cadastrado',
), ),
style: FlutterFlowTheme.of(context) style: FlutterFlowTheme.of(context)
.bodySmall .labelSmall
.override( .override(
fontFamily: 'Nunito', fontFamily: 'Nunito',
color: FlutterFlowTheme.of(context) color: Color.alphaBlend(
.error, Colors.white
fontSize: 14.0, .withOpacity(0.7),
Colors.red),
fontSize: 13.0,
letterSpacing: 0.0, letterSpacing: 0.0,
)), )),
), ),
@ -285,6 +289,8 @@ class _RegisiterVistorTemplateComponentWidgetState
} }
}, },
), ),
]),
),
Padding( Padding(
padding: const EdgeInsetsDirectional.fromSTEB( padding: const EdgeInsetsDirectional.fromSTEB(
24.0, 0.0, 24.0, 0.0), 24.0, 0.0, 24.0, 0.0),
@ -419,8 +425,13 @@ class _RegisiterVistorTemplateComponentWidgetState
), ),
if (_model.dropDownValue == null || if (_model.dropDownValue == null ||
_model.dropDownValue == '') _model.dropDownValue == '')
Align( Row(
alignment: const AlignmentDirectional(0.4, 0), mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.max,
children: [
Padding(
padding: const EdgeInsetsDirectional.only(
top: 5, start: 15),
child: Text( child: Text(
FFLocalizations.of(context).getVariableText( FFLocalizations.of(context).getVariableText(
enText: 'This field is required', enText: 'This field is required',
@ -442,6 +453,8 @@ class _RegisiterVistorTemplateComponentWidgetState
), ),
], ],
), ),
],
),
), ),
Builder( Builder(
builder: (context) { builder: (context) {

View File

@ -73,23 +73,6 @@ class _VisitDetailsModalTemplateComponentWidgetState
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
log('------------------ VisitDetailsModalTemplateComponentWidget ------------------');
log('visitStatusStr: ${widget.visitStatusStr}');
log('visitStartDateStr: ${widget.visitStartDateStr}');
log('visitEndDateStr: ${widget.visitEndDateStr}');
log('visitReasonStr: ${widget.visitReasonStr}');
log('visitLevelStr: ${widget.visitLevelStr}');
log('visitTempStr: ${widget.visitTempStr}');
log('visitObsStr: ${widget.visitObsStr}');
log('visitorStrList: ${widget.visitorStrList}');
log('visitorJsonList: ${widget.visitorJsonList}');
log('visitorImgPath: ${widget.visitorImgPath}');
log('visitorImgList: ${widget.visitorImgList}');
log('visitIdStr: ${widget.visitIdStr}');
log('updateToggleIdx: ${widget.updateToggleIdx}');
log('repeatVisitSchedule: ${widget.repeatVisitSchedule}');
log('visitStatusColor: ${widget.visitStatusColor}');
log('-----------------------------------------------------------------------------');
return Builder( return Builder(
builder: (context) { builder: (context) {
if (widget.visitStatusStr != null && widget.visitStatusStr != '') { if (widget.visitStatusStr != null && widget.visitStatusStr != '') {

View File

@ -98,6 +98,51 @@ class PreferencesPageModel with ChangeNotifier {
} }
void toggleNotify(BuildContext context) { void toggleNotify(BuildContext context) {
showDialog(
context: context,
builder: (context) {
return AlertDialog(
backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
title: Text(
FFLocalizations.of(context).getVariableText(
enText: FFAppState().notify
? 'Access Notification'
: 'Disable Access Notification',
ptText: FFAppState().notify
? 'Notificação de acesso'
: 'Desativar notificação de acesso',
),
),
content: Text(
FFLocalizations.of(context).getVariableText(
ptText: 'Tem certeza que deseja desvincular este dispositivo?',
enText: 'Are you sure you want to unlink this device?',
),
),
actions: [
FFButtonWidget(
text: FFLocalizations.of(context).getVariableText(
enText: 'Cancel',
ptText: 'Cancelar',
),
onPressed: () {
Navigator.pop(context);
},
options: FFButtonOptions(
width: 100,
height: 40,
color: FlutterFlowTheme.of(context).primaryBackground,
textStyle: TextStyle(
color: FlutterFlowTheme.of(context).primaryText,
),
borderSide: BorderSide(
color: FlutterFlowTheme.of(context).primaryBackground,
width: 1,
),
borderRadius: BorderRadius.circular(10)),
),
FFButtonWidget(
onPressed: () async {
FFAppState().notify = !FFAppState().notify; FFAppState().notify = !FFAppState().notify;
PhpGroup.changeNotifica PhpGroup.changeNotifica
.call( .call(
@ -115,7 +160,8 @@ class PreferencesPageModel with ChangeNotifier {
ptText: 'Notificação alterada com sucesso', ptText: 'Notificação alterada com sucesso',
enText: 'Notification changed successfully', enText: 'Notification changed successfully',
), ),
style: TextStyle(color: FlutterFlowTheme.of(context).info)), style: TextStyle(
color: FlutterFlowTheme.of(context).info)),
backgroundColor: FlutterFlowTheme.of(context).success, backgroundColor: FlutterFlowTheme.of(context).success,
duration: const Duration(seconds: 3), duration: const Duration(seconds: 3),
behavior: SnackBarBehavior.floating, behavior: SnackBarBehavior.floating,
@ -133,7 +179,8 @@ class PreferencesPageModel with ChangeNotifier {
enText: 'Error changing notification', enText: 'Error changing notification',
ptText: 'Erro ao alterar notificação', ptText: 'Erro ao alterar notificação',
), ),
style: TextStyle(color: FlutterFlowTheme.of(context).info)), style: TextStyle(
color: FlutterFlowTheme.of(context).info)),
backgroundColor: FlutterFlowTheme.of(context).error, backgroundColor: FlutterFlowTheme.of(context).error,
duration: const Duration(seconds: 3), duration: const Duration(seconds: 3),
behavior: SnackBarBehavior.floating, behavior: SnackBarBehavior.floating,
@ -142,6 +189,28 @@ class PreferencesPageModel with ChangeNotifier {
), ),
), ),
); );
}).whenComplete(() => notifyListeners());
},
text: FFLocalizations.of(context).getVariableText(
enText: 'Unlink',
ptText: 'Desvincular',
),
options: FFButtonOptions(
width: 100,
height: 40,
color: FlutterFlowTheme.of(context).primaryBackground,
textStyle: TextStyle(
color: FlutterFlowTheme.of(context).primaryText,
),
borderSide: BorderSide(
color: FlutterFlowTheme.of(context).primaryBackground,
width: 1,
),
borderRadius: BorderRadius.circular(10),
),
),
],
);
}); });
notifyListeners(); notifyListeners();
} }

View File

@ -160,12 +160,24 @@ class _ScheduleCompleteVisitPageWidgetState
} }
} }
bool? getStatus(dynamic data) { enum status { active, unknown, canceled, finished, blocked, inactive }
return data == 'A'
? true status? getStatus(dynamic data) {
: data == 'F' || data == 'B' || data == 'C' || data == 'I' debugPrint('getStatus: $data');
? null switch (data) {
: false; case 'A':
return status.active;
case 'F':
return status.finished;
case 'B':
return status.blocked;
case 'C':
return status.canceled;
case 'I':
return status.inactive;
default:
return status.unknown;
}
} }
PreferredSizeWidget appBarScheduleCompleteVisit(BuildContext context) { PreferredSizeWidget appBarScheduleCompleteVisit(BuildContext context) {
@ -1739,28 +1751,54 @@ Widget visitHistory(
'Fim:': visitaWrapItem['VAW_DTFIM'] ?? '', 'Fim:': visitaWrapItem['VAW_DTFIM'] ?? '',
}), }),
statusHashMap: [ statusHashMap: [
getStatus(visitaWrapItem['VAW_STATUS']) == true if (getStatus(visitaWrapItem['VAW_STATUS']) ==
? Map<String, Color>.from({ status.active)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText( FFLocalizations.of(context).getVariableText(
ptText: 'Ativo', ptText: 'Ativo',
enText: 'Active', enText: 'Active',
): FlutterFlowTheme.of(context).success,
})
: getStatus(visitaWrapItem['VAW_STATUS']) == null
? Map<String, Color>.from({
FFLocalizations.of(context)
.getVariableText(
ptText: 'Pendente',
enText: 'Pending',
): FlutterFlowTheme.of(context).warning, ): FlutterFlowTheme.of(context).warning,
}) }),
: Map<String, Color>.from({ if (getStatus(visitaWrapItem['VAW_STATUS']) ==
FFLocalizations.of(context) status.finished)
.getVariableText( Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Finalizado',
enText: 'Finished',
): FlutterFlowTheme.of(context).success,
}),
if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.unknown)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Desconhecido',
enText: 'Unknown',
): FlutterFlowTheme.of(context).alternate,
}),
if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.canceled)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Cancelado', ptText: 'Cancelado',
enText: 'Canceled', enText: 'Canceled',
): FlutterFlowTheme.of(context).error, ): FlutterFlowTheme.of(context).error,
}), }),
if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.blocked)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Bloqueado',
enText: 'Blocked',
): FlutterFlowTheme.of(context).error,
}),
if (getStatus(visitaWrapItem['VAW_STATUS']) ==
status.inactive)
Map<String, Color>.from({
FFLocalizations.of(context).getVariableText(
ptText: 'Inactive',
enText: 'Inactive',
): FlutterFlowTheme.of(context).error,
}),
], ],
onTapCardItemAction: () async { onTapCardItemAction: () async {
showModalBottomSheet( showModalBottomSheet(