flutter-freaccess-hub/lib/pages/liberation_history/liberation_history_widget.dart

1378 lines
90 KiB
Dart

<<<<<<< HEAD
// import '/backend/api_requests/api_calls.dart';
// import '/components/templates_components/visit_details_modal_template_component/visit_details_modal_template_component_widget.dart';
// import '/flutter_flow/flutter_flow_theme.dart';
// import '/flutter_flow/flutter_flow_util.dart';
// import '/flutter_flow/custom_functions.dart' as functions;
// import 'package:cached_network_image/cached_network_image.dart';
// import 'package:flutter/material.dart';
// import 'package:flutter_spinkit/flutter_spinkit.dart';
// import 'package:google_fonts/google_fonts.dart';
// import 'package:provider/provider.dart';
// import 'liberation_history_model.dart';
// export 'liberation_history_model.dart';
=======
import '/backend/api_requests/api_calls.dart';
import '/components/templates_components/visit_details_modal_template_component/visit_details_modal_template_component_widget.dart';
import '/flutter_flow/flutter_flow_icon_button.dart';
import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart';
import '/flutter_flow/custom_functions.dart' as functions;
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:provider/provider.dart';
import 'liberation_history_model.dart';
export 'liberation_history_model.dart';
>>>>>>> flutterflow
// class LiberationHistoryWidget extends StatefulWidget {
// const LiberationHistoryWidget({super.key});
// @override
// State<LiberationHistoryWidget> createState() =>
// _LiberationHistoryWidgetState();
// }
// class _LiberationHistoryWidgetState extends State<LiberationHistoryWidget> {
// late LiberationHistoryModel _model;
// final scaffoldKey = GlobalKey<ScaffoldState>();
// @override
// void initState() {
// super.initState();
// _model = createModel(context, () => LiberationHistoryModel());
// _model.textController ??= TextEditingController();
// _model.textFieldFocusNode ??= FocusNode();
// }
// @override
// void dispose() {
// _model.dispose();
// super.dispose();
// }
// @override
// Widget build(BuildContext context) {
// context.watch<FFAppState>();
<<<<<<< HEAD
// return GestureDetector(
// onTap: () => _model.unfocusNode.canRequestFocus
// ? FocusScope.of(context).requestFocus(_model.unfocusNode)
// : FocusScope.of(context).unfocus(),
// child: Scaffold(
// key: scaffoldKey,
// backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
// body: SafeArea(
// top: true,
// child: Column(
// mainAxisSize: MainAxisSize.max,
// mainAxisAlignment: MainAxisAlignment.start,
// children: [
// Container(
// width: double.infinity,
// height: 100.0,
// decoration: BoxDecoration(
// color: FlutterFlowTheme.of(context).secondaryBackground,
// ),
// alignment: const AlignmentDirectional(0.0, -1.0),
// child: Padding(
// padding: const EdgeInsetsDirectional.fromSTEB(8.0, 0.0, 8.0, 0.0),
// child: TextFormField(
// controller: _model.textController,
// focusNode: _model.textFieldFocusNode,
// autofocus: true,
// obscureText: false,
// decoration: InputDecoration(
// labelText: FFLocalizations.of(context).getText(
// 'dy0mx15f' /* Label here... */,
// ),
// labelStyle: FlutterFlowTheme.of(context)
// .labelMedium
// .override(
// fontFamily:
// FlutterFlowTheme.of(context).labelMediumFamily,
// letterSpacing: 0.0,
// useGoogleFonts: GoogleFonts.asMap().containsKey(
// FlutterFlowTheme.of(context).labelMediumFamily),
// ),
// hintStyle: FlutterFlowTheme.of(context)
// .labelMedium
// .override(
// fontFamily:
// FlutterFlowTheme.of(context).labelMediumFamily,
// letterSpacing: 0.0,
// useGoogleFonts: GoogleFonts.asMap().containsKey(
// FlutterFlowTheme.of(context).labelMediumFamily),
// ),
// enabledBorder: UnderlineInputBorder(
// borderSide: BorderSide(
// color: FlutterFlowTheme.of(context).alternate,
// width: 2.0,
// ),
// borderRadius: BorderRadius.circular(8.0),
// ),
// focusedBorder: UnderlineInputBorder(
// borderSide: BorderSide(
// color: FlutterFlowTheme.of(context).primary,
// width: 2.0,
// ),
// borderRadius: BorderRadius.circular(8.0),
// ),
// errorBorder: UnderlineInputBorder(
// borderSide: BorderSide(
// color: FlutterFlowTheme.of(context).error,
// width: 2.0,
// ),
// borderRadius: BorderRadius.circular(8.0),
// ),
// focusedErrorBorder: UnderlineInputBorder(
// borderSide: BorderSide(
// color: FlutterFlowTheme.of(context).error,
// width: 2.0,
// ),
// borderRadius: BorderRadius.circular(8.0),
// ),
// prefixIcon: const Icon(
// Icons.search_sharp,
// ),
// ),
// style: FlutterFlowTheme.of(context).bodyMedium.override(
// fontFamily:
// FlutterFlowTheme.of(context).bodyMediumFamily,
// letterSpacing: 0.0,
// useGoogleFonts: GoogleFonts.asMap().containsKey(
// FlutterFlowTheme.of(context).bodyMediumFamily),
// ),
// validator:
// _model.textControllerValidator.asValidator(context),
// ),
// ),
// ),
// Expanded(
// child: Container(
// width: double.infinity,
// height: double.infinity,
// decoration: const BoxDecoration(),
// child: FutureBuilder<ApiCallResponse>(
// future: PhpGroup.getVisitsCall.call(
// devUUID: FFAppState().devUUID,
// userUUID: FFAppState().userUUID,
// cliID: FFAppState().cliUUID,
// atividade: 'getVisitas',
// ),
// builder: (context, snapshot) {
// // Customize what your widget looks like when it's loading.
// if (!snapshot.hasData) {
// return Center(
// child: SizedBox(
// width: 50.0,
// height: 50.0,
// child: SpinKitCircle(
// color: FlutterFlowTheme.of(context).primary,
// size: 50.0,
// ),
// ),
// );
// }
// final wrapGetVisitsResponse = snapshot.data!;
// return Builder(
// builder: (context) {
// final visitaWrap = PhpGroup.getVisitsCall
// .visitasList(
// wrapGetVisitsResponse.jsonBody,
// )
// ?.toList() ??
// [];
// return Wrap(
// spacing: 2.0,
// runSpacing: 1.0,
// alignment: WrapAlignment.start,
// crossAxisAlignment: WrapCrossAlignment.start,
// direction: Axis.horizontal,
// runAlignment: WrapAlignment.start,
// verticalDirection: VerticalDirection.down,
// clipBehavior: Clip.none,
// children: List.generate(visitaWrap.length,
// (visitaWrapIndex) {
// final visitaWrapItem =
// visitaWrap[visitaWrapIndex];
// return Align(
// alignment: const AlignmentDirectional(0.0, 0.0),
// child: InkWell(
// splashColor: Colors.transparent,
// focusColor: Colors.transparent,
// hoverColor: Colors.transparent,
// highlightColor: Colors.transparent,
// onTap: () async {
// await showModalBottomSheet(
// isScrollControlled: true,
// backgroundColor: Colors.transparent,
// enableDrag: false,
// useSafeArea: true,
// context: context,
// builder: (context) {
// return GestureDetector(
// onTap: () => _model
// .unfocusNode.canRequestFocus
// ? FocusScope.of(context)
// .requestFocus(
// _model.unfocusNode)
// : FocusScope.of(context)
// .unfocus(),
// child: Padding(
// padding: MediaQuery.viewInsetsOf(
// context),
// child:
// VisitDetailsModalTemplateComponentWidget(
// visitStatusStr: getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// ).toString(),
// visitStartDateStr: getJsonField(
// visitaWrapItem,
// r'''$.VAW_DTINICIO''',
// ).toString(),
// visitEndDateStr: getJsonField(
// visitaWrapItem,
// r'''$.VAW_DTFIM''',
// ).toString(),
// visitReasonStr: getJsonField(
// visitaWrapItem,
// r'''$.MOT_DESCRICAO''',
// ).toString(),
// visitLevelStr: getJsonField(
// visitaWrapItem,
// r'''$.NAC_DESCRICAO''',
// ).toString(),
// visitTempStr: getJsonField(
// visitaWrapItem,
// r'''$.VTE_UNICA''',
// ).toString(),
// visitObsStr: getJsonField(
// visitaWrapItem,
// r'''$.VAW_OBS''',
// ).toString(),
// visitorImgPath:
// valueOrDefault<String>(
// 'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${getJsonField(
// visitaWrapItem,
// r'''$.VTE_DOCUMENTO''',
// ).toString()}&tipo=E',
// 'https://storage.googleapis.com/flutterflow-io-6f20.appspot.com/projects/flutter-freaccess-hub-0xgz9q/assets/7ftdetkzc3s0/360_F_64676383_LdbmhiNM6Ypzb3FM4PPuFP9rHe7ri8Ju.jpg',
// ),
// visitorStrList: getJsonField(
// visitaWrapItem,
// r'''$.VTE_DOCUMENTO''',
// ).toString(),
// visitIdStr: getJsonField(
// visitaWrapItem,
// r'''$.VAW_ID''',
// ).toString(),
// visitorJsonList: PhpGroup
// .getVisitsCall
// .visitasList(
// wrapGetVisitsResponse.jsonBody,
// ),
// updateToggleIdx: () async {},
// repeatVisitSchedule: () async {},
// ),
// ),
// );
// },
// ).then((value) => safeSetState(() {}));
// },
// child: Card(
// clipBehavior: Clip.antiAliasWithSaveLayer,
// color: FlutterFlowTheme.of(context)
// .secondaryBackground,
// elevation: 5.0,
// shape: RoundedRectangleBorder(
// borderRadius: BorderRadius.circular(8.0),
// ),
// child: Container(
// width: 350.0,
// height: 115.0,
// decoration: BoxDecoration(
// color: FlutterFlowTheme.of(context)
// .secondaryBackground,
// ),
// child: Row(
// mainAxisSize: MainAxisSize.max,
// mainAxisAlignment:
// MainAxisAlignment.spaceBetween,
// children: [
// Expanded(
// child: Container(
// width: 100.0,
// height: 100.0,
// decoration: const BoxDecoration(),
// child: Column(
// mainAxisSize: MainAxisSize.max,
// children: [
// Row(
// mainAxisSize:
// MainAxisSize.max,
// children: [
// Text(
// FFLocalizations.of(
// context)
// .getText(
// 'f77je6tr' /* Visitante: */,
// ),
// style:
// FlutterFlowTheme.of(
// context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// fontSize:
// 12.5,
// letterSpacing:
// 0.0,
// fontWeight:
// FontWeight
// .bold,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// Align(
// alignment:
// const AlignmentDirectional(
// -1.0, -1.0),
// child: Text(
// getJsonField(
// visitaWrapItem,
// r'''$.VTE_NOME''',
// ).toString(),
// style: FlutterFlowTheme
// .of(context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// fontSize: 12.5,
// letterSpacing:
// 0.0,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// ),
// ].addToStart(
// const SizedBox(width: 10.0)),
// ),
// Row(
// mainAxisSize:
// MainAxisSize.max,
// mainAxisAlignment:
// MainAxisAlignment.start,
// children: [
// Text(
// FFLocalizations.of(
// context)
// .getText(
// 'dkzewokx' /* Início em: */,
// ),
// style:
// FlutterFlowTheme.of(
// context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// fontSize:
// 12.5,
// letterSpacing:
// 0.0,
// fontWeight:
// FontWeight
// .bold,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// Text(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_DTINICIO''',
// ).toString(),
// style:
// FlutterFlowTheme.of(
// context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// fontSize:
// 12.5,
// letterSpacing:
// 0.0,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// ].addToStart(
// const SizedBox(width: 10.0)),
// ),
// Row(
// mainAxisSize:
// MainAxisSize.max,
// mainAxisAlignment:
// MainAxisAlignment.start,
// children: [
// Text(
// FFLocalizations.of(
// context)
// .getText(
// 'qi4mjhtw' /* Fim em: */,
// ),
// style:
// FlutterFlowTheme.of(
// context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// fontSize:
// 12.5,
// letterSpacing:
// 0.0,
// fontWeight:
// FontWeight
// .bold,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// Text(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_DTFIM''',
// ).toString(),
// style:
// FlutterFlowTheme.of(
// context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// fontSize:
// 12.5,
// letterSpacing:
// 0.0,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// ].addToStart(
// const SizedBox(width: 10.0)),
// ),
// Align(
// alignment:
// const AlignmentDirectional(
// -1.0, 0.0),
// child: Padding(
// padding:
// const EdgeInsetsDirectional
// .fromSTEB(
// 10.0,
// 0.0,
// 0.0,
// 0.0),
// child: Container(
// width: 200.0,
// height: 27.0,
// decoration:
// BoxDecoration(
// color: valueOrDefault<
// Color>(
// () {
// if (functions
// .jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"A\"') {
// return FlutterFlowTheme.of(
// context)
// .success;
// } else if (functions
// .jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"C\"') {
// return FlutterFlowTheme.of(
// context)
// .error;
// } else if (functions
// .jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"I\"') {
// return FlutterFlowTheme.of(
// context)
// .warning;
// } else {
// return FlutterFlowTheme.of(
// context)
// .primary;
// }
// }(),
// FlutterFlowTheme.of(
// context)
// .primary,
// ),
// borderRadius:
// BorderRadius
// .circular(
// 5.0),
// ),
// child: Align(
// alignment:
// const AlignmentDirectional(
// 0.0, 0.0),
// child: Text(
// () {
// if (functions
// .jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"A\"') {
// return FFLocalizations.of(
// context)
// .getVariableText(
// ptText:
// 'Ativo',
// enText:
// 'Active',
// );
// } else if ((functions
// .jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"F\"') ||
// (functions.jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"C\"') ||
// (functions.jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"B\"') ||
// (functions.jsonToStr(
// getJsonField(
// visitaWrapItem,
// r'''$.VAW_STATUS''',
// )) ==
// '\"I\"')) {
// return FFLocalizations.of(
// context)
// .getVariableText(
// ptText:
// 'Cancelado',
// enText:
// 'Canceled',
// );
// } else {
// return FFLocalizations.of(
// context)
// .getVariableText(
// ptText:
// 'Pendente',
// enText:
// 'Pending',
// );
// }
// }(),
// style: FlutterFlowTheme
// .of(context)
// .bodyMedium
// .override(
// fontFamily: FlutterFlowTheme.of(
// context)
// .bodyMediumFamily,
// color: FlutterFlowTheme.of(
// context)
// .info,
// letterSpacing:
// 0.0,
// useGoogleFonts: GoogleFonts
// .asMap()
// .containsKey(
// FlutterFlowTheme.of(context)
// .bodyMediumFamily),
// ),
// ),
// ),
// ),
// ),
// ),
// ].divide(const SizedBox(height: 3.0)),
// ),
// ),
// ),
// ClipRRect(
// borderRadius:
// BorderRadius.circular(0.0),
// child: CachedNetworkImage(
// fadeInDuration:
// const Duration(milliseconds: 500),
// fadeOutDuration:
// const Duration(milliseconds: 500),
// imageUrl: valueOrDefault<String>(
// 'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${getJsonField(
// visitaWrapItem,
// r'''$.VTE_DOCUMENTO''',
// ).toString()}&tipo=E',
// 'https://storage.googleapis.com/flutterflow-io-6f20.appspot.com/projects/flutter-freaccess-hub-0xgz9q/assets/7ftdetkzc3s0/360_F_64676383_LdbmhiNM6Ypzb3FM4PPuFP9rHe7ri8Ju.jpg',
// ),
// fit: BoxFit.cover,
// ),
// ),
// ],
// ),
// ),
// ),
// ),
// );
// }),
// );
// },
// );
// },
// ),
// ),
// ),
// ].addToStart(const SizedBox(height: 30.0)),
// ),
// ),
// ),
// );
// }
// }
=======
return GestureDetector(
onTap: () => _model.unfocusNode.canRequestFocus
? FocusScope.of(context).requestFocus(_model.unfocusNode)
: FocusScope.of(context).unfocus(),
child: Scaffold(
key: scaffoldKey,
backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
appBar: AppBar(
backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
automaticallyImplyLeading: false,
leading: FlutterFlowIconButton(
borderColor: Colors.transparent,
borderRadius: 30.0,
borderWidth: 1.0,
buttonSize: 60.0,
icon: Icon(
Icons.keyboard_arrow_left,
color: FlutterFlowTheme.of(context).primaryText,
size: 30.0,
),
onPressed: () async {
context.pop();
},
),
title: Text(
FFLocalizations.of(context).getText(
'784f83pc' /* Histórico de Liberação */,
),
style: FlutterFlowTheme.of(context).headlineMedium.override(
fontFamily: 'Nunito',
color: FlutterFlowTheme.of(context).primaryText,
fontSize: 17.0,
letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey('Nunito'),
),
),
actions: const [],
centerTitle: true,
elevation: 2.0,
),
body: SafeArea(
top: true,
child: Column(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Container(
width: double.infinity,
height: 100.0,
decoration: BoxDecoration(
color: FlutterFlowTheme.of(context).secondaryBackground,
),
alignment: const AlignmentDirectional(0.0, -1.0),
child: Padding(
padding: const EdgeInsetsDirectional.fromSTEB(8.0, 0.0, 8.0, 0.0),
child: SizedBox(
width: 300.0,
child: TextFormField(
controller: _model.textController,
focusNode: _model.textFieldFocusNode,
autofocus: true,
obscureText: false,
decoration: InputDecoration(
isDense: true,
labelText: FFLocalizations.of(context).getText(
'dy0mx15f' /* Label here... */,
),
labelStyle: FlutterFlowTheme.of(context)
.labelMedium
.override(
fontFamily: FlutterFlowTheme.of(context)
.labelMediumFamily,
color: FlutterFlowTheme.of(context).primaryText,
letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey(
FlutterFlowTheme.of(context)
.labelMediumFamily),
),
hintStyle: FlutterFlowTheme.of(context)
.labelMedium
.override(
fontFamily: FlutterFlowTheme.of(context)
.labelMediumFamily,
color: FlutterFlowTheme.of(context).primaryText,
letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey(
FlutterFlowTheme.of(context)
.labelMediumFamily),
),
enabledBorder: UnderlineInputBorder(
borderSide: BorderSide(
color: FlutterFlowTheme.of(context).alternate,
width: 2.0,
),
borderRadius: BorderRadius.circular(8.0),
),
focusedBorder: UnderlineInputBorder(
borderSide: BorderSide(
color: FlutterFlowTheme.of(context).primary,
width: 2.0,
),
borderRadius: BorderRadius.circular(8.0),
),
errorBorder: UnderlineInputBorder(
borderSide: BorderSide(
color: FlutterFlowTheme.of(context).error,
width: 2.0,
),
borderRadius: BorderRadius.circular(8.0),
),
focusedErrorBorder: UnderlineInputBorder(
borderSide: BorderSide(
color: FlutterFlowTheme.of(context).error,
width: 2.0,
),
borderRadius: BorderRadius.circular(8.0),
),
filled: true,
fillColor: FlutterFlowTheme.of(context).alternate,
prefixIcon: Icon(
Icons.search_sharp,
color: FlutterFlowTheme.of(context).primaryText,
),
),
style: FlutterFlowTheme.of(context).bodyMedium.override(
fontFamily:
FlutterFlowTheme.of(context).bodyMediumFamily,
letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey(
FlutterFlowTheme.of(context).bodyMediumFamily),
),
validator:
_model.textControllerValidator.asValidator(context),
),
),
),
),
Expanded(
child: Container(
width: double.infinity,
height: double.infinity,
decoration: const BoxDecoration(),
child: FutureBuilder<ApiCallResponse>(
future: PhpGroup.getVisitsCall.call(
devUUID: FFAppState().devUUID,
userUUID: FFAppState().userUUID,
cliID: FFAppState().cliUUID,
atividade: 'getVisitas',
),
builder: (context, snapshot) {
// Customize what your widget looks like when it's loading.
if (!snapshot.hasData) {
return Center(
child: SizedBox(
width: 50.0,
height: 50.0,
child: SpinKitCircle(
color: FlutterFlowTheme.of(context).primary,
size: 50.0,
),
),
);
}
final wrapGetVisitsResponse = snapshot.data!;
return Builder(
builder: (context) {
final visitaWrap = PhpGroup.getVisitsCall
.visitasList(
wrapGetVisitsResponse.jsonBody,
)
?.toList() ??
[];
return Wrap(
spacing: 2.0,
runSpacing: 1.0,
alignment: WrapAlignment.start,
crossAxisAlignment: WrapCrossAlignment.start,
direction: Axis.horizontal,
runAlignment: WrapAlignment.start,
verticalDirection: VerticalDirection.down,
clipBehavior: Clip.none,
children: List.generate(visitaWrap.length,
(visitaWrapIndex) {
final visitaWrapItem =
visitaWrap[visitaWrapIndex];
return Align(
alignment: const AlignmentDirectional(0.0, 0.0),
child: InkWell(
splashColor: Colors.transparent,
focusColor: Colors.transparent,
hoverColor: Colors.transparent,
highlightColor: Colors.transparent,
onTap: () async {
await showModalBottomSheet(
isScrollControlled: true,
backgroundColor: Colors.transparent,
enableDrag: false,
useSafeArea: true,
context: context,
builder: (context) {
return GestureDetector(
onTap: () => _model
.unfocusNode.canRequestFocus
? FocusScope.of(context)
.requestFocus(
_model.unfocusNode)
: FocusScope.of(context)
.unfocus(),
child: Padding(
padding: MediaQuery.viewInsetsOf(
context),
child:
VisitDetailsModalTemplateComponentWidget(
visitStatusStr: getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
).toString(),
visitStartDateStr: getJsonField(
visitaWrapItem,
r'''$.VAW_DTINICIO''',
).toString(),
visitEndDateStr: getJsonField(
visitaWrapItem,
r'''$.VAW_DTFIM''',
).toString(),
visitReasonStr: getJsonField(
visitaWrapItem,
r'''$.MOT_DESCRICAO''',
).toString(),
visitLevelStr: getJsonField(
visitaWrapItem,
r'''$.NAC_DESCRICAO''',
).toString(),
visitTempStr: getJsonField(
visitaWrapItem,
r'''$.VTE_UNICA''',
).toString(),
visitObsStr: getJsonField(
visitaWrapItem,
r'''$.VAW_OBS''',
).toString(),
visitorImgPath:
valueOrDefault<String>(
'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${getJsonField(
visitaWrapItem,
r'''$.VTE_DOCUMENTO''',
).toString()}&tipo=E',
'https://storage.googleapis.com/flutterflow-io-6f20.appspot.com/projects/flutter-freaccess-hub-0xgz9q/assets/7ftdetkzc3s0/360_F_64676383_LdbmhiNM6Ypzb3FM4PPuFP9rHe7ri8Ju.jpg',
),
visitorStrList: getJsonField(
visitaWrapItem,
r'''$.VTE_DOCUMENTO''',
).toString(),
visitIdStr: getJsonField(
visitaWrapItem,
r'''$.VAW_ID''',
).toString(),
visitorJsonList: PhpGroup
.getVisitsCall
.visitasList(
wrapGetVisitsResponse.jsonBody,
),
updateToggleIdx: () async {},
repeatVisitSchedule: () async {},
),
),
);
},
).then((value) => safeSetState(() {}));
},
child: Card(
clipBehavior: Clip.antiAliasWithSaveLayer,
color: FlutterFlowTheme.of(context)
.secondaryBackground,
elevation: 5.0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(8.0),
),
child: Container(
width: 350.0,
height: 115.0,
decoration: BoxDecoration(
color: FlutterFlowTheme.of(context)
.secondaryBackground,
),
child: Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment:
MainAxisAlignment.spaceBetween,
children: [
Expanded(
child: Container(
width: 100.0,
height: 100.0,
decoration: const BoxDecoration(),
child: Column(
mainAxisSize: MainAxisSize.max,
children: [
Row(
mainAxisSize:
MainAxisSize.max,
children: [
Text(
FFLocalizations.of(
context)
.getText(
'f77je6tr' /* Visitante: */,
),
style:
FlutterFlowTheme.of(
context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
fontSize:
12.5,
letterSpacing:
0.0,
fontWeight:
FontWeight
.bold,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
Align(
alignment:
const AlignmentDirectional(
-1.0, -1.0),
child: Text(
getJsonField(
visitaWrapItem,
r'''$.VTE_NOME''',
).toString(),
style: FlutterFlowTheme
.of(context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
fontSize: 12.5,
letterSpacing:
0.0,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
),
].addToStart(
const SizedBox(width: 10.0)),
),
Row(
mainAxisSize:
MainAxisSize.max,
mainAxisAlignment:
MainAxisAlignment.start,
children: [
Text(
FFLocalizations.of(
context)
.getText(
'dkzewokx' /* Início em: */,
),
style:
FlutterFlowTheme.of(
context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
fontSize:
12.5,
letterSpacing:
0.0,
fontWeight:
FontWeight
.bold,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
Text(
getJsonField(
visitaWrapItem,
r'''$.VAW_DTINICIO''',
).toString(),
style:
FlutterFlowTheme.of(
context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
fontSize:
12.5,
letterSpacing:
0.0,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
].addToStart(
const SizedBox(width: 10.0)),
),
Row(
mainAxisSize:
MainAxisSize.max,
mainAxisAlignment:
MainAxisAlignment.start,
children: [
Text(
FFLocalizations.of(
context)
.getText(
'qi4mjhtw' /* Fim em: */,
),
style:
FlutterFlowTheme.of(
context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
fontSize:
12.5,
letterSpacing:
0.0,
fontWeight:
FontWeight
.bold,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
Text(
getJsonField(
visitaWrapItem,
r'''$.VAW_DTFIM''',
).toString(),
style:
FlutterFlowTheme.of(
context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
fontSize:
12.5,
letterSpacing:
0.0,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
].addToStart(
const SizedBox(width: 10.0)),
),
Align(
alignment:
const AlignmentDirectional(
-1.0, 0.0),
child: Padding(
padding:
const EdgeInsetsDirectional
.fromSTEB(
10.0,
0.0,
0.0,
0.0),
child: Container(
width: 200.0,
height: 27.0,
decoration:
BoxDecoration(
color: valueOrDefault<
Color>(
() {
if (functions
.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"A\"') {
return FlutterFlowTheme.of(
context)
.success;
} else if (functions
.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"C\"') {
return FlutterFlowTheme.of(
context)
.error;
} else if (functions
.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"I\"') {
return FlutterFlowTheme.of(
context)
.warning;
} else {
return FlutterFlowTheme.of(
context)
.primary;
}
}(),
FlutterFlowTheme.of(
context)
.primary,
),
borderRadius:
BorderRadius
.circular(
5.0),
),
child: Align(
alignment:
const AlignmentDirectional(
0.0, 0.0),
child: Text(
() {
if (functions
.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"A\"') {
return FFLocalizations.of(
context)
.getVariableText(
ptText:
'Ativo',
enText:
'Active',
);
} else if ((functions
.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"F\"') ||
(functions.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"C\"') ||
(functions.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"B\"') ||
(functions.jsonToStr(
getJsonField(
visitaWrapItem,
r'''$.VAW_STATUS''',
)) ==
'\"I\"')) {
return FFLocalizations.of(
context)
.getVariableText(
ptText:
'Cancelado',
enText:
'Canceled',
);
} else {
return FFLocalizations.of(
context)
.getVariableText(
ptText:
'Pendente',
enText:
'Pending',
);
}
}(),
style: FlutterFlowTheme
.of(context)
.bodyMedium
.override(
fontFamily: FlutterFlowTheme.of(
context)
.bodyMediumFamily,
color: FlutterFlowTheme.of(
context)
.info,
letterSpacing:
0.0,
useGoogleFonts: GoogleFonts
.asMap()
.containsKey(
FlutterFlowTheme.of(context)
.bodyMediumFamily),
),
),
),
),
),
),
].divide(const SizedBox(height: 3.0)),
),
),
),
ClipRRect(
borderRadius:
BorderRadius.circular(0.0),
child: CachedNetworkImage(
fadeInDuration:
const Duration(milliseconds: 500),
fadeOutDuration:
const Duration(milliseconds: 500),
imageUrl: valueOrDefault<String>(
'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${getJsonField(
visitaWrapItem,
r'''$.VTE_DOCUMENTO''',
).toString()}&tipo=E',
'https://storage.googleapis.com/flutterflow-io-6f20.appspot.com/projects/flutter-freaccess-hub-0xgz9q/assets/7ftdetkzc3s0/360_F_64676383_LdbmhiNM6Ypzb3FM4PPuFP9rHe7ri8Ju.jpg',
),
fit: BoxFit.cover,
),
),
],
),
),
),
),
);
}),
);
},
);
},
),
),
),
].addToStart(const SizedBox(height: 30.0)),
),
),
),
);
}
}
>>>>>>> flutterflow