feat: Update internationalization translations for liberation history item details template component
The internationalization translations for the liberation history item details template component are updated to include the translations for the 'Name', 'Type', 'Access', and 'Drive' fields. This ensures that the component can be localized for different languages.
This commit is contained in:
commit
b01116669f
|
@ -44,8 +44,8 @@
|
||||||
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||||
6436409E27A31CDF00820AF7 /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
6436409E27A31CD800820AF7 /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||||
6436409F27A31CD200820AF7 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
6436409927A31CD300820AF7 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
@ -225,8 +225,8 @@
|
||||||
6436409C27A31CD800820AF7 /* InfoPlist.strings */ = {
|
6436409C27A31CD800820AF7 /* InfoPlist.strings */ = {
|
||||||
isa = PBXVariantGroup;
|
isa = PBXVariantGroup;
|
||||||
children = (
|
children = (
|
||||||
6436409E27A31CDF00820AF7 /* pt */,
|
6436409E27A31CD800820AF7 /* pt */,
|
||||||
6436409F27A31CD200820AF7 /* en */,
|
6436409927A31CD300820AF7 /* en */,
|
||||||
);
|
);
|
||||||
name = InfoPlist.strings;
|
name = InfoPlist.strings;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
|
|
|
@ -37,6 +37,8 @@ class PhpGroup {
|
||||||
RespondeSolicitacaoCall();
|
RespondeSolicitacaoCall();
|
||||||
static GetAccessCall getAccessCall = GetAccessCall();
|
static GetAccessCall getAccessCall = GetAccessCall();
|
||||||
static GetLiberationsCall getLiberationsCall = GetLiberationsCall();
|
static GetLiberationsCall getLiberationsCall = GetLiberationsCall();
|
||||||
|
static GetLiberationsCopyCall getLiberationsCopyCall =
|
||||||
|
GetLiberationsCopyCall();
|
||||||
}
|
}
|
||||||
|
|
||||||
class UpdToken {
|
class UpdToken {
|
||||||
|
@ -2043,6 +2045,190 @@ class GetLiberationsCall {
|
||||||
.toList();
|
.toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class GetLiberationsCopyCall {
|
||||||
|
Future<ApiCallResponse> call({
|
||||||
|
String? devUUID = '',
|
||||||
|
String? userUUID = '',
|
||||||
|
String? cliID = '',
|
||||||
|
String? atividade = '',
|
||||||
|
String? page = '',
|
||||||
|
String? pageSize = '',
|
||||||
|
String? filter = '',
|
||||||
|
}) async {
|
||||||
|
final baseUrl = PhpGroup.getBaseUrl();
|
||||||
|
|
||||||
|
return ApiManager.instance.makeApiCall(
|
||||||
|
callName: 'getLiberations Copy',
|
||||||
|
apiUrl: '$baseUrl/processRequest.php',
|
||||||
|
callType: ApiCallType.POST,
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'application/x-www-form-urlencoded',
|
||||||
|
},
|
||||||
|
params: {
|
||||||
|
'devUUID': devUUID,
|
||||||
|
'userUUID': userUUID,
|
||||||
|
'cliID': cliID,
|
||||||
|
'atividade': atividade,
|
||||||
|
'page': page,
|
||||||
|
'pageSize': pageSize,
|
||||||
|
'filter': filter,
|
||||||
|
},
|
||||||
|
bodyType: BodyType.X_WWW_FORM_URL_ENCODED,
|
||||||
|
returnBody: true,
|
||||||
|
encodeBodyUtf8: false,
|
||||||
|
decodeUtf8: false,
|
||||||
|
cache: false,
|
||||||
|
isStreamingApi: false,
|
||||||
|
alwaysAllowBody: false,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool? error(dynamic response) => castToType<bool>(getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.error''',
|
||||||
|
));
|
||||||
|
List? rqList(dynamic response) => getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes''',
|
||||||
|
true,
|
||||||
|
) as List?;
|
||||||
|
List<String>? rqNotID(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_ID''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotDest(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_DESTINO''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotSendDate(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_DTENVIO''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotReceiveDate(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_DTRESPOSTA''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotEmailAnswer(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_EMAILRESPOSTA''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotReason(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_MOTIVO''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotSendMsg(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_MSGENVIO''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotReceiveMsg(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_MSGRESPOSTA''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotName(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_NOME''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotOperator(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_OPERADOR''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotStatus(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_STATUS''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqNotVTE(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].NOT_VISITANTE''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqVteID(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].VTE_ID''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqVteName(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].VTE_NOME''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
List<String>? rqVteRG(dynamic response) => (getJsonField(
|
||||||
|
response,
|
||||||
|
r'''$.solicitacoes[:].VTE_RG''',
|
||||||
|
true,
|
||||||
|
) as List?)
|
||||||
|
?.withoutNulls
|
||||||
|
.map((x) => castToType<String>(x))
|
||||||
|
.withoutNulls
|
||||||
|
.toList();
|
||||||
|
}
|
||||||
|
|
||||||
/// End PHP Group Code
|
/// End PHP Group Code
|
||||||
|
|
||||||
class ApiPagingParams {
|
class ApiPagingParams {
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
import '/backend/api_requests/api_calls.dart';
|
||||||
|
import '/flutter_flow/flutter_flow_util.dart';
|
||||||
|
import 'liberation_history_item_details_template_component_widget.dart'
|
||||||
|
show LiberationHistoryItemDetailsTemplateComponentWidget;
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
class LiberationHistoryItemDetailsTemplateComponentModel
|
||||||
|
extends FlutterFlowModel<
|
||||||
|
LiberationHistoryItemDetailsTemplateComponentWidget> {
|
||||||
|
/// State fields for stateful widgets in this component.
|
||||||
|
|
||||||
|
// State field(s) for TextField widget.
|
||||||
|
FocusNode? textFieldFocusNode1;
|
||||||
|
TextEditingController? textController1;
|
||||||
|
String? Function(BuildContext, String?)? textController1Validator;
|
||||||
|
// State field(s) for TextField widget.
|
||||||
|
FocusNode? textFieldFocusNode2;
|
||||||
|
TextEditingController? textController2;
|
||||||
|
String? Function(BuildContext, String?)? textController2Validator;
|
||||||
|
// State field(s) for TextField widget.
|
||||||
|
FocusNode? textFieldFocusNode3;
|
||||||
|
TextEditingController? textController3;
|
||||||
|
String? Function(BuildContext, String?)? textController3Validator;
|
||||||
|
// State field(s) for TextField widget.
|
||||||
|
FocusNode? textFieldFocusNode4;
|
||||||
|
TextEditingController? textController4;
|
||||||
|
String? Function(BuildContext, String?)? textController4Validator;
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState(BuildContext context) {}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void dispose() {
|
||||||
|
textFieldFocusNode1?.dispose();
|
||||||
|
textController1?.dispose();
|
||||||
|
|
||||||
|
textFieldFocusNode2?.dispose();
|
||||||
|
textController2?.dispose();
|
||||||
|
|
||||||
|
textFieldFocusNode3?.dispose();
|
||||||
|
textController3?.dispose();
|
||||||
|
|
||||||
|
textFieldFocusNode4?.dispose();
|
||||||
|
textController4?.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Action blocks.
|
||||||
|
Future<bool> visitRequestComponentAction(
|
||||||
|
BuildContext context, {
|
||||||
|
required String? actionValue,
|
||||||
|
required String? refUUID,
|
||||||
|
required String? responseValue,
|
||||||
|
required String? vteUUID,
|
||||||
|
}) async {
|
||||||
|
ApiCallResponse? visitRequest;
|
||||||
|
|
||||||
|
visitRequest = await PhpGroup.respondeSolicitacaoCall.call(
|
||||||
|
userUUID: FFAppState().userUUID,
|
||||||
|
devUUID: FFAppState().devUUID,
|
||||||
|
cliUUID: FFAppState().cliUUID,
|
||||||
|
atividade: 'respondeSolicitacao',
|
||||||
|
referencia: refUUID,
|
||||||
|
tarefa: actionValue,
|
||||||
|
resposta: responseValue,
|
||||||
|
idVisitante: vteUUID,
|
||||||
|
);
|
||||||
|
|
||||||
|
if (PhpGroup.respondeSolicitacaoCall.error(
|
||||||
|
(visitRequest.jsonBody ?? ''),
|
||||||
|
) ==
|
||||||
|
false) {
|
||||||
|
Navigator.pop(context);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,366 @@
|
||||||
|
import '/flutter_flow/flutter_flow_theme.dart';
|
||||||
|
import '/flutter_flow/flutter_flow_util.dart';
|
||||||
|
import 'package:cached_network_image/cached_network_image.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:google_fonts/google_fonts.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
import 'liberation_history_item_details_template_component_model.dart';
|
||||||
|
export 'liberation_history_item_details_template_component_model.dart';
|
||||||
|
|
||||||
|
class LiberationHistoryItemDetailsTemplateComponentWidget
|
||||||
|
extends StatefulWidget {
|
||||||
|
const LiberationHistoryItemDetailsTemplateComponentWidget({
|
||||||
|
super.key,
|
||||||
|
required this.name,
|
||||||
|
required this.type,
|
||||||
|
required this.datetime,
|
||||||
|
required this.id,
|
||||||
|
required this.drive,
|
||||||
|
});
|
||||||
|
|
||||||
|
final String? name;
|
||||||
|
final String? type;
|
||||||
|
final String? datetime;
|
||||||
|
final String? id;
|
||||||
|
final String? drive;
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<LiberationHistoryItemDetailsTemplateComponentWidget> createState() =>
|
||||||
|
_LiberationHistoryItemDetailsTemplateComponentWidgetState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _LiberationHistoryItemDetailsTemplateComponentWidgetState
|
||||||
|
extends State<LiberationHistoryItemDetailsTemplateComponentWidget> {
|
||||||
|
late LiberationHistoryItemDetailsTemplateComponentModel _model;
|
||||||
|
|
||||||
|
@override
|
||||||
|
void setState(VoidCallback callback) {
|
||||||
|
super.setState(callback);
|
||||||
|
_model.onUpdate();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
super.initState();
|
||||||
|
_model = createModel(
|
||||||
|
context, () => LiberationHistoryItemDetailsTemplateComponentModel());
|
||||||
|
|
||||||
|
_model.textController1 ??= TextEditingController(text: widget.name);
|
||||||
|
_model.textFieldFocusNode1 ??= FocusNode();
|
||||||
|
|
||||||
|
_model.textController2 ??= TextEditingController(text: widget.type);
|
||||||
|
_model.textFieldFocusNode2 ??= FocusNode();
|
||||||
|
|
||||||
|
_model.textController3 ??= TextEditingController(text: widget.datetime);
|
||||||
|
_model.textFieldFocusNode3 ??= FocusNode();
|
||||||
|
|
||||||
|
_model.textController4 ??= TextEditingController(text: widget.drive);
|
||||||
|
_model.textFieldFocusNode4 ??= FocusNode();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void dispose() {
|
||||||
|
_model.maybeDispose();
|
||||||
|
|
||||||
|
super.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
context.watch<FFAppState>();
|
||||||
|
|
||||||
|
return Align(
|
||||||
|
alignment: const AlignmentDirectional(0.0, 0.0),
|
||||||
|
child: Padding(
|
||||||
|
padding: const EdgeInsetsDirectional.fromSTEB(10.0, 0.0, 10.0, 0.0),
|
||||||
|
child: Container(
|
||||||
|
width: MediaQuery.sizeOf(context).width * 0.9,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: FlutterFlowTheme.of(context).primaryBackground,
|
||||||
|
borderRadius: const BorderRadius.only(
|
||||||
|
bottomLeft: Radius.circular(25.0),
|
||||||
|
bottomRight: Radius.circular(25.0),
|
||||||
|
topLeft: Radius.circular(25.0),
|
||||||
|
topRight: Radius.circular(25.0),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
child: SingleChildScrollView(
|
||||||
|
child: Column(
|
||||||
|
mainAxisSize: MainAxisSize.min,
|
||||||
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
mainAxisSize: MainAxisSize.max,
|
||||||
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: 150.0,
|
||||||
|
height: 150.0,
|
||||||
|
clipBehavior: Clip.antiAlias,
|
||||||
|
decoration: const BoxDecoration(
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
),
|
||||||
|
child: CachedNetworkImage(
|
||||||
|
fadeInDuration: const Duration(milliseconds: 100),
|
||||||
|
fadeOutDuration: const Duration(milliseconds: 100),
|
||||||
|
imageUrl: valueOrDefault<String>(
|
||||||
|
'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${widget.id}&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(width: 10.0))
|
||||||
|
.addToEnd(const SizedBox(width: 10.0)),
|
||||||
|
),
|
||||||
|
Padding(
|
||||||
|
padding: const EdgeInsetsDirectional.fromSTEB(24.0, 0.0, 24.0, 0.0),
|
||||||
|
child: TextFormField(
|
||||||
|
controller: _model.textController1,
|
||||||
|
focusNode: _model.textFieldFocusNode1,
|
||||||
|
autofocus: false,
|
||||||
|
textInputAction: TextInputAction.next,
|
||||||
|
readOnly: true,
|
||||||
|
obscureText: false,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
isDense: true,
|
||||||
|
labelText: FFLocalizations.of(context).getText(
|
||||||
|
'dmazrriq' /* Nome */,
|
||||||
|
),
|
||||||
|
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: InputBorder.none,
|
||||||
|
focusedBorder: InputBorder.none,
|
||||||
|
errorBorder: InputBorder.none,
|
||||||
|
focusedErrorBorder: InputBorder.none,
|
||||||
|
suffixIcon: Icon(
|
||||||
|
Icons.person,
|
||||||
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
||||||
|
fontFamily:
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily,
|
||||||
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily),
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
maxLines: null,
|
||||||
|
keyboardType: TextInputType.name,
|
||||||
|
validator:
|
||||||
|
_model.textController1Validator.asValidator(context),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
mainAxisSize: MainAxisSize.max,
|
||||||
|
children: [
|
||||||
|
Expanded(
|
||||||
|
child: TextFormField(
|
||||||
|
controller: _model.textController2,
|
||||||
|
focusNode: _model.textFieldFocusNode2,
|
||||||
|
autofocus: false,
|
||||||
|
textInputAction: TextInputAction.next,
|
||||||
|
readOnly: true,
|
||||||
|
obscureText: false,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
isDense: true,
|
||||||
|
labelText: FFLocalizations.of(context).getText(
|
||||||
|
'xx3ivbr4' /* Tipo */,
|
||||||
|
),
|
||||||
|
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: InputBorder.none,
|
||||||
|
focusedBorder: InputBorder.none,
|
||||||
|
errorBorder: InputBorder.none,
|
||||||
|
focusedErrorBorder: InputBorder.none,
|
||||||
|
suffixIcon: Icon(
|
||||||
|
Icons.merge_type,
|
||||||
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
||||||
|
fontFamily:
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily,
|
||||||
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
|
FlutterFlowTheme.of(context)
|
||||||
|
.bodyMediumFamily),
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
maxLines: null,
|
||||||
|
keyboardType: TextInputType.name,
|
||||||
|
validator: _model.textController2Validator
|
||||||
|
.asValidator(context),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
.addToStart(const SizedBox(width: 24.0))
|
||||||
|
.addToEnd(const SizedBox(width: 24.0)),
|
||||||
|
),
|
||||||
|
Padding(
|
||||||
|
padding: const EdgeInsetsDirectional.fromSTEB(24.0, 0.0, 24.0, 0.0),
|
||||||
|
child: TextFormField(
|
||||||
|
controller: _model.textController3,
|
||||||
|
focusNode: _model.textFieldFocusNode3,
|
||||||
|
autofocus: false,
|
||||||
|
textInputAction: TextInputAction.next,
|
||||||
|
readOnly: true,
|
||||||
|
obscureText: false,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
isDense: true,
|
||||||
|
labelText: FFLocalizations.of(context).getText(
|
||||||
|
'rhheok7k' /* Acesso */,
|
||||||
|
),
|
||||||
|
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: InputBorder.none,
|
||||||
|
focusedBorder: InputBorder.none,
|
||||||
|
errorBorder: InputBorder.none,
|
||||||
|
focusedErrorBorder: InputBorder.none,
|
||||||
|
suffixIcon: Icon(
|
||||||
|
Icons.date_range,
|
||||||
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
||||||
|
fontFamily:
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily,
|
||||||
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily),
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
maxLines: null,
|
||||||
|
keyboardType: TextInputType.name,
|
||||||
|
validator:
|
||||||
|
_model.textController3Validator.asValidator(context),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Padding(
|
||||||
|
padding: const EdgeInsetsDirectional.fromSTEB(24.0, 0.0, 24.0, 0.0),
|
||||||
|
child: TextFormField(
|
||||||
|
controller: _model.textController4,
|
||||||
|
focusNode: _model.textFieldFocusNode4,
|
||||||
|
autofocus: false,
|
||||||
|
textCapitalization: TextCapitalization.none,
|
||||||
|
textInputAction: TextInputAction.next,
|
||||||
|
readOnly: true,
|
||||||
|
obscureText: false,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
isDense: true,
|
||||||
|
labelText: FFLocalizations.of(context).getText(
|
||||||
|
'w3tciqlv' /* Acionamento */,
|
||||||
|
),
|
||||||
|
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,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
|
FlutterFlowTheme.of(context).labelMediumFamily),
|
||||||
|
),
|
||||||
|
enabledBorder: InputBorder.none,
|
||||||
|
focusedBorder: InputBorder.none,
|
||||||
|
errorBorder: InputBorder.none,
|
||||||
|
focusedErrorBorder: InputBorder.none,
|
||||||
|
suffixIcon: Icon(
|
||||||
|
Icons.message,
|
||||||
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
||||||
|
fontFamily:
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily,
|
||||||
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily),
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
validator:
|
||||||
|
_model.textController4Validator.asValidator(context),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
.divide(const SizedBox(height: 10.0))
|
||||||
|
.addToStart(const SizedBox(height: 20.0))
|
||||||
|
.addToEnd(const SizedBox(height: 20.0)),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
|
@ -11,17 +11,19 @@ export 'visit_request_template_component_model.dart';
|
||||||
class VisitRequestTemplateComponentWidget extends StatefulWidget {
|
class VisitRequestTemplateComponentWidget extends StatefulWidget {
|
||||||
const VisitRequestTemplateComponentWidget({
|
const VisitRequestTemplateComponentWidget({
|
||||||
super.key,
|
super.key,
|
||||||
this.vteName,
|
required this.vteName,
|
||||||
this.vteReason,
|
required this.vteReason,
|
||||||
this.vteMsg,
|
required this.vteMsg,
|
||||||
this.vteDocument,
|
required this.vteDocument,
|
||||||
this.cliUUID,
|
required this.cliUUID,
|
||||||
this.vteUUID,
|
required this.vteUUID,
|
||||||
this.vawName,
|
required this.vawName,
|
||||||
this.msgUUID,
|
required this.msgUUID,
|
||||||
this.vawRef,
|
required this.vawRef,
|
||||||
this.vawUUID,
|
required this.vawUUID,
|
||||||
this.vawDestino,
|
required this.vawDestino,
|
||||||
|
required this.vawStatus,
|
||||||
|
this.vawDate,
|
||||||
});
|
});
|
||||||
|
|
||||||
final String? vteName;
|
final String? vteName;
|
||||||
|
@ -35,6 +37,8 @@ class VisitRequestTemplateComponentWidget extends StatefulWidget {
|
||||||
final String? vawRef;
|
final String? vawRef;
|
||||||
final String? vawUUID;
|
final String? vawUUID;
|
||||||
final String? vawDestino;
|
final String? vawDestino;
|
||||||
|
final String? vawStatus;
|
||||||
|
final String? vawDate;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<VisitRequestTemplateComponentWidget> createState() =>
|
State<VisitRequestTemplateComponentWidget> createState() =>
|
||||||
|
@ -104,22 +108,82 @@ class _VisitRequestTemplateComponentWidgetState
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Column(
|
||||||
width: 150.0,
|
mainAxisSize: MainAxisSize.max,
|
||||||
height: 150.0,
|
children: [
|
||||||
clipBehavior: Clip.antiAlias,
|
Container(
|
||||||
decoration: const BoxDecoration(
|
width: 150.0,
|
||||||
shape: BoxShape.circle,
|
height: 150.0,
|
||||||
),
|
clipBehavior: Clip.antiAlias,
|
||||||
child: CachedNetworkImage(
|
decoration: const BoxDecoration(
|
||||||
fadeInDuration: const Duration(milliseconds: 100),
|
shape: BoxShape.circle,
|
||||||
fadeOutDuration: const Duration(milliseconds: 100),
|
),
|
||||||
imageUrl: valueOrDefault<String>(
|
child: CachedNetworkImage(
|
||||||
'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${widget.vteDocument}&tipo=E',
|
fadeInDuration: const Duration(milliseconds: 100),
|
||||||
'https://storage.googleapis.com/flutterflow-io-6f20.appspot.com/projects/flutter-freaccess-hub-0xgz9q/assets/7ftdetkzc3s0/360_F_64676383_LdbmhiNM6Ypzb3FM4PPuFP9rHe7ri8Ju.jpg',
|
fadeOutDuration: const Duration(milliseconds: 100),
|
||||||
|
imageUrl: valueOrDefault<String>(
|
||||||
|
'https://freaccess.com.br/freaccess/getImage.php?devUUID=${FFAppState().devUUID}&userUUID=${FFAppState().userUUID}&cliID=${FFAppState().cliUUID}&atividade=getFoto&Documento=${widget.vteDocument}&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,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
fit: BoxFit.cover,
|
Container(
|
||||||
),
|
width: 153.0,
|
||||||
|
height: 25.0,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: () {
|
||||||
|
if (widget.vawStatus == 'L') {
|
||||||
|
return FlutterFlowTheme.of(context).primary;
|
||||||
|
} else if (widget.vawStatus == 'B') {
|
||||||
|
return FlutterFlowTheme.of(context).error;
|
||||||
|
} else if (widget.vawStatus == 'S') {
|
||||||
|
return FlutterFlowTheme.of(context).warning;
|
||||||
|
} else {
|
||||||
|
return FlutterFlowTheme.of(context).warning;
|
||||||
|
}
|
||||||
|
}(),
|
||||||
|
borderRadius: BorderRadius.circular(16.0),
|
||||||
|
),
|
||||||
|
child: Align(
|
||||||
|
alignment: const AlignmentDirectional(0.0, 0.0),
|
||||||
|
child: Text(
|
||||||
|
() {
|
||||||
|
if (widget.vawStatus == 'L') {
|
||||||
|
return FFLocalizations.of(context)
|
||||||
|
.getVariableText(
|
||||||
|
ptText: 'Ativo',
|
||||||
|
enText: 'Active',
|
||||||
|
);
|
||||||
|
} else if (widget.vawStatus == 'B') {
|
||||||
|
return FFLocalizations.of(context)
|
||||||
|
.getVariableText(
|
||||||
|
ptText: 'Bloqueado',
|
||||||
|
enText: 'Blocked',
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
return FFLocalizations.of(context)
|
||||||
|
.getVariableText(
|
||||||
|
ptText: 'Pendente',
|
||||||
|
enText: 'Pending',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}(),
|
||||||
|
style: FlutterFlowTheme.of(context)
|
||||||
|
.bodyMedium
|
||||||
|
.override(
|
||||||
|
fontFamily: FlutterFlowTheme.of(context)
|
||||||
|
.bodyMediumFamily,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap()
|
||||||
|
.containsKey(
|
||||||
|
FlutterFlowTheme.of(context)
|
||||||
|
.bodyMediumFamily),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
].divide(const SizedBox(height: 5.0)),
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
.addToStart(const SizedBox(width: 10.0))
|
.addToStart(const SizedBox(width: 10.0))
|
||||||
|
@ -405,201 +469,216 @@ class _VisitRequestTemplateComponentWidgetState
|
||||||
_model.textController2Validator.asValidator(context),
|
_model.textController2Validator.asValidator(context),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
if (widget.vawStatus != 'S')
|
||||||
padding: const EdgeInsetsDirectional.fromSTEB(
|
Padding(
|
||||||
24.0, 0.0, 24.0, 0.0),
|
padding: const EdgeInsetsDirectional.fromSTEB(
|
||||||
child: TextFormField(
|
24.0, 0.0, 24.0, 0.0),
|
||||||
controller: _model.textController3,
|
child: TextFormField(
|
||||||
focusNode: _model.textFieldFocusNode3,
|
controller: _model.textController3,
|
||||||
autofocus: false,
|
focusNode: _model.textFieldFocusNode3,
|
||||||
textCapitalization: TextCapitalization.none,
|
autofocus: false,
|
||||||
textInputAction: TextInputAction.next,
|
textCapitalization: TextCapitalization.none,
|
||||||
readOnly: true,
|
textInputAction: TextInputAction.next,
|
||||||
obscureText: false,
|
readOnly: true,
|
||||||
decoration: InputDecoration(
|
obscureText: false,
|
||||||
isDense: true,
|
decoration: InputDecoration(
|
||||||
labelText: FFLocalizations.of(context).getText(
|
isDense: true,
|
||||||
'kt87omsz' /* Mensagem */,
|
labelText: FFLocalizations.of(context).getText(
|
||||||
),
|
'kt87omsz' /* Data */,
|
||||||
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,
|
|
||||||
letterSpacing: 0.0,
|
|
||||||
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
|
||||||
FlutterFlowTheme.of(context).labelMediumFamily),
|
|
||||||
),
|
|
||||||
enabledBorder: InputBorder.none,
|
|
||||||
focusedBorder: InputBorder.none,
|
|
||||||
errorBorder: InputBorder.none,
|
|
||||||
focusedErrorBorder: InputBorder.none,
|
|
||||||
suffixIcon: Icon(
|
|
||||||
Icons.message,
|
|
||||||
color: FlutterFlowTheme.of(context).accent1,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
|
||||||
fontFamily:
|
|
||||||
FlutterFlowTheme.of(context).bodyMediumFamily,
|
|
||||||
color: FlutterFlowTheme.of(context).primaryText,
|
|
||||||
letterSpacing: 0.0,
|
|
||||||
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
|
||||||
FlutterFlowTheme.of(context).bodyMediumFamily),
|
|
||||||
),
|
),
|
||||||
textAlign: TextAlign.start,
|
labelStyle: FlutterFlowTheme.of(context)
|
||||||
validator:
|
.labelMedium
|
||||||
_model.textController3Validator.asValidator(context),
|
.override(
|
||||||
),
|
fontFamily: FlutterFlowTheme.of(context)
|
||||||
),
|
.labelMediumFamily,
|
||||||
Padding(
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
padding: const EdgeInsetsDirectional.fromSTEB(
|
letterSpacing: 0.0,
|
||||||
24.0, 20.0, 24.0, 20.0),
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
child: TextFormField(
|
FlutterFlowTheme.of(context)
|
||||||
controller: _model.textController4,
|
.labelMediumFamily),
|
||||||
focusNode: _model.textFieldFocusNode4,
|
),
|
||||||
autofocus: false,
|
hintStyle:
|
||||||
textInputAction: TextInputAction.next,
|
FlutterFlowTheme.of(context).labelMedium.override(
|
||||||
obscureText: false,
|
fontFamily: FlutterFlowTheme.of(context)
|
||||||
decoration: InputDecoration(
|
.labelMediumFamily,
|
||||||
isDense: true,
|
letterSpacing: 0.0,
|
||||||
labelText: FFLocalizations.of(context).getText(
|
useGoogleFonts: GoogleFonts.asMap()
|
||||||
'ssz899es' /* Pergunta */,
|
.containsKey(FlutterFlowTheme.of(context)
|
||||||
),
|
.labelMediumFamily),
|
||||||
labelStyle: FlutterFlowTheme.of(context)
|
),
|
||||||
.labelMedium
|
enabledBorder: InputBorder.none,
|
||||||
.override(
|
focusedBorder: InputBorder.none,
|
||||||
fontFamily:
|
errorBorder: InputBorder.none,
|
||||||
FlutterFlowTheme.of(context).labelMediumFamily,
|
focusedErrorBorder: InputBorder.none,
|
||||||
color: FlutterFlowTheme.of(context).primaryText,
|
suffixIcon: Icon(
|
||||||
letterSpacing: 0.0,
|
Icons.message,
|
||||||
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: OutlineInputBorder(
|
|
||||||
borderSide: BorderSide(
|
|
||||||
color: FlutterFlowTheme.of(context).accent1,
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
width: 0.5,
|
|
||||||
),
|
),
|
||||||
borderRadius: BorderRadius.circular(10.0),
|
|
||||||
),
|
|
||||||
focusedBorder: OutlineInputBorder(
|
|
||||||
borderSide: BorderSide(
|
|
||||||
color: FlutterFlowTheme.of(context).primary,
|
|
||||||
width: 0.5,
|
|
||||||
),
|
|
||||||
borderRadius: BorderRadius.circular(10.0),
|
|
||||||
),
|
|
||||||
errorBorder: OutlineInputBorder(
|
|
||||||
borderSide: BorderSide(
|
|
||||||
color: FlutterFlowTheme.of(context).error,
|
|
||||||
width: 0.5,
|
|
||||||
),
|
|
||||||
borderRadius: BorderRadius.circular(10.0),
|
|
||||||
),
|
|
||||||
focusedErrorBorder: OutlineInputBorder(
|
|
||||||
borderSide: BorderSide(
|
|
||||||
color: FlutterFlowTheme.of(context).error,
|
|
||||||
width: 0.5,
|
|
||||||
),
|
|
||||||
borderRadius: BorderRadius.circular(10.0),
|
|
||||||
),
|
|
||||||
suffixIcon: Icon(
|
|
||||||
Icons.question_answer,
|
|
||||||
color: FlutterFlowTheme.of(context).accent1,
|
|
||||||
),
|
),
|
||||||
|
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
||||||
|
fontFamily:
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily,
|
||||||
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
|
letterSpacing: 0.0,
|
||||||
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
|
FlutterFlowTheme.of(context).bodyMediumFamily),
|
||||||
|
),
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
validator:
|
||||||
|
_model.textController3Validator.asValidator(context),
|
||||||
),
|
),
|
||||||
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
|
||||||
fontFamily:
|
|
||||||
FlutterFlowTheme.of(context).bodyMediumFamily,
|
|
||||||
color: FlutterFlowTheme.of(context).primaryText,
|
|
||||||
letterSpacing: 0.0,
|
|
||||||
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
|
||||||
FlutterFlowTheme.of(context).bodyMediumFamily),
|
|
||||||
),
|
|
||||||
validator:
|
|
||||||
_model.textController4Validator.asValidator(context),
|
|
||||||
),
|
),
|
||||||
),
|
if (widget.vawStatus == 'S')
|
||||||
Row(
|
Padding(
|
||||||
mainAxisSize: MainAxisSize.max,
|
padding: const EdgeInsetsDirectional.fromSTEB(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
24.0, 20.0, 24.0, 20.0),
|
||||||
children: [
|
child: TextFormField(
|
||||||
FlutterFlowIconButton(
|
controller: _model.textController4,
|
||||||
borderRadius: 20.0,
|
focusNode: _model.textFieldFocusNode4,
|
||||||
borderWidth: 1.0,
|
autofocus: false,
|
||||||
buttonSize: 40.0,
|
textInputAction: TextInputAction.next,
|
||||||
fillColor: FlutterFlowTheme.of(context).error,
|
obscureText: false,
|
||||||
icon: Icon(
|
decoration: InputDecoration(
|
||||||
Icons.close,
|
isDense: true,
|
||||||
color: FlutterFlowTheme.of(context).primaryBackground,
|
labelText: FFLocalizations.of(context).getText(
|
||||||
size: 24.0,
|
'ssz899es' /* Pergunta */,
|
||||||
|
),
|
||||||
|
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: OutlineInputBorder(
|
||||||
|
borderSide: BorderSide(
|
||||||
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
|
width: 0.5,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10.0),
|
||||||
|
),
|
||||||
|
focusedBorder: OutlineInputBorder(
|
||||||
|
borderSide: BorderSide(
|
||||||
|
color: FlutterFlowTheme.of(context).primary,
|
||||||
|
width: 0.5,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10.0),
|
||||||
|
),
|
||||||
|
errorBorder: OutlineInputBorder(
|
||||||
|
borderSide: BorderSide(
|
||||||
|
color: FlutterFlowTheme.of(context).error,
|
||||||
|
width: 0.5,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10.0),
|
||||||
|
),
|
||||||
|
focusedErrorBorder: OutlineInputBorder(
|
||||||
|
borderSide: BorderSide(
|
||||||
|
color: FlutterFlowTheme.of(context).error,
|
||||||
|
width: 0.5,
|
||||||
|
),
|
||||||
|
borderRadius: BorderRadius.circular(10.0),
|
||||||
|
),
|
||||||
|
suffixIcon: Icon(
|
||||||
|
Icons.question_answer,
|
||||||
|
color: FlutterFlowTheme.of(context).accent1,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
onPressed: () async {
|
style: FlutterFlowTheme.of(context).bodyMedium.override(
|
||||||
var shouldSetState = false;
|
fontFamily:
|
||||||
await _model.visitRequestComponentAction(
|
FlutterFlowTheme.of(context).bodyMediumFamily,
|
||||||
context,
|
color: FlutterFlowTheme.of(context).primaryText,
|
||||||
actionValue: 'B',
|
letterSpacing: 0.0,
|
||||||
refUUID: widget.vawRef,
|
useGoogleFonts: GoogleFonts.asMap().containsKey(
|
||||||
responseValue: _model.textController4.text,
|
FlutterFlowTheme.of(context).bodyMediumFamily),
|
||||||
vteUUID: widget.vteUUID,
|
),
|
||||||
);
|
validator:
|
||||||
shouldSetState = true;
|
_model.textController4Validator.asValidator(context),
|
||||||
|
|
||||||
// Verifica se o widget ainda está montado antes de tomar qualquer ação baseada no contexto
|
|
||||||
if (!mounted) return;
|
|
||||||
Navigator.pop(context);
|
|
||||||
if (shouldSetState) setState(() {});
|
|
||||||
},
|
|
||||||
),
|
),
|
||||||
FlutterFlowIconButton(
|
),
|
||||||
borderRadius: 20.0,
|
if (widget.vawStatus == 'S')
|
||||||
borderWidth: 1.0,
|
Row(
|
||||||
buttonSize: 40.0,
|
mainAxisSize: MainAxisSize.max,
|
||||||
fillColor: FlutterFlowTheme.of(context).success,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
icon: Icon(
|
children: [
|
||||||
Icons.done,
|
FlutterFlowIconButton(
|
||||||
color: FlutterFlowTheme.of(context).primaryBackground,
|
borderRadius: 20.0,
|
||||||
size: 24.0,
|
borderWidth: 1.0,
|
||||||
|
buttonSize: 40.0,
|
||||||
|
fillColor: FlutterFlowTheme.of(context).error,
|
||||||
|
icon: Icon(
|
||||||
|
Icons.close,
|
||||||
|
color: FlutterFlowTheme.of(context).primaryBackground,
|
||||||
|
size: 24.0,
|
||||||
|
),
|
||||||
|
onPressed: () async {
|
||||||
|
var shouldSetState = false;
|
||||||
|
_model.blockVisitRequest =
|
||||||
|
await _model.visitRequestComponentAction(
|
||||||
|
context,
|
||||||
|
actionValue: 'B',
|
||||||
|
refUUID: widget.vawRef,
|
||||||
|
responseValue: _model.textController4.text,
|
||||||
|
vteUUID: widget.vteUUID,
|
||||||
|
);
|
||||||
|
shouldSetState = true;
|
||||||
|
if (_model.blockVisitRequest == true) {
|
||||||
|
Navigator.pop(context);
|
||||||
|
} else {
|
||||||
|
if (shouldSetState) setState(() {});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (shouldSetState) setState(() {});
|
||||||
|
},
|
||||||
),
|
),
|
||||||
onPressed: () async {
|
FlutterFlowIconButton(
|
||||||
var shouldSetState = false;
|
borderRadius: 20.0,
|
||||||
await _model.visitRequestComponentAction(
|
borderWidth: 1.0,
|
||||||
context,
|
buttonSize: 40.0,
|
||||||
actionValue: 'L',
|
fillColor: FlutterFlowTheme.of(context).success,
|
||||||
refUUID: widget.vawRef,
|
icon: Icon(
|
||||||
responseValue: _model.textController4.text,
|
Icons.done,
|
||||||
vteUUID: widget.vteUUID,
|
color: FlutterFlowTheme.of(context).primaryBackground,
|
||||||
);
|
size: 24.0,
|
||||||
shouldSetState = true;
|
),
|
||||||
|
onPressed: () async {
|
||||||
|
var shouldSetState = false;
|
||||||
|
_model.approveVisitRequest =
|
||||||
|
await _model.visitRequestComponentAction(
|
||||||
|
context,
|
||||||
|
actionValue: 'L',
|
||||||
|
refUUID: widget.vawRef,
|
||||||
|
responseValue: _model.textController4.text,
|
||||||
|
vteUUID: widget.vteUUID,
|
||||||
|
);
|
||||||
|
shouldSetState = true;
|
||||||
|
if (_model.approveVisitRequest == true) {
|
||||||
|
Navigator.pop(context);
|
||||||
|
} else {
|
||||||
|
if (shouldSetState) setState(() {});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (!mounted) return;
|
if (shouldSetState) setState(() {});
|
||||||
Navigator.pop(context);
|
},
|
||||||
if (shouldSetState) setState(() {});
|
),
|
||||||
},
|
].divide(const SizedBox(width: 20.0)),
|
||||||
),
|
),
|
||||||
].divide(const SizedBox(width: 20.0)),
|
|
||||||
),
|
|
||||||
]
|
]
|
||||||
.divide(const SizedBox(height: 10.0))
|
.divide(const SizedBox(height: 10.0))
|
||||||
.addToStart(const SizedBox(height: 20.0))
|
.addToStart(const SizedBox(height: 20.0))
|
||||||
|
|
|
@ -1006,8 +1006,8 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
|
||||||
'en': 'Reason',
|
'en': 'Reason',
|
||||||
},
|
},
|
||||||
'kt87omsz': {
|
'kt87omsz': {
|
||||||
'pt': 'Mensagem',
|
'pt': 'Data',
|
||||||
'en': 'Message',
|
'en': 'Date',
|
||||||
},
|
},
|
||||||
'cx6sviir': {
|
'cx6sviir': {
|
||||||
'pt': '',
|
'pt': '',
|
||||||
|
@ -1045,6 +1045,29 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
|
||||||
'en': '',
|
'en': '',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
// liberationHistoryItemDetailsTemplateComponent
|
||||||
|
{
|
||||||
|
'dmazrriq': {
|
||||||
|
'pt': 'Nome',
|
||||||
|
'en': 'Name',
|
||||||
|
},
|
||||||
|
'xx3ivbr4': {
|
||||||
|
'pt': 'Tipo',
|
||||||
|
'en': 'Type',
|
||||||
|
},
|
||||||
|
'rhheok7k': {
|
||||||
|
'pt': 'Acesso',
|
||||||
|
'en': 'Access',
|
||||||
|
},
|
||||||
|
'w3tciqlv': {
|
||||||
|
'pt': 'Acionamento',
|
||||||
|
'en': 'Drive',
|
||||||
|
},
|
||||||
|
'ojplrsp3': {
|
||||||
|
'pt': '',
|
||||||
|
'en': '',
|
||||||
|
},
|
||||||
|
},
|
||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
{
|
{
|
||||||
'i5smty81': {
|
'i5smty81': {
|
||||||
|
|
Loading…
Reference in New Issue