feita a exibição dos dados dos cidadãos e a pesquisa
This commit is contained in:
@@ -1,7 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:line_icons/line_icons.dart';
|
||||||
import 'package:rkm/utils/const_variable.dart';
|
import 'package:rkm/utils/const_variable.dart';
|
||||||
import 'package:rkm/widgets/icon_button_default.dart';
|
import 'package:rkm/widgets/icon_button_default.dart';
|
||||||
import 'package:rkm/widgets/input_search_text.dart';
|
import 'package:rkm/widgets/input_search_text.dart';
|
||||||
|
import '../service/db/db_sqlite_load.dart';
|
||||||
import '../widgets/appbar_default.dart';
|
import '../widgets/appbar_default.dart';
|
||||||
import '../widgets/item_citizen.dart';
|
import '../widgets/item_citizen.dart';
|
||||||
import 'registers_citizen/main_register_citizen_screen.dart';
|
import 'registers_citizen/main_register_citizen_screen.dart';
|
||||||
@@ -16,6 +18,56 @@ class HomeScreen extends StatefulWidget {
|
|||||||
class _HomeScreenState extends State<HomeScreen> {
|
class _HomeScreenState extends State<HomeScreen> {
|
||||||
|
|
||||||
var inputSearch = TextEditingController();
|
var inputSearch = TextEditingController();
|
||||||
|
List dataCitizen = [];
|
||||||
|
List showResults = [];
|
||||||
|
|
||||||
|
loadCitizen()async{
|
||||||
|
await DbSqliteLoad().intialDB().then((db)async {
|
||||||
|
dataCitizen = await db.query('CIDADAOS ORDER BY NOME_CIDADAO');
|
||||||
|
});
|
||||||
|
searchCitizen();
|
||||||
|
return 'complete';
|
||||||
|
}
|
||||||
|
|
||||||
|
searchCitizen()async{
|
||||||
|
if(inputSearch.text.isNotEmpty){
|
||||||
|
showResults =[];
|
||||||
|
for (int i =0;dataCitizen.length>i;i++) {
|
||||||
|
String NOME_CIDADAO = dataCitizen[i]['NOME_CIDADAO'];
|
||||||
|
if(NOME_CIDADAO.startsWith(inputSearch.text.toUpperCase())){
|
||||||
|
print('ok $i');
|
||||||
|
if(showResults.length<10){
|
||||||
|
showResults.add(dataCitizen[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setState(() {
|
||||||
|
print(showResults);
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
setState(() {
|
||||||
|
for(int i = 0;i<10;i++){
|
||||||
|
showResults.add(dataCitizen[i]);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
_searchInit(){
|
||||||
|
searchCitizen();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
super.initState();
|
||||||
|
loadCitizen();
|
||||||
|
inputSearch.addListener(_searchInit);
|
||||||
|
}
|
||||||
|
@override
|
||||||
|
void dispose() {
|
||||||
|
super.dispose();
|
||||||
|
inputSearch.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@@ -28,7 +80,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
width: width,
|
width: width,
|
||||||
height: height,
|
height: height,
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
child: Column(
|
child: ListView(
|
||||||
children: [
|
children: [
|
||||||
Row(
|
Row(
|
||||||
children: [
|
children: [
|
||||||
@@ -36,7 +88,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
hint: 'Busca cidadão (Por NOME ou CNS ou PRONTUÁRIO ou DATA NASCIMENTO)',
|
hint: 'Busca cidadão (Por NOME ou CNS ou PRONTUÁRIO ou DATA NASCIMENTO)',
|
||||||
fontSize: 10,
|
fontSize: 10,
|
||||||
controller: inputSearch,
|
controller: inputSearch,
|
||||||
width: width*0.72
|
width: width*0.72,
|
||||||
),
|
),
|
||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: Icons.person_add,
|
icon: Icons.person_add,
|
||||||
@@ -50,7 +102,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
onPressed: ()=>Navigator.pushNamed(context, '/attendance_list')
|
onPressed: ()=>Navigator.pushNamed(context, '/attendance_list')
|
||||||
),
|
),
|
||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: Icons.edit_note,
|
icon: LineIcons.edit,
|
||||||
onPressed: ()=>Navigator.pushNamed(context, '/edit_procedure')
|
onPressed: ()=>Navigator.pushNamed(context, '/edit_procedure')
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@@ -58,15 +110,15 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
Container(
|
Container(
|
||||||
width: width,
|
width: width,
|
||||||
height: height*0.8,
|
height: height*0.8,
|
||||||
child: ListView.builder(
|
child: showResults.length == 0?Container():ListView.builder(
|
||||||
itemCount: 10,
|
itemCount: showResults.length,
|
||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
return ItemCitizen(
|
return ItemCitizen(
|
||||||
date: '00/00/0000',
|
date: '${showResults[index]['DT_NASCIMENTO']}',
|
||||||
name: 'JOÃO DA SILVA',
|
name: '${showResults[index]['NOME_CIDADAO']}',
|
||||||
mother: 'MARIA DA SILVA',
|
mother:'${showResults[index]['NOME_MAE']}',
|
||||||
numberCNS: '123456789',
|
numberCNS: '${showResults[index]['CNS']}'=='null'?'999999999999999':'${showResults[index]['CNS']}',
|
||||||
numberMedicalRecord: '012345',
|
numberMedicalRecord: '${showResults[index]['NUM_PRONTUARIO']}',
|
||||||
onTap: ()=> Navigator.push(
|
onTap: ()=> Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => MainRegisterCitizenScreen(screens: 3,)),
|
MaterialPageRoute(builder: (context) => MainRegisterCitizenScreen(screens: 3,)),
|
||||||
|
|||||||
@@ -107,7 +107,6 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
setState(() {
|
setState(() {
|
||||||
finish = true;
|
finish = true;
|
||||||
});
|
});
|
||||||
// Navigator.pushReplacementNamed(context, '/home');
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ import 'dart:convert';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:rkm/models/args_load_init_model.dart';
|
import 'package:rkm/models/args_load_init_model.dart';
|
||||||
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
|
import 'package:rkm/screens/login/sync_login_screen.dart';
|
||||||
import 'package:rkm/service/api/url_api_const.dart';
|
import 'package:rkm/service/api/url_api_const.dart';
|
||||||
import 'package:rkm/service/db/db_sqlite_load.dart';
|
import 'package:rkm/service/db/db_sqlite_load.dart';
|
||||||
import 'package:rkm/utils/color_palette.dart';
|
import 'package:rkm/utils/color_palette.dart';
|
||||||
@@ -17,10 +19,12 @@ import '../../service/api/encrypt_password.dart';
|
|||||||
import '../load_init_screen.dart';
|
import '../load_init_screen.dart';
|
||||||
class LoginSavedScreen extends StatefulWidget {
|
class LoginSavedScreen extends StatefulWidget {
|
||||||
List listControl;
|
List listControl;
|
||||||
|
ArgsLoadInitModel args;
|
||||||
|
|
||||||
LoginSavedScreen({
|
LoginSavedScreen({
|
||||||
required this.listControl
|
required this.listControl,
|
||||||
});
|
required this.args
|
||||||
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<LoginSavedScreen> createState() => _LoginSavedScreenState();
|
State<LoginSavedScreen> createState() => _LoginSavedScreenState();
|
||||||
@@ -32,36 +36,24 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
var inputPassword = TextEditingController();
|
var inputPassword = TextEditingController();
|
||||||
String error = '';
|
String error = '';
|
||||||
String? now;
|
String? now;
|
||||||
String? selectCity;
|
|
||||||
bool validatorDropDown= false;
|
bool validatorDropDown= false;
|
||||||
int contLogo = 0;
|
int contLogo = 0;
|
||||||
String mode = 'homologacao';
|
|
||||||
String urlAPI = UrlApiConst.ModeHomologacao;
|
|
||||||
bool loading = false;
|
bool loading = false;
|
||||||
|
|
||||||
checkLogin()async{
|
checkLogin()async{
|
||||||
CityLoadModel? model;
|
|
||||||
ArgsLoadInitModel? args;
|
ArgsLoadInitModel? args;
|
||||||
if(inputUser.text.isNotEmpty && inputPassword.text.isNotEmpty && inputUser.text.length>3 && inputPassword.text.length>3){
|
if(inputUser.text.isNotEmpty && inputPassword.text.isNotEmpty && inputUser.text.length>3 && inputPassword.text.length>3){
|
||||||
if(selectCity!=null){
|
|
||||||
setState(() {
|
setState(() {
|
||||||
error = '';
|
error = '';
|
||||||
loading = true;
|
loading = true;
|
||||||
for(int i=0;ConstVariable().itensCity.length > i;i++){
|
|
||||||
if(ConstVariable().itensCity[i].nameCityFront == selectCity!){
|
|
||||||
model = ConstVariable().itensCity[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
if(model!=null){
|
|
||||||
args = ArgsLoadInitModel(
|
args = ArgsLoadInitModel(
|
||||||
mode: mode,
|
mode: widget.args.mode,
|
||||||
model:model!,
|
model:widget.args.model,
|
||||||
user: inputUser.text,
|
user: inputUser.text,
|
||||||
password: inputPassword.text,
|
password: inputPassword.text,
|
||||||
urlAPI: urlAPI
|
urlAPI: widget.args.urlAPI
|
||||||
);
|
);
|
||||||
}
|
|
||||||
if(args!=null){
|
if(args!=null){
|
||||||
await ApiDataLoad().apiConect(args!).then((response) async {
|
await ApiDataLoad().apiConect(args!).then((response) async {
|
||||||
if(inputUser.text == inputPassword.text || response['bloqueio']==1){
|
if(inputUser.text == inputPassword.text || response['bloqueio']==1){
|
||||||
@@ -84,17 +76,12 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
});
|
});
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => LoadInitScreen(args: args!)),
|
MaterialPageRoute(builder: (context) => HomeScreen()),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}else{
|
|
||||||
setState(() {
|
|
||||||
error = 'Selecione sua cidade';
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}else{
|
}else{
|
||||||
setState(() {
|
setState(() {
|
||||||
error = 'Usuário/senha inválido(s)';
|
error = 'Usuário/senha inválido(s)';
|
||||||
@@ -102,16 +89,6 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
void initState() {
|
|
||||||
super.initState();
|
|
||||||
setState(() {
|
|
||||||
if(widget.listControl.length!=0){
|
|
||||||
mode = widget.listControl[0]['AMBIENTE'];
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
@@ -121,7 +98,21 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
centerTitle: true,
|
centerTitle: true,
|
||||||
title: TextDefault(text: 'RKM AB - Carga Inicial',fontSize: ConstVariable().fontSizeTitleAppBar,color: ColorPalette.white),
|
title: TextDefault(text: 'RKM AB - Login',fontSize: ConstVariable().fontSizeTitleAppBar,color: ColorPalette.white),
|
||||||
|
actions: [
|
||||||
|
ButtonDefault(
|
||||||
|
width: width*0.35,
|
||||||
|
borderColor: ColorPalette.appBar,
|
||||||
|
textColor: ColorPalette.white,
|
||||||
|
title: 'Sincronizar outra unidade',
|
||||||
|
onPressed: (){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder: (context) => SyncLoginScreen(args: widget.args)),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
)
|
||||||
|
],
|
||||||
),
|
),
|
||||||
body: SingleChildScrollView(
|
body: SingleChildScrollView(
|
||||||
child: Container(
|
child: Container(
|
||||||
@@ -134,8 +125,8 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
mainAxisAlignment: MainAxisAlignment.start,
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
Image.asset('assets/images/logo.PNG',width: width*0.4),
|
Image.asset('assets/images/logo.PNG',width: width*0.4),
|
||||||
mode == 'homologacao'?Image.asset('assets/images/homologacao.png',width: width*0.4):Container(),
|
widget.args.mode == 'homologacao'?Image.asset('assets/images/homologacao.png',width: width*0.4):Container(),
|
||||||
mode == 'desenvolvimento'?Image.asset('assets/images/desenvolvimento.png',width: width*0.4):Container(),
|
widget.args.mode == 'desenvolvimento'?Image.asset('assets/images/desenvolvimento.png',width: width*0.4):Container(),
|
||||||
SizedBox(height: 10),
|
SizedBox(height: 10),
|
||||||
loading?Center(
|
loading?Center(
|
||||||
child: Column(
|
child: Column(
|
||||||
@@ -197,7 +188,7 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
padding: EdgeInsets.symmetric(vertical: 5),
|
padding: EdgeInsets.symmetric(vertical: 5),
|
||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
child: TextDefault(
|
child: TextDefault(
|
||||||
text: 'Unidade: '+widget.listControl[0]['UNIDADE'].toString(),
|
text: 'Unidade: '+widget.listControl[0]['NOME_UNIDADE'].toString(),
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
|
|||||||
@@ -18,37 +18,48 @@ class SplashScreen extends StatefulWidget {
|
|||||||
|
|
||||||
class _SplashScreenState extends State<SplashScreen> {
|
class _SplashScreenState extends State<SplashScreen> {
|
||||||
|
|
||||||
|
CityLoadModel? model;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
DbSqliteLoad().intialDB();
|
DbSqliteLoad().intialDB();
|
||||||
timer();
|
final PrefService _prefService = PrefService();
|
||||||
|
_prefService.readCacheModel('user', 'password', 'city', 'mode').then((list){
|
||||||
|
for(int i=0;ConstVariable().itensCity.length > i;i++){
|
||||||
|
if(ConstVariable().itensCity[i].nameCityFront == list[2]!){
|
||||||
|
model = ConstVariable().itensCity[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
timer(list);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
timer()async{
|
timer(List list)async{
|
||||||
await DbSqliteLoad().intialDB().then((db)async{
|
await DbSqliteLoad().intialDB().then((db)async{
|
||||||
List dataControl = await db.query('MUNICIPIOS');
|
List dataControl = await db.query('MUNICIPIOS');
|
||||||
List dataCitizen = await db.query('CIDADAOS');
|
List dataCitizen = await db.query('CIDADAOS');
|
||||||
if(dataControl.length != 0){
|
if(dataControl.length != 0){
|
||||||
var query = "SELECT * FROM CONTROLE_INTERNO";
|
var query = "SELECT * FROM CONTROLE_INTERNO";
|
||||||
dataControl = await db.rawQuery(query);
|
dataControl = await db.rawQuery(query);
|
||||||
print(dataCitizen);
|
// print(dataCitizen);
|
||||||
if(dataCitizen.length != 0){
|
if(dataCitizen.length != 0){
|
||||||
|
String? url;
|
||||||
|
if(list[3]=='desenvolvimento'){
|
||||||
|
url = UrlApiConst.ApiUrlDesenvolvimento;
|
||||||
|
}else if(list[3]=='online'){
|
||||||
|
url = UrlApiConst.ApiUrlOnline;
|
||||||
|
}else if(list[3]=='homologacao'){
|
||||||
|
url = UrlApiConst.ApiUrlHomologacao;
|
||||||
|
}
|
||||||
|
ArgsLoadInitModel args = ArgsLoadInitModel(mode: list[3], model: model!, user: list[0], password: list[1], urlAPI: url!);
|
||||||
|
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => LoginSavedScreen(listControl: dataControl)),
|
MaterialPageRoute(builder: (context) => LoginSavedScreen(listControl: dataControl,args: args,)),
|
||||||
);
|
);
|
||||||
}else{
|
}else{
|
||||||
CityLoadModel? model;
|
|
||||||
String? url;
|
String? url;
|
||||||
final PrefService _prefService = PrefService();
|
|
||||||
_prefService.readCacheModel('user', 'password', 'city', 'mode').then((list){
|
|
||||||
print('list $list');
|
|
||||||
for(int i=0;ConstVariable().itensCity.length > i;i++){
|
|
||||||
if(ConstVariable().itensCity[i].nameCityFront == list[2]!){
|
|
||||||
model = ConstVariable().itensCity[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(list[3]=='desenvolvimento'){
|
if(list[3]=='desenvolvimento'){
|
||||||
url = UrlApiConst.ApiUrlDesenvolvimento;
|
url = UrlApiConst.ApiUrlDesenvolvimento;
|
||||||
}else if(list[3]=='online'){
|
}else if(list[3]=='online'){
|
||||||
@@ -63,7 +74,6 @@ class _SplashScreenState extends State<SplashScreen> {
|
|||||||
MaterialPageRoute(builder: (context) => SyncLoginScreen(args: args)),
|
MaterialPageRoute(builder: (context) => SyncLoginScreen(args: args)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
Navigator.pushReplacementNamed(context, '/login_load');
|
Navigator.pushReplacementNamed(context, '/login_load');
|
||||||
|
|||||||
@@ -122,7 +122,9 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
setState(()=> messageSteps = "Etapa 10 de 10 - Gravando os Cadastros Individuais no Aplicativo");
|
setState(()=> messageSteps = "Etapa 10 de 10 - Gravando os Cadastros Individuais no Aplicativo");
|
||||||
}
|
}
|
||||||
await DbSqliteSync().insertCadastrosIndividuais(value).then((value)async{
|
await DbSqliteSync().insertCadastrosIndividuais(value).then((value)async{
|
||||||
//agora salvar controle interno
|
await DbSqliteSync().saveSync(widget.args,idUnidade,area,microarea).then((value)async{
|
||||||
|
Navigator.pushNamed(context, '/home');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -235,7 +235,7 @@ class DbSqliteLoad{
|
|||||||
int id = await db.insert('CIAPS', row);
|
int id = await db.insert('CIAPS', row);
|
||||||
// print('id increment $id CIAPS');
|
// print('id increment $id CIAPS');
|
||||||
}
|
}
|
||||||
print(await db.query('CIAPS'));
|
// print(await db.query('CIAPS'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveCity(var value)async{
|
Future saveCity(var value)async{
|
||||||
@@ -253,7 +253,7 @@ class DbSqliteLoad{
|
|||||||
int id = await db.insert('MUNICIPIOS', row);
|
int id = await db.insert('MUNICIPIOS', row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
||||||
}
|
}
|
||||||
print(await db.query('MUNICIPIOS'));
|
// print(await db.query('MUNICIPIOS'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveTeam(var value)async{
|
Future saveTeam(var value)async{
|
||||||
@@ -273,7 +273,7 @@ class DbSqliteLoad{
|
|||||||
int id = await db.insert('EQUIPES', row);
|
int id = await db.insert('EQUIPES', row);
|
||||||
// print('id increment $id EQUIPES');
|
// print('id increment $id EQUIPES');
|
||||||
}
|
}
|
||||||
print(await db.query('EQUIPES'));
|
// print(await db.query('EQUIPES'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveTeamComponents(var value)async{
|
Future saveTeamComponents(var value)async{
|
||||||
@@ -292,25 +292,4 @@ class DbSqliteLoad{
|
|||||||
print(await db.query('PROFISSIONAIS_EQUIPE'));
|
print(await db.query('PROFISSIONAIS_EQUIPE'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveCityInit(ArgsLoadInitModel args)async{
|
|
||||||
Database db = await intialDB();
|
|
||||||
//refatorar cidade_load e nome_cidade
|
|
||||||
'parameters = [{"carga_inicial": 1, "cidade_load": cidade, "nome_cidade": vm.nomeCidade[cidade], "cidade_id": cidadeID, "estado": estado, "ibge": ibge, "ambiente": ambiente, "competencia": competencia.replace(/\D/g, '')}]';
|
|
||||||
"INSERT OR REPLACE INTO CONTROLE_INTERNO (rowid, CARGA_INICIAL, CIDADE_LOAD, NOME_CIDADE, ID_MUNICIPIO, UF_ESTADO, CODIGO_IBGE, AMBIENTE, COMPETENCIA) VALUES (1,?,?,?,?,?,?,?,?)";
|
|
||||||
|
|
||||||
Map<String, dynamic> row = {
|
|
||||||
'CARGA_INICIAL' : 1,
|
|
||||||
'CIDADE_LOAD' : args.model.nameCityApi,
|
|
||||||
'NOME_CIDADE' : args.model.nameCityFront,
|
|
||||||
'ID_MUNICIPIO' : args.model.codCity,
|
|
||||||
'UF_ESTADO' : args.model.codState,
|
|
||||||
'CODIGO_IBGE' : args.model.codCityIbge,
|
|
||||||
'AMBIENTE' : args.mode,
|
|
||||||
'ULTIMA_SINCRONIZACAO' : DateTime.now().toString(),
|
|
||||||
'COMPETENCIA' : '${DateTime.now().year}${DateTime.now().month<10?'0':''}${DateTime.now().month-1}',
|
|
||||||
};
|
|
||||||
int id = await db.insert('CONTROLE_INTERNO', row);
|
|
||||||
print(await db.query('CONTROLE_INTERNO'));
|
|
||||||
return db;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
import 'package:rkm/service/db/db_sqlite_load.dart';
|
import 'package:rkm/service/db/db_sqlite_load.dart';
|
||||||
import 'package:sqflite/sqflite.dart';
|
import 'package:sqflite/sqflite.dart';
|
||||||
|
|
||||||
|
import '../../models/args_load_init_model.dart';
|
||||||
|
|
||||||
class DbSqliteSync{
|
class DbSqliteSync{
|
||||||
|
|
||||||
Future deleteSync()async{
|
Future deleteSync()async{
|
||||||
@@ -408,8 +410,33 @@ class DbSqliteSync{
|
|||||||
};
|
};
|
||||||
int id = await db.insert('CADASTROS_INDIVIDUAIS', row);
|
int id = await db.insert('CADASTROS_INDIVIDUAIS', row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
||||||
print(await db.query('CADASTROS_INDIVIDUAIS'));
|
// print(await db.query('CADASTROS_INDIVIDUAIS'));
|
||||||
}
|
}
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
|
Future saveSync(ArgsLoadInitModel args,idUnidade,area,microarea)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
//refatorar cidade_load e nome_cidade
|
||||||
|
'parameters = [{"carga_inicial": 1, "cidade_load": cidade, "nome_cidade": vm.nomeCidade[cidade], "cidade_id": cidadeID, "estado": estado, "ibge": ibge, "ambiente": ambiente, "competencia": competencia.replace(/\D/g, '')}]';
|
||||||
|
"INSERT OR REPLACE INTO CONTROLE_INTERNO (rowid, CARGA_INICIAL, CIDADE_LOAD, NOME_CIDADE, ID_MUNICIPIO, UF_ESTADO, CODIGO_IBGE, AMBIENTE, COMPETENCIA) VALUES (1,?,?,?,?,?,?,?,?)";
|
||||||
|
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'CARGA_INICIAL' : 1,
|
||||||
|
'CIDADE_LOAD' : args.model.nameCityApi,
|
||||||
|
'NOME_CIDADE' : args.model.nameCityFront,
|
||||||
|
'ID_MUNICIPIO' : args.model.codCity,
|
||||||
|
'UF_ESTADO' : args.model.codState,
|
||||||
|
'CODIGO_IBGE' : args.model.codCityIbge,
|
||||||
|
'AMBIENTE' : args.mode,
|
||||||
|
'SYNC_UNIDADE' : idUnidade,
|
||||||
|
'NOME_UNIDADE' : args.model.nameCityFront,
|
||||||
|
'AREA' : area,
|
||||||
|
'MICROAREA' : microarea,
|
||||||
|
'ULTIMA_SINCRONIZACAO' : DateTime.now().toString(),
|
||||||
|
'COMPETENCIA' : '${DateTime.now().year}${DateTime.now().month<10?'0':''}${DateTime.now().month-1}',
|
||||||
|
};
|
||||||
|
int id = await db.insert('CONTROLE_INTERNO', row);
|
||||||
|
print(await db.query('CONTROLE_INTERNO'));
|
||||||
|
return db;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,12 +1,14 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/models/args_load_init_model.dart';
|
||||||
import 'package:rkm/widgets/alert_dialog_settings.dart';
|
import 'package:rkm/widgets/alert_dialog_settings.dart';
|
||||||
|
import '../screens/login/sync_login_screen.dart';
|
||||||
import '../utils/color_palette.dart';
|
import '../utils/color_palette.dart';
|
||||||
import 'icon_button_default.dart';
|
import 'icon_button_default.dart';
|
||||||
|
|
||||||
class AppBarDefault{
|
class AppBarDefault{
|
||||||
|
|
||||||
@override
|
@override
|
||||||
PreferredSize appbar(BuildContext context,String title) {
|
PreferredSize appbar(BuildContext context,String title,{ArgsLoadInitModel? args}) {
|
||||||
return PreferredSize(
|
return PreferredSize(
|
||||||
preferredSize: Size.fromHeight(50),
|
preferredSize: Size.fromHeight(50),
|
||||||
child: AppBar(
|
child: AppBar(
|
||||||
@@ -21,7 +23,12 @@ class AppBarDefault{
|
|||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: Icons.logout,
|
icon: Icons.logout,
|
||||||
color: ColorPalette.white,
|
color: ColorPalette.white,
|
||||||
onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/login',(Route<dynamic> route) => false)),
|
onPressed: (){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder: (context) => SyncLoginScreen(args: args!)),
|
||||||
|
);
|
||||||
|
}),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class InputSearchText extends StatelessWidget {
|
|||||||
this.fontSize = 15.0,
|
this.fontSize = 15.0,
|
||||||
this.hint = '',
|
this.hint = '',
|
||||||
this.color = ColorPalette.white,
|
this.color = ColorPalette.white,
|
||||||
this.border = true
|
this.border = true,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:line_icons/line_icons.dart';
|
||||||
import 'package:rkm/utils/color_palette.dart';
|
import 'package:rkm/utils/color_palette.dart';
|
||||||
import 'package:rkm/utils/const_variable.dart';
|
import 'package:rkm/utils/const_variable.dart';
|
||||||
import 'package:rkm/widgets/alert_dialog_default.dart';
|
import 'package:rkm/widgets/alert_dialog_default.dart';
|
||||||
@@ -30,10 +31,10 @@ class ItemCitizen extends StatelessWidget {
|
|||||||
margin: ConstVariable().marginHightInput,
|
margin: ConstVariable().marginHightInput,
|
||||||
color: ColorPalette.white,
|
color: ColorPalette.white,
|
||||||
child: ListTile(
|
child: ListTile(
|
||||||
title: TextDefault(text: name,fontWeigth: FontWeight.bold),
|
title: TextDefault(text: name,fontWeigth: FontWeight.bold,color: Colors.black54,fontSize: 18,),
|
||||||
subtitle: TextDefault(text: '$numberCNS - $numberMedicalRecord - $date - $mother',fontSize: 16),
|
subtitle: TextDefault(text: '$numberCNS - $numberMedicalRecord - $date - $mother',fontSize: 13,color: Colors.black54),
|
||||||
trailing: IconButton(
|
trailing: IconButton(
|
||||||
icon: Icon(Icons.assignment_rounded,size: 35,),
|
icon: Icon(LineIcons.clipboard,size: 35,),
|
||||||
onPressed: ()=>AlertDialogDefault().alertSelect(context),
|
onPressed: ()=>AlertDialogDefault().alertSelect(context),
|
||||||
),
|
),
|
||||||
onTap: onTap,
|
onTap: onTap,
|
||||||
|
|||||||
Reference in New Issue
Block a user