ajustes em diversos para exibir o calendário BR, ajuste para cadastro individual
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import 'dart:io';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_localizations/flutter_localizations.dart';
|
||||
import 'package:rkm/config/color_palette.dart';
|
||||
import 'package:rkm/config/routes.dart';
|
||||
|
||||
@@ -18,9 +19,20 @@ void main() {
|
||||
//Cadastro e edição do Cadastro do Cidadão, Cadastro Individual, Cadastro Domiciliar e Visita Domiciliar
|
||||
class MyApp extends StatelessWidget {
|
||||
const MyApp({super.key});
|
||||
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MaterialApp(
|
||||
locale: const Locale('pt'),
|
||||
localizationsDelegates: [
|
||||
GlobalMaterialLocalizations.delegate,
|
||||
GlobalCupertinoLocalizations.delegate,
|
||||
GlobalWidgetsLocalizations.delegate,
|
||||
],
|
||||
supportedLocales: [
|
||||
const Locale('pt', 'BR'), // Adicione os locales que você precisa
|
||||
],
|
||||
theme: ThemeData(
|
||||
primaryColor: ColorPalette.primary,
|
||||
appBarTheme: AppBarTheme(
|
||||
|
||||
@@ -105,7 +105,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
InputSearchText(
|
||||
hint: 'Busca cidadão (Por NOME ou CNS ou PRONTUÁRIO ou DATA NASCIMENTO)',
|
||||
fontSize: 20,
|
||||
fontSizeHint: 11,
|
||||
fontSizeHint: 13,
|
||||
controller: inputSearch,
|
||||
width: width*0.72,
|
||||
),
|
||||
|
||||
@@ -150,12 +150,15 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
||||
|
||||
var pickDate = await showDatePicker(
|
||||
context: context,
|
||||
locale: Locale('pt','BR'),
|
||||
initialDate: DateTime.now(),
|
||||
firstDate: DateTime(1900),
|
||||
lastDate: DateTime(2024));
|
||||
lastDate: DateTime(DateTime.now().year,12,31)
|
||||
);
|
||||
if (pickDate != null) {
|
||||
setState(() {
|
||||
if(type == 'birth'){
|
||||
|
||||
dateDB = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}';
|
||||
date = formatData(year: pickDate.year, month: pickDate.month, day: pickDate.day);
|
||||
}
|
||||
@@ -215,8 +218,10 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
||||
for(int i=0; listVillageDB.length > i;i++){
|
||||
villageDB.add('${listVillageDB[i]['NO_BAIRRO']}');
|
||||
}
|
||||
if(widget.listData[0]['NO_BAIRRO_LOGR']!=null && widget.listData[0]['NO_BAIRRO_LOGR']!='' && !villageDB.contains(widget.listData[0]['NO_BAIRRO_LOGR'])){
|
||||
villageDB.add(widget.listData[0]['NO_BAIRRO_LOGR']);
|
||||
if(widget.listData.isNotEmpty){
|
||||
if(widget.listData[0]['NO_BAIRRO_LOGR']!=null && widget.listData[0]['NO_BAIRRO_LOGR']!='' && !villageDB.contains(widget.listData[0]['NO_BAIRRO_LOGR'])){
|
||||
villageDB.add(widget.listData[0]['NO_BAIRRO_LOGR']);
|
||||
}
|
||||
}
|
||||
// print(villageDB);
|
||||
setState(() {});
|
||||
@@ -514,7 +519,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
||||
|
||||
getData()async{
|
||||
// print('passou');
|
||||
// print(widget.listData);
|
||||
// print(widget.listData[0]['ID_USUARIO_CADASTRO']);
|
||||
idCidadao = widget.listData[0]['ID_CIDADAO'];
|
||||
codSus = widget.listData[0]['CD_USUARIO_SUS'];
|
||||
nameController.text = widget.listData[0]['NOME_CIDADAO'];
|
||||
@@ -635,7 +640,12 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
||||
RGOrganController.text = widget.listData[0]['RG_ORGAO']==null?'':widget.listData[0]['RG_ORGAO'];
|
||||
RGDateController.text = widget.listData[0]['RG_DATA_EMISSAO']==null?'':widget.listData[0]['RG_DATA_EMISSAO'];
|
||||
RGDateDB = RGDateController.text;
|
||||
selectTypeCertificateCod = int.parse(widget.listData[0]['TIPO_CERTIDAO']=='' || widget.listData[0]['TIPO_CERTIDAO']==null?'0':widget.listData[0]['TIPO_CERTIDAO']);
|
||||
if(widget.listData[0]['TIPO_CERTIDAO'] is int){
|
||||
selectTypeCertificateCod = widget.listData[0]['TIPO_CERTIDAO'];
|
||||
}else{
|
||||
selectTypeCertificateCod = int.parse(widget.listData[0]['TIPO_CERTIDAO']=='' || widget.listData[0]['TIPO_CERTIDAO']==null?'0':widget.listData[0]['TIPO_CERTIDAO']);
|
||||
}
|
||||
|
||||
for(int i = 0;ConstVariable().itensCertificate.length >i;i++){
|
||||
if(ConstVariable().itensCertificate[i].cod == selectTypeCertificateCod){
|
||||
selectTypeCertificate = ConstVariable().itensCertificate[i].title;
|
||||
|
||||
@@ -129,9 +129,9 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
||||
|
||||
getUser(){
|
||||
final PrefService _prefService = PrefService();
|
||||
_prefService.readCacheIdUsername('idUsuario').then((value){
|
||||
_prefService.readCacheIDUser().then((value){
|
||||
if(value != null){
|
||||
idUsuario = value;
|
||||
idUsuario = int.parse(value);
|
||||
}
|
||||
});
|
||||
_prefService.readCacheUnidade().then((value){
|
||||
@@ -632,7 +632,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
||||
),
|
||||
SwitchWithSubtitle(
|
||||
width: width*0.7,
|
||||
title: 'Disponibilidade de Energia Elétroca',
|
||||
title: 'Disponibilidade de Energia Elétrica',
|
||||
value: DISPONIBILIDADE_ENERGIA,
|
||||
onChanged:!editing?null: (value)=>setState(()=>DISPONIBILIDADE_ENERGIA = value),
|
||||
),
|
||||
|
||||
@@ -7,6 +7,8 @@ import 'package:rkm/service/db/db_querys.dart';
|
||||
import 'package:rkm/widgets/button_default.dart';
|
||||
import 'package:rkm/widgets/text_default.dart';
|
||||
import 'package:rkm/widgets/title_containers.dart';
|
||||
import 'package:sqflite/sqflite.dart';
|
||||
import '../../service/db/db_sqlite_load.dart';
|
||||
import '../../service/db/db_sqlite_sync.dart';
|
||||
import '../../service/shared_preferences/shared_preferences_service.dart';
|
||||
import '../../widgets/alert_dialog_default.dart';
|
||||
@@ -162,9 +164,9 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
||||
final PrefService _prefService = PrefService();
|
||||
|
||||
getUser(){
|
||||
_prefService.readCacheIdUsername('idUsuario').then((value){
|
||||
_prefService.readCacheIDUser().then((value){
|
||||
if(value != null){
|
||||
idUsuario = value;
|
||||
idUsuario = int.parse(value);
|
||||
}
|
||||
});
|
||||
_prefService.readCacheUnidade().then((value){
|
||||
@@ -218,6 +220,20 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
||||
|
||||
loadCadIndividual()async{
|
||||
ID_CIDADAO = widget.listData[0]['ID_CIDADAO'];
|
||||
print(widget.listData[0]['ID_USUARIO_CADASTRO']);
|
||||
|
||||
Database db = await DbSqliteLoad().intialDB();
|
||||
// print('ID_PROFISSIONAL');
|
||||
// print(ID_PROFISSIONAL);
|
||||
var query = "SELECT ID_PROFISSIONAL FROM PROFISSIONAIS";
|
||||
// var query = "SELECT * FROM PROFISSIONAIS";
|
||||
List list = await db.rawQuery(query);
|
||||
print(list);
|
||||
// if(widget.listData[0]['ID_USUARIO_CADASTRO']!='' && widget.listData[0]['ID_USUARIO_CADASTRO']!=null){
|
||||
// await DBQuerys().buscaProfissionalCadInd(widget.listData[0]['ID_USUARIO_CADASTRO']).then((value){
|
||||
// print(value);
|
||||
// });
|
||||
// }
|
||||
|
||||
await DBQuerys().buscaCadInvidual(ID_CIDADAO).then((dataCitizen)async{
|
||||
// print(CD_USUARIO_SUS);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:rkm/screens/home_screen.dart';
|
||||
import 'package:rkm/screens/login/sync_login_screen.dart';
|
||||
import 'package:rkm/service/api/api_data_sync.dart';
|
||||
import 'package:rkm/service/db/db_sqlite_sync.dart';
|
||||
@@ -157,7 +158,7 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
||||
await DbSqliteSync().saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,area,microarea).then((value)async{
|
||||
countProg = 1;
|
||||
setState(() {});
|
||||
Navigator.pushNamed(context, '/import_sigtap');
|
||||
Navigator.pushReplacement(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: user)));
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ class ApiDataSync{
|
||||
Future syncProfissionais(urlAPI,mode,nameCityApi,user,idUnidade)async{
|
||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/profissionais
|
||||
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/profissionais';
|
||||
print(url);
|
||||
final response = await http.get(Uri.parse(url));
|
||||
final map = json.decode(response.body);
|
||||
return map;
|
||||
|
||||
@@ -167,7 +167,7 @@ class DBQuerys{
|
||||
Database db = await DbSqliteLoad().intialDB();
|
||||
var query = 'SELECT * FROM CIDADAOS WHERE NOME_CIDADAO = "$NOME_CIDADAO"';
|
||||
List list = await db.rawQuery(query);
|
||||
// print(list);
|
||||
// print(list[0]['ID_USUARIO_CADASTRO']);
|
||||
return list;
|
||||
}
|
||||
Future buscaCBOProfissional(ID_PROFISSIONAL)async{
|
||||
|
||||
@@ -168,13 +168,17 @@ class DbSqliteSync{
|
||||
return db;
|
||||
}
|
||||
Future insertCidadaos(var value,String type,String CD_USUARIO_SUS)async{
|
||||
List list = value;
|
||||
//para a carga inicial o datalista funciona
|
||||
List dataLista = value;
|
||||
//testar depois ao incluir um novo cidadao se precisara do map data
|
||||
// Map<String, dynamic> data = value;
|
||||
|
||||
List<Map<String, dynamic>> rows = [];
|
||||
Database db = await DbSqliteLoad().intialDB();
|
||||
Batch batch = db.batch();
|
||||
|
||||
if(type=='sync'){
|
||||
for (int i = 0; i < list.length; i++) {
|
||||
for (int i = 0; i < dataLista.length; i++) {
|
||||
Map<String, dynamic> row = {
|
||||
'ID_CIDADAO' : value[i]['idCidadao'],
|
||||
'CD_USUARIO_SUS' : value[i]['cdUsuarioSus'],
|
||||
|
||||
@@ -69,7 +69,7 @@ class AlertDialogSettings {
|
||||
Navigator.push(context,MaterialPageRoute(builder:(context) => SyncDataScreen(username: username,)));
|
||||
},
|
||||
title: 'Sincronia de Envio',
|
||||
body: 'Efetua a Sincronia de Envio levandoas informações\n'
|
||||
body: 'Efetua a Sincronia de Envio levando as informações\n'
|
||||
'do dispositivo para o ConectaSUS.',
|
||||
icon: Icons.send
|
||||
),
|
||||
|
||||
@@ -24,12 +24,8 @@ class AppBarDefault{
|
||||
IconButtonDefault(
|
||||
icon: Icons.logout,
|
||||
color: ColorPalette.white,
|
||||
onPressed: (){
|
||||
Navigator.push(
|
||||
context,
|
||||
MaterialPageRoute(builder: (context) => LoginSavedScreen(listControl: [])),
|
||||
);
|
||||
}),
|
||||
onPressed: ()=>Navigator.pushAndRemoveUntil(context,MaterialPageRoute(builder: (context) => LoginSavedScreen(listControl: [])),(Route<dynamic> route) => false)
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
|
||||
@@ -40,9 +40,9 @@ class InputSearchText extends StatelessWidget {
|
||||
fillColor: ColorPalette.appBar,
|
||||
prefixIcon: Icon(Icons.search),
|
||||
border: border?OutlineInputBorder():null,
|
||||
// hintText: this.hint,
|
||||
hintText: this.hint,
|
||||
hintStyle: TextStyle(
|
||||
color: Colors.black,
|
||||
color: Colors.black87,
|
||||
fontSize: this.fontSizeHint,
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user