Files
rkmmobile/lib/screens/register_citizen_screen.dart
Reginaldo 13e9eb4b24 criado widgets dropdown_with_subtitle.dart, input_with_subtitle.dart, onbackbutton.dart, switch_with_subtitle.dart
criada as telas main_register_citizen_screen.dart e main_procedures_screen.dart
2023-03-24 22:54:42 -03:00

1185 lines
60 KiB
Dart

import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
import 'package:rkm/utils/color_palette.dart';
import 'package:rkm/utils/const_variable.dart';
import 'package:rkm/widgets/alert_dialog_default.dart';
import 'package:rkm/widgets/button_default.dart';
import 'package:rkm/widgets/title_containers.dart';
import '../widgets/dropdown_with_subtitle.dart';
import '../widgets/input_with_subtitle.dart';
import '../widgets/onbackbutton.dart';
import '../widgets/switch_with_subtitle.dart';
import '../widgets/text_default.dart';
class RegisterCitizenScreen extends StatefulWidget {
const RegisterCitizenScreen({Key? key}) : super(key: key);
@override
State<RegisterCitizenScreen> createState() => _RegisterCitizenScreenState();
}
class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
var nameController = TextEditingController();
var nameSocialController = TextEditingController();
var spouseController = TextEditingController();
var cityBirthController = TextEditingController();
var cityController = TextEditingController();
var searchCityBirthController = TextEditingController();
var searchCityController = TextEditingController();
var nameMotherController = TextEditingController();
var nameFatherController = TextEditingController();
var codIBGEController = TextEditingController();
var unitController = TextEditingController(text: 'USF PINHAL - EMILIA STEPHANI SIMIONATO');
var medicalRecordController = TextEditingController();
var medicalRecordProvController = TextEditingController();
var classificationProvController = TextEditingController();
var numberFamilyController = TextEditingController();
var cepController = TextEditingController();
var numberController = TextEditingController();
var complementController = TextEditingController();
var referencePointController = TextEditingController();
var foneDDDController = TextEditingController();
var foneController = TextEditingController();
var mobileDDDController = TextEditingController();
var mobileController = TextEditingController();
var messageDDDController = TextEditingController();
var messageController = TextEditingController();
var emailController = TextEditingController();
var observationController = TextEditingController();
var CPFController = TextEditingController();
var CNSController = TextEditingController();
var voterController = TextEditingController();
var RGController = TextEditingController();
var RGComplementController = TextEditingController();
var RGOrganController = TextEditingController();
var RGDateController = TextEditingController();
var numberCertificateController = TextEditingController();
var nameCertificateController = TextEditingController();
var bookCertificateController = TextEditingController();
var sheetCertificateController = TextEditingController();
var termCertificateController = TextEditingController();
var dateCertificateController = TextEditingController();
var CTPSController = TextEditingController();
var numberCTPSController = TextEditingController();
var PISController = TextEditingController();
var NISController = TextEditingController();
var incomeController = TextEditingController();
var professionalController = TextEditingController();
var dateDeathController = TextEditingController();
String? selectTypeCertificate;
String? selectCTPSUF;
String? selectRGUF;
String? selectTypeStreet;
String? selectStreet;
String? selectSubdivision;
String? selectZone;
String? selectVillage;
String? selectCountry;
String? selectClassification;
String? selectGender;
String? selectMaritalStatus;
String? selectBreed;
String? selectScooling;
String? selectDeficiency;
String? selectNaturality;
bool enableSpouse = false;
bool enableMother = false;
bool enableFather = false;
bool enableCityCard = false;
bool enableBlocked = false;
bool checkBoxNumber = false;
String date = 'Data de Nascimento';
escolherprazoInicio(BuildContext context) async {
var pickDate = await showDatePicker(
context: context,
initialDate: DateTime.now(),
firstDate: DateTime(2022),
lastDate: DateTime(2025));
if (pickDate != null) {
setState(() {
date = formatData(year: pickDate.year, month: pickDate.month, day: pickDate.day);
});
}
}
String formatData({int? year, int? month, int? day}) {
DateTime data = DateTime(year!, month!, day!);
String formattedDate = DateFormat('dd/MM/yyyy').format(data);
return formattedDate;
}
@override
Widget build(BuildContext context) {
double heigth = MediaQuery.of(context).size.height;
double width = MediaQuery.of(context).size.width;
return WillPopScope(
onWillPop: ()=> OnBackButton().onBackButton(context),
child: Scaffold(
body: Container(
height: double.infinity,
width: double.infinity,
decoration: ConstVariable().backgroundGradient,
child: ListView(
children: [
Card(
margin: EdgeInsets.all(10),
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Column(
children: [
ButtonDefault(
onPressed: (){},
title: 'Salvar',
borderColor: ColorPalette.appBar,
background: ColorPalette.appBar,
textColor: ColorPalette.white,
width: double.infinity,
),
ButtonDefault(
onPressed: ()=>Navigator.pop(context),
title: 'Cancelar',
borderColor: ColorPalette.blackButton,
background: ColorPalette.blackButton,
textColor: ColorPalette.white,
width: double.infinity,
)
],
),
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Indentificação'),
Row(
children: [
Container(
height: heigth*0.5,
width: width*0.2,
child: Icon(Icons.person,size: 80,),
),
Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
InputWithSubtitle(
controller: nameController,
subtitle: 'Nome',
errorInput: 'Campo Obrigatório',
labelInput: 'Nome',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: nameSocialController,
subtitle: 'Nome Social',
errorInput: 'Campo Obrigatório',
labelInput: 'Nome Social',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
DropdownWithSubtitle(
list: ConstVariable().listGender,
widthSubtitle: width*0.7,
subtitle: 'Sexo',
hintDropdown: 'Sexo',
select: selectGender,
widthDropdown: width*0.7,
widthContainerDropdown: width*0.6,
onChanged: (value){
setState(() {
selectGender = value!;
});
},
),
Container(
width: width*0.75,
child: Row(
children: [
// Padding(
// padding: const EdgeInsets.symmetric(horizontal: 5.0,vertical: 15),
// child: TextDefault(
// text: 'Data de Nascimento',
// color: ColorPalette.black54,
// fontWeigth: FontWeight.bold,
// fontSize: 18,
// ),
// ),
// Spacer(),
GestureDetector(
onTap: ()=>escolherprazoInicio(context),
child: Container(
height: 50,
margin: EdgeInsets.symmetric(horizontal: 10),
padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10),
decoration: BoxDecoration(
border: Border.all(color: ColorPalette.black54),
borderRadius: BorderRadius.all(
Radius.circular(5.0) // <--- border radius here
),
),
width: width*0.7,
child: TextDefault(
text: date,
color: ColorPalette.black54,
fontSize: 18,
),
),
)
],
),
),
DropdownWithSubtitle(
list: ConstVariable().listMaritalStatus,
widthSubtitle: width*0.2,
subtitle: 'Estado Civil',
hintDropdown: 'Selecione',
select: selectMaritalStatus,
widthDropdown: width*0.7,
widthContainerDropdown: width*0.4,
onChanged: (value){
setState(() {
selectMaritalStatus = value!;
if(selectMaritalStatus=='CASADO(A)'){
enableSpouse = true;
}else{
enableSpouse = false;
}
});
},
),
InputWithSubtitle(
controller: spouseController,
subtitle: 'Cônjuge',
errorInput: 'Campo Obrigatório',
labelInput: 'Cônjuge',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: enableSpouse,
),
DropdownWithSubtitle(
list: ConstVariable().listNationality,
widthSubtitle: width*0.2,
subtitle: 'Naturalidade',
hintDropdown: 'Selecione',
select: selectNaturality,
widthDropdown: width*0.7,
widthContainerDropdown: width*0.4,
onChanged: (value){
setState(() {
selectNaturality = value!;
if(selectNaturality!='BRASILEIRO'){
cityBirthController.text = 'MUNICIPIO IGNORADO - SP';
}else{
cityBirthController.text = '';
}
});
},
),
GestureDetector(
onTap: ()=>cityBirthController.text == 'MUNICIPIO IGNORADO - SP'?null:AlertDialogDefault().alert_with_search(
context, searchCityBirthController,
ListView.separated(
separatorBuilder:(context,index)=> Divider(color: ColorPalette.black54,height: 5,),
itemCount: ConstVariable().itensCity.length,
itemBuilder: (context,index){
return Container(
width: width*0.8,
color: ColorPalette.white,
child: ListTile(
onTap: (){
setState(() {
cityBirthController.text = ConstVariable().itensCity[index];
Navigator.pop(context);
});
},
title: TextDefault(
color: ColorPalette.black54,
text: ConstVariable().itensCity[index],
fontSize: 16,
maxLines: 2,
),
),
);
}
),
),
child: InputWithSubtitle(
controller: cityBirthController,
subtitle: 'Município de Nascimento',
errorInput: 'Campo Obrigatório',
labelInput: 'Município de Nascimento',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: false,
),
),
DropdownWithSubtitle(
list: ConstVariable().listBreed,
widthSubtitle: width*0.2,
subtitle: 'Raça/Cor',
hintDropdown: 'Raça/Cor',
select: selectBreed,
widthDropdown: width*0.7,
widthContainerDropdown: width*0.4,
onChanged: (value){
setState(() {
selectBreed = value!;
});
},
),
DropdownWithSubtitle(
list: ConstVariable().listScooling,
widthSubtitle: width*0.2,
subtitle: 'Escolaridade',
hintDropdown: 'Escolaridade',
select: selectScooling,
widthDropdown: width*0.7,
widthContainerDropdown: width*0.4,
onChanged: (value){
setState(() {
selectScooling = value!;
});
},
),
DropdownWithSubtitle(
list: ConstVariable().listDeficiency,
widthSubtitle: width*0.2,
subtitle: 'Deficiência',
hintDropdown: 'Deficiência',
select: selectDeficiency,
widthDropdown: width*0.7,
widthContainerDropdown: width*0.4,
onChanged: (value){
setState(() {
selectDeficiency = value!;
});
},
),
InputWithSubtitle(
controller: nameMotherController,
subtitle: 'Nome da Mãe',
errorInput: 'Campo Obrigatório',
labelInput: 'Nome da Mãe',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: !enableMother,
),
SwitchWithSubtitle(
width: width*0.7,
title: 'Desconhece Mãe',
value: enableMother,
onChanged: (value){
setState(() {
enableMother = value;
if(enableMother){
nameMotherController.text = '';
}
});
},
),
InputWithSubtitle(
controller: nameFatherController,
subtitle: 'Nome do Pai',
errorInput: 'Campo Obrigatório',
labelInput: 'Nome do Pai',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: !enableFather,
),
SwitchWithSubtitle(
width: width*0.7,
title: 'Desconhece Pai',
value: enableFather,
onChanged: (value){
setState(() {
enableFather = value;
if(enableFather){
nameFatherController.text = '';
}
});
},
),
],
)
],
)
],
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Identificação da Saúde'),
Row(
children: [
Container(
height: heigth*0.4,
width: width*0.2,
child: Icon(Icons.medical_services_rounded,size: 80,),
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
InputWithSubtitle(
controller: unitController,
subtitle: 'Unidade',
errorInput: 'Campo Obrigatório',
labelInput: 'Unidade',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
enable: false,
),
InputWithSubtitle(
controller: medicalRecordController,
subtitle: 'Prontuário',
errorInput: 'Campo Obrigatório',
labelInput: 'Prontuário',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
enable: false,
),
InputWithSubtitle(
controller: medicalRecordProvController,
subtitle: 'Prontuário Provisório',
errorInput: 'Campo Obrigatório',
labelInput: 'Prontuário Provisório',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
enable: false,
),
DropdownWithSubtitle(
subtitle: 'Classificação',
select: selectClassification,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Número da Família',
onChanged: (value){
setState(() {
selectClassification = value;
if(selectClassification=='OUTRO MUNICIPIO'){
AlertDialogDefault().alert(
context,
'Aviso',
'As informações dos campos Bairro, Tipo Logradouro, Nome Logradouro, CEP,'
'Número, Loteamento e Complemento deverão ser inseridos no campo Observações!',
'OK'
);
}
});
},
list: [
'MUNICIPE',
'PROVISORIO',
'OUTRO MUNICIPIO',
]
),
InputWithSubtitle(
controller: numberFamilyController,
subtitle: 'Número da Família',
errorInput: 'Campo Obrigatório',
labelInput: 'Número da Família',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
],
),
),
]
),
],
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Endereço'),
Row(
children: [
Container(
height: heigth*0.4,
width: width*0.2,
child: Icon(Icons.map_outlined,size: 80,),
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
DropdownWithSubtitle(
subtitle: 'Pais de Residência',
select: selectCountry,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Pais de Residência',
onChanged: (value){
setState(() {
selectCountry = value;
if(selectCountry=='OUTRO'){
cityController.text= 'MUNICIPIO IGNORADO - SP';
codIBGEController.text = '000000';
AlertDialogDefault().alert(
context,
'Aviso',
'As informações dos campos Bairro, Tipo Logradouro, Nome Logradouro, CEP,'
'Número, Loteamento e Complemento deverão ser inseridos no campo Observações!',
'OK'
);
}else{
cityController.text = '';
codIBGEController.text = '';
}
});
},
list: [
'BRASIL',
'OUTRO',
]
),
GestureDetector(
onTap: ()=>cityController.text == 'MUNICIPIO IGNORADO - SP'?null:AlertDialogDefault().alert_with_search(
context, searchCityController,
ListView.separated(
separatorBuilder:(context,index)=> Divider(color: ColorPalette.black54,height: 5,),
itemCount: ConstVariable().itensCity.length,
itemBuilder: (context,index){
return Container(
width: width*0.8,
color: ColorPalette.white,
child: ListTile(
onTap: (){
setState(() {
cityController.text = ConstVariable().itensCity[index];
codIBGEController.text = '353870';
Navigator.pop(context);
});
},
title: TextDefault(
color: ColorPalette.black54,
text: ConstVariable().itensCity[index],
fontSize: 16,
maxLines: 2,
),
),
);
}
),
),
child: InputWithSubtitle(
controller: cityController,
subtitle: 'Município de Residência',
errorInput: 'Campo Obrigatório',
labelInput: 'Município de Residência',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: false,
),
),
InputWithSubtitle(
controller: codIBGEController,
subtitle: 'Cód. IBGE',
errorInput: 'Campo Obrigatório',
labelInput: 'Cód. IBGE',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: false,
),
DropdownWithSubtitle(
subtitle: 'Bairro',
select: selectVillage,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Bairro',
onChanged: (value){
setState(() {
selectVillage = value;
});
},
list: []
),
DropdownWithSubtitle(
subtitle: 'Tipo de Logradouro',
select: selectTypeStreet,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Tipo de Logradouro',
onChanged: (value){
setState(() {
selectTypeStreet = value;
});
},
list: []
),
DropdownWithSubtitle(
subtitle: 'Nome do Logradouro',
select: selectStreet,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Nome do Logradouro',
onChanged: (value){
setState(() {
selectStreet = value;
});
},
list: []
),
InputWithSubtitle(
controller: cepController,
subtitle: 'CEP(só números)',
errorInput: 'Campo Obrigatório',
labelInput: 'CEP(só números)',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: false,
),
Container(
width: width*0.7,
child: Row(
children: [
InputWithSubtitle(
controller: numberController,
subtitle: 'Número',
errorInput: 'Campo Obrigatório',
labelInput: 'Número',
widthInput: width*0.4,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
enable: false,
),
Checkbox(
value: checkBoxNumber,
onChanged: (value){
setState(() {
checkBoxNumber = value!;
});
}
),
Spacer(),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: TextDefault(text: 'SEM NÚMERO',fontSize: 15,),
)
],
),
),
DropdownWithSubtitle(
subtitle: 'Loteamento/Subdistrito',
select: selectSubdivision,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Loteamento/Subdistrito',
onChanged: (value){
setState(() {
selectSubdivision = value;
});
},
list: []
),
InputWithSubtitle(
controller: complementController,
subtitle: 'Complemento',
errorInput: 'Campo Obrigatório',
labelInput: 'Complemento',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: referencePointController,
subtitle: 'Ponto de Referência',
errorInput: 'Campo Obrigatório',
labelInput: 'Ponto de Referência',
widthInput: width*0.7,
widthSubtitle: width*0.2,
hintInput: 'Escreva aqui',
),
DropdownWithSubtitle(
subtitle: 'Zona',
select: selectZone,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Zona',
onChanged: (value){
setState(() {
selectZone = value;
});
},
list: ['URBANA','RURAL']
),
],
),
),
]
),
],
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Contato'),
Row(
children: [
Container(
height: heigth*0.4,
width: width*0.2,
child: Icon(Icons.medical_services_rounded,size: 80,),
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
InputWithSubtitle(
controller: foneDDDController,
subtitle: 'Telefone - DDD',
errorInput: 'Campo Obrigatório',
labelInput: 'Telefone - DDD',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: foneController,
subtitle: 'Telefone (Só Números)',
errorInput: 'Campo Obrigatório',
labelInput: 'Telefone(Só Números)',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: mobileDDDController,
subtitle: 'Celular - DDD',
errorInput: 'Campo Obrigatório',
labelInput: 'Celular - DDD',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: mobileController,
subtitle: 'Celular (Só Números)',
errorInput: 'Campo Obrigatório',
labelInput: 'Celular (Só Números)',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: messageDDDController,
subtitle: 'Recado - DDD',
errorInput: 'Campo Obrigatório',
labelInput: 'Recado - DDD',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: messageController,
subtitle: 'Recado (Só Números)',
errorInput: 'Campo Obrigatório',
labelInput: 'Recado (Só Números)',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: emailController,
subtitle: 'E-mail',
errorInput: 'Campo Obrigatório',
labelInput: 'E-mail',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
],
),
),
]
),
],
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Observações'),
Row(
children: [
Container(
height: heigth*0.2,
width: width*0.2,
child: Icon(Icons.sell,size: 80,),
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
InputWithSubtitle(
controller: observationController,
subtitle: 'Observação',
errorInput: 'Campo Obrigatório',
labelInput: 'Observação',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
textInputType: TextInputType.multiline,
maxLines: 5,
),
],
),
),
]
),
],
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Documentos'),
Row(
children: [
Container(
height: heigth*0.4,
width: width*0.2,
child: Icon(Icons.description_outlined,size: 80,),
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
InputWithSubtitle(
controller: CPFController,
subtitle: 'CPF (Só Números)',
errorInput: 'Campo Obrigatório',
labelInput: 'CPF (Só Números)',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: CNSController,
subtitle: 'CNS',
errorInput: 'Campo Obrigatório',
labelInput: 'CNS',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: voterController,
subtitle: 'Título de Eleitor',
errorInput: 'Campo Obrigatório',
labelInput: 'Título de Eleitor',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: RGController,
subtitle: 'RG',
errorInput: 'Campo Obrigatório',
labelInput: 'RG',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: RGComplementController,
subtitle: 'RG - Complemento',
errorInput: 'Campo Obrigatório',
labelInput: 'RG - Complemento',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
DropdownWithSubtitle(
subtitle: 'RG - UF',
select: selectRGUF,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'RG - UF',
onChanged: (value){
setState(() {
selectRGUF = value;
});
},
list: []
),
InputWithSubtitle(
controller: RGOrganController,
subtitle: 'RG - Órgão',
errorInput: 'Campo Obrigatório',
labelInput: 'RG - Órgão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: RGDateController,
subtitle: 'RG - Data de Emissão',
errorInput: 'Campo Obrigatório',
labelInput: 'RG - Data de Emissão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
DropdownWithSubtitle(
subtitle: 'Tipo de certidão',
select: selectTypeCertificate,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'Tipo de certidão',
onChanged: (value){
setState(() {
selectTypeCertificate = value;
});
},
list: [
'NASCIMENTO',
'CASAMENTO',
'DIVÓRCIO',
'ADMINISTRATIVA - ÍNDIO',
'NASCIMENTO - N',
'CASAMENTO - N',
'DIVÓRCIO - N',
'ADMINISTRATIVA - ÍNDIO - N',
]
),
InputWithSubtitle(
controller: numberCertificateController,
subtitle: 'Número da Certidão',
errorInput: 'Campo Obrigatório',
labelInput: 'Número da Certidão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: nameCertificateController,
subtitle: 'Nome do Cartório da Certidão',
errorInput: 'Campo Obrigatório',
labelInput: 'Nome do Cartório da Certidão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: bookCertificateController,
subtitle: 'Livro da Certidão',
errorInput: 'Campo Obrigatório',
labelInput: 'Livro da Certidão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: sheetCertificateController,
subtitle: 'Folha da Certidão',
errorInput: 'Campo Obrigatório',
labelInput: 'Folha da Certidão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: termCertificateController,
subtitle: 'Termo da Certidão',
errorInput: 'Campo Obrigatório',
labelInput: 'Termo da Certidão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: dateCertificateController,
subtitle: 'Data de Emissão da Certidão',
errorInput: 'Campo Obrigatório',
labelInput: 'Data de Emissão da Certidão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: CTPSController,
subtitle: 'CTPS',
errorInput: 'Campo Obrigatório',
labelInput: 'CTPS',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: numberCTPSController,
subtitle: 'Número de Série CTPS',
errorInput: 'Campo Obrigatório',
labelInput: 'Número de Série CTPS',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
DropdownWithSubtitle(
subtitle: 'CTPS - UF',
select: selectCTPSUF,
widthDropdown: width*0.672,
widthContainerDropdown: width*0.5,
widthSubtitle: width*0.3,
hintDropdown: 'CTPS - UF',
onChanged: (value){
setState(() {
selectCTPSUF = value;
});
},
list: []
),
InputWithSubtitle(
controller: PISController,
subtitle: 'PIS/PASEP',
errorInput: 'Campo Obrigatório',
labelInput: 'PIS/PASEP',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
Container(
width: width*0.7,
child: Row(
children: [
TextDefault(text: 'Retirou cartão municipal da cidade?'),
Spacer(),
Switch(value: enableCityCard, onChanged: (value)=>setState(()=>enableCityCard=value!)
)
],
),
),
InputWithSubtitle(
controller: NISController,
subtitle: 'Identificação da saúde - NIS',
errorInput: 'Campo Obrigatório',
labelInput: 'Identificação da saúde - NIS',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
],
),
),
]
),
],
),
),
Card(
margin: EdgeInsets.all(10),
child: Column(
children: [
TitleContainers(title: 'Outros'),
Row(
children: [
Container(
height: heigth*0.3,
width: width*0.2,
child: Icon(Icons.tag,size: 80,),
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
InputWithSubtitle(
controller: incomeController,
subtitle: 'Renda Mensal',
errorInput: 'Campo Obrigatório',
labelInput: 'Renda Mensal',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: professionalController,
subtitle: 'Profissão',
errorInput: 'Campo Obrigatório',
labelInput: 'Profissão',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
InputWithSubtitle(
controller: dateDeathController,
subtitle: 'Data Óbito',
errorInput: 'Campo Obrigatório',
labelInput: 'Data Óbito',
widthInput: width*0.7,
widthSubtitle: width*0.7,
hintInput: 'Escreva aqui',
),
Container(
width: width*0.7,
child: Row(
children: [
TextDefault(text: 'Bloqueado'),
Spacer(),
Switch(value: enableBlocked, onChanged: (value)=>setState(()=>enableBlocked=value!)),
],
),
)
],
),
),
]
),
],
),
),
]
)
),
),
);
}
}