Compare commits
33 Commits
16001e629f
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4d60d86743 | ||
|
|
1d3d3941b3 | ||
|
|
7dca9d9b4e | ||
|
|
74b5acdb45 | ||
|
|
763d101162 | ||
|
|
9e63828175 | ||
|
|
0ef16f6119 | ||
|
|
22e8ae8fd3 | ||
|
|
ce2a1cf4d1 | ||
|
|
48a5a779bf | ||
|
|
612eb9da02 | ||
|
|
9bdc574b55 | ||
|
|
5b2919d292 | ||
|
|
da45452c89 | ||
|
|
6c770ef81c | ||
|
|
58fcb66022 | ||
|
|
f5abac7a70 | ||
|
|
e45e70f1e4 | ||
|
|
0cfe4e747b | ||
|
|
2e00b96a57 | ||
|
|
51711e689b | ||
|
|
8cf5569840 | ||
|
|
a94bff8ebd | ||
|
|
80ea18c486 | ||
|
|
dd5a718083 | ||
|
|
2450a76f4b | ||
|
|
cfdfb316f8 | ||
|
|
c9513ff6fd | ||
|
|
e13f73a556 | ||
|
|
5f82282c78 | ||
|
|
afb08a2363 | ||
|
|
3bb0eb0f29 | ||
|
|
857d07f053 |
34
.metadata
@@ -1,11 +1,11 @@
|
|||||||
# This file tracks properties of this Flutter project.
|
# This file tracks properties of this Flutter project.
|
||||||
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
||||||
#
|
#
|
||||||
# This file should be version controlled.
|
# This file should be version controlled and should not be manually edited.
|
||||||
|
|
||||||
version:
|
version:
|
||||||
revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
revision: "761747bfc538b5af34aa0d3fac380f1bc331ec49"
|
||||||
channel: stable
|
channel: "stable"
|
||||||
|
|
||||||
project_type: app
|
project_type: app
|
||||||
|
|
||||||
@@ -13,26 +13,26 @@ project_type: app
|
|||||||
migration:
|
migration:
|
||||||
platforms:
|
platforms:
|
||||||
- platform: root
|
- platform: root
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
- platform: android
|
- platform: android
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
- platform: ios
|
- platform: ios
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
- platform: linux
|
- platform: linux
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
- platform: macos
|
- platform: macos
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
- platform: web
|
- platform: web
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
- platform: windows
|
- platform: windows
|
||||||
create_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
create_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
base_revision: 135454af32477f815a7525073027a3ff9eff1bfd
|
base_revision: 761747bfc538b5af34aa0d3fac380f1bc331ec49
|
||||||
|
|
||||||
# User provided section
|
# User provided section
|
||||||
|
|
||||||
|
|||||||
@@ -1,29 +1,9 @@
|
|||||||
def localProperties = new Properties()
|
plugins {
|
||||||
def localPropertiesFile = rootProject.file('local.properties')
|
id "com.android.application"
|
||||||
if (localPropertiesFile.exists()) {
|
id "kotlin-android"
|
||||||
localPropertiesFile.withReader('UTF-8') { reader ->
|
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
|
||||||
localProperties.load(reader)
|
id "dev.flutter.flutter-gradle-plugin"
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
def flutterRoot = localProperties.getProperty('flutter.sdk')
|
|
||||||
if (flutterRoot == null) {
|
|
||||||
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
|
|
||||||
}
|
|
||||||
|
|
||||||
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
|
|
||||||
if (flutterVersionCode == null) {
|
|
||||||
flutterVersionCode = '1'
|
|
||||||
}
|
|
||||||
|
|
||||||
def flutterVersionName = localProperties.getProperty('flutter.versionName')
|
|
||||||
if (flutterVersionName == null) {
|
|
||||||
flutterVersionName = '1.0'
|
|
||||||
}
|
|
||||||
|
|
||||||
apply plugin: 'com.android.application'
|
|
||||||
apply plugin: 'kotlin-android'
|
|
||||||
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
|
|
||||||
|
|
||||||
def keystoreProperties = new Properties()
|
def keystoreProperties = new Properties()
|
||||||
def keystorePropertiesFile = rootProject.file('key.properties')
|
def keystorePropertiesFile = rootProject.file('key.properties')
|
||||||
@@ -31,45 +11,54 @@ if (keystorePropertiesFile.exists()) {
|
|||||||
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def localProperties = new Properties()
|
||||||
|
def localPropertiesFile = rootProject.file("local.properties")
|
||||||
|
if (localPropertiesFile.exists()) {
|
||||||
|
localPropertiesFile.withReader("UTF-8") { reader ->
|
||||||
|
localProperties.load(reader)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
def flutterVersionCode = localProperties.getProperty("flutter.versionCode")
|
||||||
|
if (flutterVersionCode == null) {
|
||||||
|
flutterVersionCode = "1"
|
||||||
|
}
|
||||||
|
|
||||||
|
def flutterVersionName = localProperties.getProperty("flutter.versionName")
|
||||||
|
if (flutterVersionName == null) {
|
||||||
|
flutterVersionName = "1.0"
|
||||||
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 33
|
namespace = "com.ab.rkm.rkm"
|
||||||
ndkVersion flutter.ndkVersion
|
compileSdk = flutter.compileSdkVersion
|
||||||
|
ndkVersion = flutter.ndkVersion
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility = JavaVersion.VERSION_1_8
|
||||||
}
|
|
||||||
|
|
||||||
kotlinOptions {
|
|
||||||
jvmTarget = '1.8'
|
|
||||||
}
|
|
||||||
|
|
||||||
sourceSets {
|
|
||||||
main.java.srcDirs += 'src/main/kotlin'
|
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.ab.rkm.rkm"
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||||
minSdkVersion 19
|
applicationId = "com.ab.rkm.rkm"
|
||||||
targetSdkVersion flutter.targetSdkVersion
|
// You can update the following values to match your application needs.
|
||||||
versionCode flutterVersionCode.toInteger()
|
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
|
||||||
versionName flutterVersionName
|
minSdk = 17
|
||||||
|
targetSdk = flutter.targetSdkVersion
|
||||||
|
versionCode = flutterVersionCode.toInteger()
|
||||||
|
versionName = flutterVersionName
|
||||||
}
|
}
|
||||||
|
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
debug {
|
release {
|
||||||
keyAlias keystoreProperties['keyAlias']
|
keyAlias keystoreProperties['keyAlias']
|
||||||
keyPassword keystoreProperties['keyPassword']
|
keyPassword keystoreProperties['keyPassword']
|
||||||
storeFile file(keystoreProperties['storeFile'])
|
storeFile file(keystoreProperties['storeFile'])
|
||||||
storePassword keystoreProperties['storePassword']
|
storePassword keystoreProperties['storePassword']
|
||||||
}
|
}
|
||||||
release {
|
|
||||||
keyAlias keystoreProperties['keyAlias']
|
|
||||||
keyPassword keystoreProperties['keyPassword']
|
|
||||||
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
|
|
||||||
storePassword keystoreProperties['storePassword']
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
minifyEnabled true
|
minifyEnabled true
|
||||||
@@ -88,9 +77,8 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
flutter {
|
flutter {
|
||||||
source '../..'
|
source = "../.."
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
package="com.ab.rkm.rkm">
|
|
||||||
<!-- The INTERNET permission is required for development. Specifically,
|
<!-- The INTERNET permission is required for development. Specifically,
|
||||||
the Flutter tool needs it to communicate with the running application
|
the Flutter tool needs it to communicate with the running application
|
||||||
to allow setting breakpoints, to provide hot reload, etc.
|
to allow setting breakpoints, to provide hot reload, etc.
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 90 KiB |
@@ -1,5 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<background android:drawable="@color/ic_launcher_background"/>
|
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
|
||||||
</adaptive-icon>
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<background android:drawable="@color/ic_launcher_background"/>
|
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
|
||||||
</adaptive-icon>
|
|
||||||
|
Before Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 7.7 KiB |
|
Before Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 9.6 KiB |
|
Before Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 24 KiB |
@@ -1,4 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<color name="ic_launcher_background">#B7E0FD</color>
|
|
||||||
</resources>
|
|
||||||
@@ -1,15 +1,15 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="com.ab.rkm.rkm">
|
package="com.ab.rkm.rkmmobile">
|
||||||
<uses-permission android:name="android.permission.INTERNET"/>
|
<uses-permission android:name="android.permission.INTERNET"/>
|
||||||
<application
|
<application
|
||||||
android:usesCleartextTraffic="true"
|
android:label="RKMAB 2.0"
|
||||||
android:label="RKM AB"
|
|
||||||
android:name="${applicationName}"
|
android:name="${applicationName}"
|
||||||
android:icon="@mipmap/ic_launcher">
|
android:icon="@mipmap/ic_launcher">
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
|
android:taskAffinity=""
|
||||||
android:theme="@style/LaunchTheme"
|
android:theme="@style/LaunchTheme"
|
||||||
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
|
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
|
||||||
android:hardwareAccelerated="true"
|
android:hardwareAccelerated="true"
|
||||||
@@ -33,4 +33,15 @@
|
|||||||
android:name="flutterEmbedding"
|
android:name="flutterEmbedding"
|
||||||
android:value="2" />
|
android:value="2" />
|
||||||
</application>
|
</application>
|
||||||
|
<!-- Required to query activities that can process text, see:
|
||||||
|
https://developer.android.com/training/package-visibility and
|
||||||
|
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
|
||||||
|
|
||||||
|
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. -->
|
||||||
|
<queries>
|
||||||
|
<intent>
|
||||||
|
<action android:name="android.intent.action.PROCESS_TEXT"/>
|
||||||
|
<data android:mimeType="text/plain"/>
|
||||||
|
</intent>
|
||||||
|
</queries>
|
||||||
</manifest>
|
</manifest>
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package com.ab.rkm.rkmmobile
|
||||||
|
|
||||||
|
import io.flutter.embedding.android.FlutterActivity
|
||||||
|
|
||||||
|
class MainActivity: FlutterActivity()
|
||||||
@@ -2,5 +2,4 @@ package com.ab.rkm.rkm
|
|||||||
|
|
||||||
import io.flutter.embedding.android.FlutterActivity
|
import io.flutter.embedding.android.FlutterActivity
|
||||||
|
|
||||||
class MainActivity: FlutterActivity() {
|
class MainActivity: FlutterActivity()
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 6.0 KiB After Width: | Height: | Size: 544 B |
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 442 B |
|
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 721 B |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 1.4 KiB |
@@ -1,5 +1,4 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
package="com.ab.rkm.rkm">
|
|
||||||
<!-- The INTERNET permission is required for development. Specifically,
|
<!-- The INTERNET permission is required for development. Specifically,
|
||||||
the Flutter tool needs it to communicate with the running application
|
the Flutter tool needs it to communicate with the running application
|
||||||
to allow setting breakpoints, to provide hot reload, etc.
|
to allow setting breakpoints, to provide hot reload, etc.
|
||||||
|
|||||||
@@ -1,20 +1,32 @@
|
|||||||
buildscript {
|
buildscript {
|
||||||
ext.kotlin_version = '1.6.10'
|
ext.kotlin_version = '1.6.10'
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
maven {
|
||||||
|
url 'https://maven.google.com/'
|
||||||
|
name 'Google'
|
||||||
|
}
|
||||||
|
maven {
|
||||||
|
url 'https://mvnrepository.com/artifact/com.android.tools.lint/lint-gradle-api'
|
||||||
|
}
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.1.3'
|
classpath 'com.android.tools.build:gradle:7.1.2'
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
allprojects {
|
allprojects {
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
maven {
|
||||||
mavenCentral()
|
url 'https://maven.google.com/'
|
||||||
|
name 'Google'
|
||||||
|
}
|
||||||
|
jcenter()
|
||||||
|
maven {
|
||||||
|
url 'https://mvnrepository.com/artifact/com.android.tools.lint/lint-gradle-api'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
|
#org.gradle.jvmargs=-Xmx4G -XX:+HeapDumpOnOutOfMemoryError
|
||||||
org.gradle.jvmargs=-Xmx1536M
|
org.gradle.jvmargs=-Xmx1536M
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
android.enableJetifier=true
|
android.enableJetifier=true
|
||||||
android.suppressUnsupportedCompileSdk=33
|
|
||||||
|
|||||||
@@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
|
|||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https://services.gradle.org/distributions/gradle-7.2-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
|
||||||
|
|||||||
@@ -1,11 +1,25 @@
|
|||||||
include ':app'
|
pluginManagement {
|
||||||
|
def flutterSdkPath = {
|
||||||
def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
|
|
||||||
def properties = new Properties()
|
def properties = new Properties()
|
||||||
|
file("local.properties").withInputStream { properties.load(it) }
|
||||||
assert localPropertiesFile.exists()
|
|
||||||
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
|
|
||||||
|
|
||||||
def flutterSdkPath = properties.getProperty("flutter.sdk")
|
def flutterSdkPath = properties.getProperty("flutter.sdk")
|
||||||
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
|
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
|
||||||
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
|
return flutterSdkPath
|
||||||
|
}()
|
||||||
|
|
||||||
|
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
google()
|
||||||
|
mavenCentral()
|
||||||
|
gradlePluginPortal()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
||||||
|
id "com.android.application" version "7.3.0" apply false
|
||||||
|
id "org.jetbrains.kotlin.android" version "1.7.10" apply false
|
||||||
|
}
|
||||||
|
|
||||||
|
include ":app"
|
||||||
|
|||||||
12
ios/RunnerTests/RunnerTests.swift
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import Flutter
|
||||||
|
import UIKit
|
||||||
|
import XCTest
|
||||||
|
|
||||||
|
class RunnerTests: XCTestCase {
|
||||||
|
|
||||||
|
func testExample() {
|
||||||
|
// If you add code to the Runner application, consider adding tests here.
|
||||||
|
// See https://developer.apple.com/documentation/xctest for more information about using XCTest.
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,20 +1,21 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rkm/models/city_load_model.dart';
|
import 'package:rkm/models/city_load_model.dart';
|
||||||
import 'package:rkm/models/drop_down_data_model.dart';
|
import 'package:rkm/models/drop_down_data_model.dart';
|
||||||
|
import '../models/check_model.dart';
|
||||||
|
import '../models/check_proced_sia_model.dart';
|
||||||
|
import '../models/pais_modelo.dart';
|
||||||
import 'color_palette.dart';
|
import 'color_palette.dart';
|
||||||
|
|
||||||
class ConstVariable{
|
class ConstVariable{
|
||||||
double radiusBorderInput = 5;
|
double radiusBorderInput = 5;
|
||||||
EdgeInsetsGeometry marginHightInput = EdgeInsets.symmetric(vertical: 5);
|
EdgeInsetsGeometry marginHightInput = EdgeInsets.symmetric(vertical: 5);
|
||||||
EdgeInsetsGeometry paddingWidth = EdgeInsets.symmetric(horizontal: 10);
|
EdgeInsetsGeometry paddingWidth = EdgeInsets.symmetric(horizontal: 10);
|
||||||
|
IconThemeData iconThemeDataDefault = IconThemeData(color: Colors.white);
|
||||||
double fontSizeInput = 15;
|
double fontSizeInput = 15;
|
||||||
double fontSizeTitleAppBar = 20;
|
double fontSizeTitleAppBar = 20;
|
||||||
List<String> RGUF = ['AC','AI','AL','AM','AN','AP','AS','BA','BY','CA','CB','CE','CH','CN','CO','DC','DF','ES','GD','GO','GU',
|
List<String> RGUF = ['AC','AL','AP','AM','BA','CE','DF','ES','GO','MA','MT','MS','MG','PA','PB','PR','PE','PI','RJ','RN','RS','RO','RR','SC','SP','SE','TO','--'];
|
||||||
'HU','IL','LA','LE','LI','LO','LT','MA','MG','MO','MS','MT','NB','NE','NW','NT','NY','OH','OU','PA','PB',
|
|
||||||
'PE','PI','PO','PR','QH','RJ','RM','RN','RO','RR','RN','RO','RR','RS','SC','SE','SF','SJ','SP','TA','TO',
|
|
||||||
'VC','XX','ZU','-','--',''];
|
|
||||||
List<String> itensProceduresStart = [
|
List<String> itensProceduresStart = [
|
||||||
'ATENDIMENTO INDIVIDUAL',
|
'ATEND. INDIVIDUAL',
|
||||||
'VISTA DOMICILIAR'
|
'VISTA DOMICILIAR'
|
||||||
];
|
];
|
||||||
List<String> listNationality =[
|
List<String> listNationality =[
|
||||||
@@ -72,87 +73,111 @@ class ConstVariable{
|
|||||||
'VISITA PERIÓDICA'
|
'VISITA PERIÓDICA'
|
||||||
];
|
];
|
||||||
|
|
||||||
List outrosModel = [
|
List<CheckModel> outrosModel = [
|
||||||
'EGRESSO DE INTERNAÇÃO',
|
CheckModel(cod: 25, subtitle: 'EGRESSO DE INTERNAÇÃO'),
|
||||||
'CONVITE ATIVIDADES COLETIVAS/CAMPANHAS DE SAÚDE',
|
CheckModel(cod: 27, subtitle: 'CONVITE ATIVIDADES COLETIVAS/CAMPANHAS DE SAÚDE'),
|
||||||
'ORIENTAÇÃO/PREVENÇÃO',
|
CheckModel(cod: 31, subtitle: 'ORIENTAÇÃO/PREVENÇÃO'),
|
||||||
'OUTROS',
|
CheckModel(cod: 28, subtitle: 'OUTROS'),
|
||||||
];
|
];
|
||||||
|
|
||||||
List tipoAcompanhamentoModel = [
|
List <CheckModel>tipoAcompanhamentoModel = [
|
||||||
'GESTANTE',
|
CheckModel(cod: 5, subtitle: 'GESTANTE'),
|
||||||
'PUÉRPERA',
|
CheckModel(cod: 6, subtitle: 'PUÉRPERA'),
|
||||||
'RECÉM-NASCIDO',
|
CheckModel(cod: 7, subtitle: 'RECÉM-NASCIDO'),
|
||||||
'CRIANÇA',
|
CheckModel(cod: 8, subtitle: 'CRIANÇA'),
|
||||||
'PESSOA COM DESNUTRIÇÃO',
|
CheckModel(cod: 9, subtitle: 'PESSOA COM DESNUTRIÇÃO'),
|
||||||
'PESSOA EM REABILITAÇÃO OU COM DEFICIÊNCIA',
|
CheckModel(cod: 10, subtitle: 'PESSOA EM REABILITAÇÃO OU COM DEFICIÊNCIA'),
|
||||||
'PESSOA COM HIPERTENSÃO',
|
CheckModel(cod: 11, subtitle: 'PESSOA COM HIPERTENSÃO'),
|
||||||
'PESSOA COM ASMA',
|
CheckModel(cod: 12, subtitle: 'PESSOA COM DIABETES'),
|
||||||
'PESSOA COM DPOC/ENFISEMA',
|
CheckModel(cod: 13, subtitle: 'PESSOA COM ASMA'),
|
||||||
'PESSOA COM CÂNCER',
|
CheckModel(cod: 14, subtitle: 'PESSOA COM DPOC/ENFISEMA'),
|
||||||
'PESSOA COM OUTRAS DOENÇAS CRÔNICAS',
|
CheckModel(cod: 15, subtitle: 'PESSOA COM CÂNCER'),
|
||||||
'PESSOA COM HANSENÍASE',
|
CheckModel(cod: 16, subtitle: 'PESSOA COM OUTRAS DOENÇAS CRÔNICAS'),
|
||||||
'PESSOA COM TUBERCULOSE',
|
CheckModel(cod: 17, subtitle: 'PESSOA COM HANSENÍASE'),
|
||||||
'SINTOMÁTICOS RESPIRATÓRIOS',
|
CheckModel(cod: 18, subtitle: 'PESSOA COM TUBERCULOSE'),
|
||||||
'TABAGISTA',
|
CheckModel(cod: 32, subtitle: 'SINTOMÁTICOS RESPIRATÓRIOS'),
|
||||||
'DOMICILIADOS/ACAMADOS',
|
CheckModel(cod: 33, subtitle: 'TABAGISTA'),
|
||||||
'CONDIÇÕES DE VULNERABILIDADE SOCIAL',
|
CheckModel(cod: 19, subtitle: 'DOMICILIADOS/ACAMADOS'),
|
||||||
'CONDIÇÃO DO BOLSA FAMÍLIA',
|
CheckModel(cod: 20, subtitle: 'CONDIÇÕES DE VULNERABILIDADE SOCIAL'),
|
||||||
'SAÚDE MENTAL',
|
CheckModel(cod: 21, subtitle: 'CONDIÇÃO DO BOLSA FAMÍLIA'),
|
||||||
'USUÁRIO DE ÁLCOOL',
|
CheckModel(cod: 22, subtitle: 'SAÚDE MENTAL'),
|
||||||
'USUÁRIO DE OUTRAS DROGAS',
|
CheckModel(cod: 23, subtitle: 'USUÁRIO DE ÁLCOOL'),
|
||||||
|
CheckModel(cod: 24, subtitle: 'USUÁRIO DE OUTRAS DROGAS'),
|
||||||
];
|
];
|
||||||
|
|
||||||
List serviceHomeCheckConditionlist = [
|
List serviceHomeCheckConditionlist = [
|
||||||
'ACAMADO',
|
'ACAMADO',
|
||||||
'DOMICILIADO',
|
'ACOMP.NUTRICIONAL',
|
||||||
'ÚLCERAS / FERIDAS (GRAU III OU IV)',
|
'ACOMP.PÓS-OPERATÓRIO',
|
||||||
'ACOMPANHAMENTO NUTRICIONAL',
|
'ACOMP.PRÉ-OPERATÓRIO',
|
||||||
'USO DE SONDA NASO-GRÁSTRICA - SNG',
|
|
||||||
'USO DE SONDA NASO-ENTERAL - SNE',
|
|
||||||
'USO DE GASTRONOMIA',
|
|
||||||
'USO DE COLOSTOMIA',
|
|
||||||
'USO DE CISTOSTOMIA',
|
|
||||||
'USO DE SONDA VESICAL DE DEMORA - SVD',
|
|
||||||
'ACOMPANHAMENTO PRÉ-OPERATÓRIO',
|
|
||||||
'ACOMPANHAMENTO PÓS-OPERATÓRIO',
|
|
||||||
'ADAPTAÇÃO AO USO DE ÓRTESE / PRÓTESE',
|
'ADAPTAÇÃO AO USO DE ÓRTESE / PRÓTESE',
|
||||||
'REABILITAÇÃO DOMICILIAR',
|
'CUIDADOS PALIATIVOS NÃO ONCOLÓGICO',
|
||||||
'CUIDADOS PALIATIVOS ONCOLÓGICO',
|
'CUIDADOS PALIATIVOS ONCOLÓGICO',
|
||||||
'CUIDADOS PALIATIVOS NÃO-ONCOLÓGICO',
|
|
||||||
'OXIGENOTERAPIA DOMICILIAR',
|
|
||||||
'USO DE TRAQUEOSTOMIA',
|
|
||||||
'USO DE ASPIRADOR DE VIAS AÉRIAS PARA HIGIENE BUCAL',
|
|
||||||
'SUPORTE VENTILATÓRIO NÃO INVASICO - CPAP',
|
|
||||||
'SUPORTE VENTILATÓRIO NÃO INVASICO - BIPAP',
|
|
||||||
'DIÁLISE PERITONIAL',
|
'DIÁLISE PERITONIAL',
|
||||||
'PARACENTESE',
|
'DOMICILIADO',
|
||||||
'MEDICAÇÃO PARENTERAL',
|
'MEDICAÇÃO PARENTERAL',
|
||||||
|
'OXIGENOTERAPIA DOMICILIAR',
|
||||||
|
'PARACENTESE',
|
||||||
|
'REABILITAÇÃO DOMICILIAR',
|
||||||
|
'SUPORTE VENTILATÓRIO NÃO INVASIVO - BIPAP',
|
||||||
|
'SUPORTE VENTILATÓRIO NÃO INVASIVO - CPAP',
|
||||||
|
'ÚLCERAS / FERIDAS (GRAU III OU IV)',
|
||||||
|
'USO DE ASPIRADOR DE VIAS AÉRIAS PARA HIGIÊNE BRÔNQUICA',
|
||||||
|
'USO DE CISTOSTOMIA',
|
||||||
|
'USO DE COLOSTOMIA',
|
||||||
|
'USO DE GASTROSTOMIA',
|
||||||
|
'USO DE SONDA NASOENTERAL - SNE',
|
||||||
|
'USO DE SONDA NASOGÁSTRICA - SNG',
|
||||||
|
'USO DE SONDA VESICAL DE DEMORA - SVD',
|
||||||
|
'USO DE TRAQUEOSTOMIA',
|
||||||
];
|
];
|
||||||
|
|
||||||
List serviceHomeCheckProclist = [
|
// List serviceHomeCheckProclist = [
|
||||||
'ACOMPANHAMENTO DE PACIENTE EM REABILITAÇÃO',
|
// 'ACOMP.DE PACIENTE EM REABILITAÇÃO EM COMUNICAÇÃO ALTERNATIVA',
|
||||||
'ENEMA',
|
// 'ADAPTAÇÃO AO USO DE ÓRTESE / PRÓTESE',
|
||||||
'ANTIBIOTICOTERAPIA PARENTERAL',
|
// 'ANTIBIOTICOTERAPIA PARENTERAL',
|
||||||
'OXIGENOTERAPIA',
|
// 'ATEND. FISIOTERAPÊUTICO PACIENTE C/ TRANST. RESP S/ COMPLICAÇÕES SISTÊMICAS',
|
||||||
'ATEND./ ACOMP. PACIENTE EM REABILITAÇÃO DO DESENVOLVIMENTO NEUROPSICOMOTOR',
|
// 'ATEND. MÉDICO COM FINALIDADE DE ATESTAR ÓBITO',
|
||||||
'RETIRADA DE PONTOS DE CIRURGIAS BÁSICAS',
|
// 'ATEND./ ACOMP. PACIENTE EM REABILITAÇÃO DO DESENVOLVIMENTO NEUROPSICOMOTOR',
|
||||||
'ATEND. FISIOTERAPÊUTICO PACIENTE C/ TRANST. RESP S/ COMPLICAÇÕES SISTÊMICAS',
|
// 'ATEND./ACOMP.EM REABILITAÇÃO NAS MÚLTIPLAS DEFICIÊNCIAS',
|
||||||
'SONDAGEM GÁSTRICA',
|
// 'CATETERISMO VESICAL DE ALÍVIO',
|
||||||
'ATENDIMENTO MÉDICO COM FINALIDADE DE ATESTAR ÓBITO',
|
// 'CATETERISMO VESICAL DE DEMORA',
|
||||||
'TERAPIA DE REIDRATAÇÃO ORAL',
|
// 'COLETA DE MATERIAL PARA EXAME LABORATORIAL',
|
||||||
'ATENDIMENTO/ACOMPANHAMENTO EM REABILITAÇÃO NAS MÚLTIPLS DEFICIÊNCIAS',
|
// 'CUIDADOS COM ESTOMAS',
|
||||||
'TERAPIA DE REIDRATAÇÃO PARENTAL',
|
// 'CUIDADOS COM TRAQUEOSTOMIA',
|
||||||
'ADAPTAÇÃO AO USO DE ÓRTESE / PRÓTESE',
|
// 'ENEMA',
|
||||||
'REABILITAÇÃO DOMICILIAR',
|
// 'OXIGENOTERAPIA',
|
||||||
'CATETERISMO VESICAL DE ALÍVIO',
|
// 'REABILITAÇÃO DOMICILIAR',
|
||||||
'TERAPIA FONOAUDIOLÓGICA INDIVIDUAL',
|
// 'RETIRADA DE PONTOS DE CIRURGIAS BÁSICAS',
|
||||||
'CATETERISMO VESICAL DE DEMORA',
|
// 'SONDAGEM GÁSTRICA',
|
||||||
'TRATAMENTO DE TRAUMATISMOS DE LOCALIZAÇÃO ESPECIF/NÃO ESPECIFICADA',
|
// 'TERAPIA DE REIDRATAÇÃO ORAL',
|
||||||
'COLETA DE MATERIAL PARA EXAME LABORATORIAL',
|
// 'TERAPIA DE REIDRATAÇÃO PARENTERAL',
|
||||||
'TRATAMENTO EM REABILITAÇÃO',
|
// 'TERAPIA FONOAUDIOLÓGICA INDIVIDUAL',
|
||||||
'CUIDADOS COM ESTOMAS',
|
// 'TRATAMENTO DE TRAUMATISMOS DE LOCALIZAÇÃO ESPECIFICADA/NÃO ESPECIFICADA',
|
||||||
'CUIDADOS COM TRAQUEOSTOMIA'
|
// 'TRATAMENTO EM REABILITAÇÃO',
|
||||||
|
// ];
|
||||||
|
|
||||||
|
List<CheckProcedSiaModel> serviceHomeCheckProclist = [
|
||||||
|
CheckProcedSiaModel(COD_SIA: 1, DESCRICAO_PROCEDIMENTO:'ACOMP.DE PACIENTE EM REABILITAÇÃO EM COMUNICAÇÃO ALTERNATIVA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 3, DESCRICAO_PROCEDIMENTO: 'ANTIBIOTICOTERAPIA PARENTERAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 7, DESCRICAO_PROCEDIMENTO:'ATEND. FISIOTERAPÊUTICO PACIENTE C/ TRANST. RESP S/ COMPLICAÇÕES SISTÊMICAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 9, DESCRICAO_PROCEDIMENTO:'ATEND. MÉDICO COM FINALIDADE DE ATESTAR ÓBITO'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 5, DESCRICAO_PROCEDIMENTO:'ATEND./ ACOMP. PACIENTE EM REABILITAÇÃO DO DESENVOLVIMENTO NEUROPSICOMOTOR'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 11, DESCRICAO_PROCEDIMENTO:'ATEND./ACOMP.EM REABILITAÇÃO NAS MÚLTIPLAS DEFICIÊNCIAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 13, DESCRICAO_PROCEDIMENTO:'CATETERISMO VESICAL DE ALÍVIO'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 15, DESCRICAO_PROCEDIMENTO:'CATETERISMO VESICAL DE DEMORA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 17, DESCRICAO_PROCEDIMENTO:'COLETA DE MATERIAL PARA EXAME LABORATORIAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 19, DESCRICAO_PROCEDIMENTO:'CUIDADOS COM ESTOMAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 20, DESCRICAO_PROCEDIMENTO:'CUIDADOS COM TRAQUEOSTOMIA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 2, DESCRICAO_PROCEDIMENTO: 'ENEMA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 4, DESCRICAO_PROCEDIMENTO:'OXIGENOTERAPIA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 6, DESCRICAO_PROCEDIMENTO:'RETIRADA DE PONTOS DE CIRURGIAS BÁSICAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 8, DESCRICAO_PROCEDIMENTO:'SONDAGEM GÁSTRICA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 10, DESCRICAO_PROCEDIMENTO:'TERAPIA DE REIDRATAÇÃO ORAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 12, DESCRICAO_PROCEDIMENTO:'TERAPIA DE REIDRATAÇÃO PARENTERAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 14, DESCRICAO_PROCEDIMENTO:'TERAPIA FONOAUDIOLÓGICA INDIVIDUAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 16, DESCRICAO_PROCEDIMENTO:'TRATAMENTO DE TRAUMATISMOS DE LOCALIZAÇÃO ESPECIFICADA/NÃO ESPECIFICADA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 18, DESCRICAO_PROCEDIMENTO:'TRATAMENTO EM REABILITAÇÃO'),
|
||||||
];
|
];
|
||||||
|
|
||||||
List<DropDownDataModel> listServicePlace = [
|
List<DropDownDataModel> listServicePlace = [
|
||||||
@@ -167,12 +192,12 @@ class ConstVariable{
|
|||||||
DropDownDataModel(cod: 9,title: 'UNIDADE PRISIONAL OU CONGÊNERES'),
|
DropDownDataModel(cod: 9,title: 'UNIDADE PRISIONAL OU CONGÊNERES'),
|
||||||
DropDownDataModel(cod: 10,title: 'UNIDADE SOCIOEDUCATIVA'),
|
DropDownDataModel(cod: 10,title: 'UNIDADE SOCIOEDUCATIVA'),
|
||||||
DropDownDataModel(cod: 11,title: 'HOSPITAL'),
|
DropDownDataModel(cod: 11,title: 'HOSPITAL'),
|
||||||
DropDownDataModel(cod: 12,title: 'UNIDADE DE PRONTO ATENDIMENTO'),
|
DropDownDataModel(cod: 12,title: 'UNIDADE DE PRONTO ATEND.'),
|
||||||
DropDownDataModel(cod: 13,title: 'CACON/UNACON'),
|
DropDownDataModel(cod: 13,title: 'CACON/UNACON'),
|
||||||
];
|
];
|
||||||
List<DropDownDataModel> typeService = [
|
List<DropDownDataModel> typeService = [
|
||||||
DropDownDataModel(cod: 7,title: 'ATENDIMENTO PROGRAMADO'),
|
DropDownDataModel(cod: 7,title: 'ATEND. PROGRAMADO'),
|
||||||
DropDownDataModel(cod: 8,title: 'ATENDIMENTO NÃO PROGRAMADO'),
|
DropDownDataModel(cod: 8,title: 'ATEND. NÃO PROGRAMADO'),
|
||||||
DropDownDataModel(cod: 9,title: 'VISITA DOMICILIAR PÓS ÓBITO'),
|
DropDownDataModel(cod: 9,title: 'VISITA DOMICILIAR PÓS ÓBITO'),
|
||||||
];
|
];
|
||||||
List<DropDownDataModel> typeModelService = [
|
List<DropDownDataModel> typeModelService = [
|
||||||
@@ -190,7 +215,7 @@ class ConstVariable{
|
|||||||
'CONSULTA AGENDADA',
|
'CONSULTA AGENDADA',
|
||||||
'DEMANDA ESPONTÂNEA - ESCUTA INICIAL/ORIENTAÇÃO',
|
'DEMANDA ESPONTÂNEA - ESCUTA INICIAL/ORIENTAÇÃO',
|
||||||
'DEMANDA ESPONTÂNEA - CONSULTA NO DIA',
|
'DEMANDA ESPONTÂNEA - CONSULTA NO DIA',
|
||||||
'DEMANDA ESPONTÂNEA - ATENDIMENTO DE EMERGÊNCIA',
|
'DEMANDA ESPONTÂNEA - ATEND. DE EMERGÊNCIA',
|
||||||
];
|
];
|
||||||
List<DropDownDataModel> listBreed = [
|
List<DropDownDataModel> listBreed = [
|
||||||
DropDownDataModel(cod: 4, title: 'AMARELA'),
|
DropDownDataModel(cod: 4, title: 'AMARELA'),
|
||||||
@@ -261,17 +286,17 @@ class ConstVariable{
|
|||||||
|
|
||||||
List<DropDownDataModel> listTypeHome = [
|
List<DropDownDataModel> listTypeHome = [
|
||||||
DropDownDataModel(cod: 1,title: 'DOMICÍLIO'),
|
DropDownDataModel(cod: 1,title: 'DOMICÍLIO'),
|
||||||
DropDownDataModel(cod: 2,title: 'COMÉRCIO'),
|
// DropDownDataModel(cod: 2,title: 'COMÉRCIO'),
|
||||||
DropDownDataModel(cod: 3,title: 'TERRENO BALDIO'),
|
// DropDownDataModel(cod: 3,title: 'TERRENO BALDIO'),
|
||||||
DropDownDataModel(cod: 4,title: 'PONTO ESTRATÉGICO'),
|
// DropDownDataModel(cod: 4,title: 'PONTO ESTRATÉGICO'),
|
||||||
DropDownDataModel(cod: 5,title: 'ESCOLA'),
|
// DropDownDataModel(cod: 5,title: 'ESCOLA'),
|
||||||
DropDownDataModel(cod: 6,title: 'CRECHE'),
|
// DropDownDataModel(cod: 6,title: 'CRECHE'),
|
||||||
DropDownDataModel(cod: 7,title: 'ABRIGO'),
|
DropDownDataModel(cod: 7,title: 'ABRIGO'),
|
||||||
DropDownDataModel(cod: 8,title: 'INSTITUIÇÃO DE LONGA PERMANÊNCIA PARA IDOSOS'),
|
DropDownDataModel(cod: 8,title: 'INSTITUIÇÃO DE LONGA PERMANÊNCIA PARA IDOSOS'),
|
||||||
DropDownDataModel(cod: 9,title: 'UNIDADE PRISIONAL'),
|
DropDownDataModel(cod: 9,title: 'UNIDADE PRISIONAL'),
|
||||||
DropDownDataModel(cod: 10,title: 'UNIDADE DE MEDIDA SOCIOEDUCATIVA'),
|
DropDownDataModel(cod: 10,title: 'UNIDADE DE MEDIDA SOCIOEDUCATIVA'),
|
||||||
DropDownDataModel(cod: 11,title: 'DELEGACIA'),
|
DropDownDataModel(cod: 11,title: 'DELEGACIA'),
|
||||||
DropDownDataModel(cod: 12,title: 'ESTABELECIMENTO RELIGIOSO'),
|
// DropDownDataModel(cod: 12,title: 'ESTABELECIMENTO RELIGIOSO'),
|
||||||
DropDownDataModel(cod: 99,title: 'OUTROS'),
|
DropDownDataModel(cod: 99,title: 'OUTROS'),
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -464,7 +489,7 @@ class ConstVariable{
|
|||||||
DropDownDataModel(cod: 4, title: 'AFONICA'),
|
DropDownDataModel(cod: 4, title: 'AFONICA'),
|
||||||
DropDownDataModel(cod: 5, title: 'AUDITIVA'),
|
DropDownDataModel(cod: 5, title: 'AUDITIVA'),
|
||||||
DropDownDataModel(cod:10, title: 'FISICA'),
|
DropDownDataModel(cod:10, title: 'FISICA'),
|
||||||
DropDownDataModel(cod: 2, title: 'IGNORADO'),
|
// DropDownDataModel(cod: 2, title: 'IGNORADO'),
|
||||||
DropDownDataModel(cod: 6, title: 'INTELECTUAL'),
|
DropDownDataModel(cod: 6, title: 'INTELECTUAL'),
|
||||||
DropDownDataModel(cod: 7, title: 'MOTORA'),
|
DropDownDataModel(cod: 7, title: 'MOTORA'),
|
||||||
DropDownDataModel(cod: 8, title: 'MULTIPLA'),
|
DropDownDataModel(cod: 8, title: 'MULTIPLA'),
|
||||||
@@ -498,6 +523,7 @@ class ConstVariable{
|
|||||||
CityLoadModel(codCity: 3473, nameCityApi: 'francodarocha', nameCityFront: 'Franco da Rocha', codState: 'SP', codCityIbge: 351640),
|
CityLoadModel(codCity: 3473, nameCityApi: 'francodarocha', nameCityFront: 'Franco da Rocha', codState: 'SP', codCityIbge: 351640),
|
||||||
CityLoadModel(codCity: 3514, nameCityApi: 'igaracudotiete', nameCityFront: 'Igaraçu do Tietê', codState: 'SP', codCityIbge: 352000),
|
CityLoadModel(codCity: 3514, nameCityApi: 'igaracudotiete', nameCityFront: 'Igaraçu do Tietê', codState: 'SP', codCityIbge: 352000),
|
||||||
CityLoadModel(codCity: 3531, nameCityApi: 'iracemapolis', nameCityFront: 'Iracemápolis', codState: 'SP', codCityIbge: 352140),
|
CityLoadModel(codCity: 3531, nameCityApi: 'iracemapolis', nameCityFront: 'Iracemápolis', codState: 'SP', codCityIbge: 352140),
|
||||||
|
CityLoadModel(codCity: 3542, nameCityApi: 'itapeva', nameCityFront: 'Itapeva', codState: 'SP', codCityIbge: 352240),
|
||||||
CityLoadModel(codCity: 3546, nameCityApi: 'itapolis', nameCityFront: 'Itápolis', codState: 'SP', codCityIbge: 352270),
|
CityLoadModel(codCity: 3546, nameCityApi: 'itapolis', nameCityFront: 'Itápolis', codState: 'SP', codCityIbge: 352270),
|
||||||
CityLoadModel(codCity: 3555, nameCityApi: 'itirapina', nameCityFront: 'Itirapina', codState: 'SP', codCityIbge: 352360),
|
CityLoadModel(codCity: 3555, nameCityApi: 'itirapina', nameCityFront: 'Itirapina', codState: 'SP', codCityIbge: 352360),
|
||||||
CityLoadModel(codCity: 3560, nameCityApi: 'ituverava', nameCityFront: 'Ituverava', codState: 'SP', codCityIbge: 352410),
|
CityLoadModel(codCity: 3560, nameCityApi: 'ituverava', nameCityFront: 'Ituverava', codState: 'SP', codCityIbge: 352410),
|
||||||
@@ -516,6 +542,249 @@ class ConstVariable{
|
|||||||
CityLoadModel(codCity: 3853, nameCityApi: 'ssgrama', nameCityFront: 'São Sebastião da Grama', codState: 'SP', codCityIbge: 355080),
|
CityLoadModel(codCity: 3853, nameCityApi: 'ssgrama', nameCityFront: 'São Sebastião da Grama', codState: 'SP', codCityIbge: 355080),
|
||||||
CityLoadModel(codCity: 3882, nameCityApi: 'tapiratiba', nameCityFront: 'Tapiratiba', codState: 'SP', codCityIbge: 355360),
|
CityLoadModel(codCity: 3882, nameCityApi: 'tapiratiba', nameCityFront: 'Tapiratiba', codState: 'SP', codCityIbge: 355360),
|
||||||
];
|
];
|
||||||
|
|
||||||
|
List<PaisModelo> paises = [
|
||||||
|
PaisModelo (ID_PAIS_RESID:1,PAIS: 'AFEGANISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 2,PAIS: 'ALBÂNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 3,PAIS: 'ARGÉLIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 4,PAIS: 'SAMOA AMERICANA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 5,PAIS: 'ANDORRA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 6,PAIS: 'ANGOLA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 7,PAIS: 'ANGUILLA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 8,PAIS: 'ANTÁRCTIDA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 9,PAIS: 'ANTIGUA E BARBUDA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 10,PAIS: 'ARGENTINA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 11,PAIS: 'ARMÊNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 12,PAIS: 'ARUBA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 14,PAIS: 'AUSTRÁLIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 15,PAIS: 'ÁUSTRIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 16,PAIS: 'AZERBEIJÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 17,PAIS: 'BAHAMAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 18,PAIS: 'BAHREIN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 20,PAIS: 'BANGLADESH'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 21, PAIS: 'BARBADOS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 23, PAIS: 'BIELO-RÚSSIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 24, PAIS: 'BÉLGICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 25, PAIS: 'BELIZE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 26, PAIS: 'BENIN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 27, PAIS: 'BERMUDA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 28, PAIS: 'BUTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 29, PAIS: 'BOLÍVIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 30, PAIS: 'BÓSNIA-HERZEGÓVINA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 31, PAIS: 'BOTSWANA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 32, PAIS: 'BOUVET, ILHA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 33, PAIS: 'BRASIL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 34, PAIS: 'TERRITÓRIO BRITÂNICO DO OCEANO ÍNDICO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 35, PAIS: 'VIRGENS BRITÂNICAS, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 36, PAIS: 'BRUNEI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 37, PAIS: 'BULGÁRIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 38, PAIS: 'BURKINA FASSO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 39, PAIS: 'MYANMAR (ANTIGA BIRMÂNIA)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 40, PAIS: 'BURUNDI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 41, PAIS: 'CAMBODJA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 42, PAIS: 'CAMARÕES'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 43, PAIS: 'CANADÁ'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 44, PAIS: 'CABO VERDE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 45, PAIS: 'CAYMAN, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 46, PAIS: 'CENTRO-AFRICANA, REPÚBLICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 47, PAIS: 'CHADE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 48, PAIS: 'CHILE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 49, PAIS: 'CHINA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 50, PAIS: 'CHRISTMAS, ILHA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 52, PAIS: 'COCOS, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 53, PAIS: 'COLÔMBIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 54, PAIS: 'COMORES'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 55, PAIS: 'CONGO, REPÚBLICA DEMOCRÁTICA DO (ANTIGO ZAIRE)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 56, PAIS: 'CONGO, REPÚBLICA DO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 57, PAIS: 'COOK, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 59, PAIS: 'COSTA RICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 60, PAIS: 'COSTA DO MARFIM'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 61, PAIS: 'CROÁCIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 62, PAIS: 'CUBA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 63, PAIS: 'CHIPRE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 64, PAIS: 'TCHECA, REPÚBLICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 65, PAIS: 'DINAMARCA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 66, PAIS: 'DJIBOUTI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 67, PAIS: 'DOMINICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 68, PAIS: 'DOMINICANA, REPÚBLICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 69, PAIS: 'TIMOR-LESTE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 70, PAIS: 'EQUADOR'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 71, PAIS: 'EGIPTO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 72, PAIS: 'EL SALVADOR'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 73, PAIS: 'GUINÉ EQUATORIAL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 74, PAIS: 'ERITRÉIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 75, PAIS: 'ESTÓNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 76, PAIS: 'ETIÓPIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 78, PAIS: 'MALVINAS, ILHAS (FALKLAND)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 79, PAIS:'FAROE, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 80, PAIS:'FIJI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 81, PAIS:'FINLÂNDIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 82, PAIS:'FRANÇA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 84, PAIS:'GUIANA FRANCESA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 85, PAIS:'POLINÉSIA FRANCESA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 86, PAIS:'TERRAS AUSTRAIS E ANTÁRTICAS FRANCESAS (TAAF)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 87, PAIS:'GABÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 88, PAIS:'GÂMBIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 90, PAIS:'GEÓRGIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 91, PAIS:'ALEMANHA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 92, PAIS:'GANA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 93, PAIS:'GIBRALTAR'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 95, PAIS:'GRÉCIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 96, PAIS:'GRONELÂNDIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 97, PAIS:'GRANADA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 98, PAIS:'GUADELOUPE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 99, PAIS:'GUAM'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 100, PAIS: 'GUATEMALA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 102, PAIS: 'GUINÉ-CONACRI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 103, PAIS: 'GUINÉ-BISSAU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 104, PAIS: 'GUIANA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 105, PAIS: 'HAITI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 106, PAIS: 'HEARD E ILHAS MCDONALD, ILHA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 107, PAIS: 'VATICANO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 108, PAIS: 'HONDURAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 109, PAIS: 'HONG KONG'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 111, PAIS: 'HUNGRIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 112, PAIS: 'ISLÂNDIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 113, PAIS: 'ÍNDIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 114, PAIS: 'INDONÉSIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 115,PAIS: 'IRÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 116,PAIS: 'IRAQUE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 117,PAIS: 'IRLANDA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 118,PAIS: 'ISRAEL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 119,PAIS: 'ITÁLIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 120,PAIS: 'JAMAICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 122,PAIS: 'JAPÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 126,PAIS: 'JORDÂNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 128,PAIS: 'CAZAQUISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 129,PAIS: 'QUÊNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 131,PAIS: 'KIRIBATI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 132,PAIS: 'COREIA, REPÚBLICA DEMOCRÁTICA DA (COREIA DO NORTE)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 133,PAIS: 'COREIA DO SUL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 134,PAIS: 'KUWEIT'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 135,PAIS: 'QUIRGUISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 136,PAIS: 'LAOS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 137,PAIS: 'LETÓNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 138,PAIS: 'LÍBANO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 139,PAIS: 'LESOTO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 140,PAIS: 'LIBÉRIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 141,PAIS: 'LÍBIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 142,PAIS: 'LIECHTENSTEIN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 143,PAIS: 'LITUÂNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 144,PAIS: 'LUXEMBURGO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 145,PAIS: 'MACAU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 146,PAIS: 'MACEDÓNIA, REPÚBLICA DA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 147,PAIS: 'MADAGÁSCAR'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 148,PAIS: 'MALAWI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 149,PAIS: 'MALÁSIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 150,PAIS: 'MALDIVAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 151,PAIS: 'MALI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 152,PAIS: 'MALTA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 154, PAIS: 'MARSHALL, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 155, PAIS: 'MARTINICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 156, PAIS: 'MAURITÂNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 157, PAIS: 'MAURÍCIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 158, PAIS: 'MAYOTTE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 159, PAIS: 'MÉXICO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 160, PAIS: 'MICRONÉSIA, ESTADOS FEDERADOS DA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 163, PAIS: 'MOLDÁVIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 164, PAIS: 'MÔNACO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 165, PAIS: 'MONGÓLIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 167, PAIS: 'MONTSERRAT'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 168, PAIS: 'MARROCOS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 169, PAIS: 'MOÇAMBIQUE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 171, PAIS: 'NAMÍBIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 172, PAIS: 'NAURU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 174, PAIS: 'NEPAL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 175, PAIS: 'PAÍSES BAIXOS (HOLANDA)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 176, PAIS: 'ANTILHAS HOLANDESAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 177, PAIS: 'NOVA CALEDÔNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 178, PAIS: 'NOVA ZELÂNDIA (AOTEAROA)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 179, PAIS: 'NICARÁGUA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 180, PAIS: 'NÍGER'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 181, PAIS: 'NIGÉRIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 182, PAIS: 'NIUE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 183, PAIS: 'NORFOLK, ILHA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 184, PAIS: 'MARIANAS SETENTRIONAIS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 185, PAIS: 'NORUEGA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 186, PAIS: 'OMAN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 187, PAIS: 'PAQUISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 188, PAIS: 'PALAU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 190, PAIS: 'PANAMÁ'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 191, PAIS: 'PAPUA-NOVA GUINÉ'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 193,PAIS: 'PARAGUAI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 194,PAIS: 'PERU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 195,PAIS: 'FILIPINAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 196,PAIS: 'PITCAIRN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 197,PAIS: 'POLÔNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 198,PAIS: 'PORTUGAL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 199,PAIS: 'PORTO RICO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 200,PAIS: 'QATAR'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 201,PAIS: 'REUNIÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 202,PAIS: 'ROMÊNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 203,PAIS: 'RÚSSIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 204,PAIS: 'RUANDA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 205,PAIS: 'SANTA HELENA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 206,PAIS: 'SÃO CRISTÓVÃO E NÉVIS (SAINT KITTS E NEVIS)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 207,PAIS: 'SANTA LÚCIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 208,PAIS: 'SAINT PIERRE ET MIQUELON'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 209,PAIS: 'SÃO VICENTE E GRANADINAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 210,PAIS: 'SAMOA (SAMOA OCIDENTAL)'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 211,PAIS: 'SAN MARINO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 212,PAIS: 'SÃO TOMÉ E PRÍNCIPE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 213,PAIS: 'ARÁBIA SAUDITA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 214,PAIS: 'SENEGAL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 217,PAIS: 'SEYCHELLES'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 218,PAIS: 'SERRA LEOA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 219,PAIS: 'SINGAPURA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 220,PAIS: 'ESLOVÁQUIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 221,PAIS: 'ESLOVÉNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 222,PAIS: 'SALOMÃO, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 223, PAIS: 'SOMÁLIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 224, PAIS: 'ÁFRICA DO SUL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 225, PAIS: 'GEÓRGIA DO SUL E SANDWICH DO SUL, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 226, PAIS: 'ESPANHA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 228, PAIS: 'SRI LANKA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 229, PAIS: 'SUDÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 230, PAIS: 'SURINAME'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 231, PAIS: 'SVALBARD E JAN MAYEN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 232, PAIS: 'SUAZILÂNDIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 233, PAIS: 'SUÉCIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 234, PAIS: 'SUÍÇA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 235, PAIS: 'SÍRIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 236, PAIS: 'TAIWAN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 237, PAIS: 'TAJIQUISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 238, PAIS: 'TANZÂNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 239, PAIS: 'TAILÂNDIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 240, PAIS: 'TOGO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 241, PAIS: 'TOQUELAU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 242, PAIS: 'TONGA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 243, PAIS: 'TRINDADE E TOBAGO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 245, PAIS: 'TUNÍSIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 246, PAIS: 'TURQUIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 247, PAIS: 'TURQUEMENISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 248, PAIS: 'TURKS E CAICOS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 249, PAIS: 'TUVALU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 250, PAIS: 'UGANDA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 251, PAIS: 'UCRÂNIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 252, PAIS: 'EMIRATOS ÁRABES UNIDOS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 253, PAIS: 'REINO UNIDO DA GRÃ-BRETANHA E IRLANDA DO NORTE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 254, PAIS: 'ESTADOS UNIDOS DA AMÉRICA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 255, PAIS: 'MENORES DISTANTES DOS ESTADOS UNIDOS, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 256, PAIS: 'URUGUAI'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 257, PAIS: 'UZBEQUISTÃO'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 258,PAIS: 'VANUATU'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 259,PAIS: 'VENEZUELA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 260,PAIS: 'VIETNÃ'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 261,PAIS: 'VIRGENS AMERICANAS, ILHAS'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 265,PAIS: 'WALLIS E FUTUNA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 267,PAIS: 'SAARA OCIDENTAL'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 270,PAIS: 'IÉMEN'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 273,PAIS: 'ZÂMBIA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 274,PAIS: 'ZIMBABWE'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 275,PAIS: 'PALESTINA'),
|
||||||
|
PaisModelo (ID_PAIS_RESID: 276,PAIS: 'OUTROS'),
|
||||||
|
];
|
||||||
|
|
||||||
var backgroundGradient = BoxDecoration(
|
var backgroundGradient = BoxDecoration(
|
||||||
gradient: LinearGradient(
|
gradient: LinearGradient(
|
||||||
begin: Alignment.topCenter,
|
begin: Alignment.topCenter,
|
||||||
|
|||||||
@@ -1,35 +1,11 @@
|
|||||||
import 'package:rkm/screens/configurations/about_screen.dart';
|
import 'package:rkm/screens/configurations/about_screen.dart';
|
||||||
import 'package:rkm/screens/attendance_list_screen.dart';
|
|
||||||
import 'package:rkm/screens/home_screen.dart';
|
|
||||||
import 'package:rkm/screens/select_service/eligibility_assessment_screen.dart';
|
|
||||||
import 'package:rkm/screens/splash_screen.dart';
|
import 'package:rkm/screens/splash_screen.dart';
|
||||||
import '../screens/configurations/clear_data_screen.dart';
|
import '../screens/configurations/clear_data_screen.dart';
|
||||||
import '../screens/edit_procedures_screen.dart';
|
|
||||||
import '../screens/configurations/import_sigtap_screen.dart';
|
|
||||||
import '../screens/login/login_load_screen.dart';
|
import '../screens/login/login_load_screen.dart';
|
||||||
import '../screens/configurations/main_procedures_screen.dart';
|
import '../screens/configurations/sync_data_screen.dart';
|
||||||
import '../screens/select_service/complementary_sheet_screen.dart';
|
|
||||||
import '../screens/select_service/consumption_markers_screen.dart';
|
|
||||||
import '../screens/select_service/procedures_screen.dart';
|
|
||||||
import '../screens/select_service/service_dental_screen.dart';
|
|
||||||
import '../screens/select_service/service_individual_screen.dart';
|
|
||||||
import '../screens/configurations/sinc_data_screen.dart';
|
|
||||||
|
|
||||||
var routes = {
|
var routes = {
|
||||||
'/home': (context) => HomeScreen(),
|
|
||||||
'/login_load': (context) => LoginLoadScreen(),
|
'/login_load': (context) => LoginLoadScreen(),
|
||||||
'/attendance_list': (context) => AttendanceListScreen(),
|
|
||||||
'/about': (context) => AboutScreen(),
|
'/about': (context) => AboutScreen(),
|
||||||
'/main_procedures': (context) => MainProceduresScreen(),
|
|
||||||
'/sinc_data': (context) => SincDataScreen(),
|
|
||||||
'/clear_data': (context) => ClearDataScreen(),
|
|
||||||
'/import_sigtap': (context) => ImportSigtapScreen(),
|
|
||||||
'/edit_procedure': (context) => EditProceduresScreen(),
|
|
||||||
'/splash': (context) => SplashScreen(),
|
'/splash': (context) => SplashScreen(),
|
||||||
'/service_individual': (context) => ServiceIndividualScreen(),
|
|
||||||
'/service_dental': (context) => ServiceDentalScreen(),
|
|
||||||
'/eligibility_assessment': (context) => EligibilityAssessmentScreen(),
|
|
||||||
'/complementary_sheet': (context) => ComplementarySheetScreen(),
|
|
||||||
'/consumption_markers': (context) => ConsumptionMarkersScreen(),
|
|
||||||
'/procedures': (context) => ProceduresScreen(),
|
|
||||||
};
|
};
|
||||||
@@ -2,8 +2,7 @@ import 'package:flutter/services.dart';
|
|||||||
|
|
||||||
class FormatText extends TextInputFormatter{
|
class FormatText extends TextInputFormatter{
|
||||||
@override
|
@override
|
||||||
TextEditingValue formatEditUpdate(
|
TextEditingValue formatEditUpdate(TextEditingValue txtOdl,TextEditingValue txtNew){
|
||||||
TextEditingValue txtOdl,TextEditingValue txtNew){
|
|
||||||
return txtNew.copyWith(text: txtNew.text.toUpperCase());
|
return txtNew.copyWith(text: txtNew.text.toUpperCase());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -9,8 +9,12 @@ class MainControllers{
|
|||||||
var senha = senhaDigitada.toUpperCase();
|
var senha = senhaDigitada.toUpperCase();
|
||||||
// Faz a criptografia da senha inserida
|
// Faz a criptografia da senha inserida
|
||||||
String senhaMD5 = grHashString(GRCryptoType.md5, senha);
|
String senhaMD5 = grHashString(GRCryptoType.md5, senha);
|
||||||
|
print('senhaMD5');
|
||||||
|
print(senhaMD5);
|
||||||
// Retira o tipo (1, 2 ou 3) da senha do Usuário
|
// Retira o tipo (1, 2 ou 3) da senha do Usuário
|
||||||
int tipo = int.parse(senhaUsuario.substring(0, 1));
|
int tipo = int.parse(senhaUsuario.substring(0, 1));
|
||||||
|
|
||||||
|
print('tipo $tipo');
|
||||||
// Define a possição inicial da quebra da senha
|
// Define a possição inicial da quebra da senha
|
||||||
int posicaoInicialMin = 0;
|
int posicaoInicialMin = 0;
|
||||||
int posicaoInicialMax= 0;
|
int posicaoInicialMax= 0;
|
||||||
@@ -35,10 +39,17 @@ class MainControllers{
|
|||||||
}
|
}
|
||||||
|
|
||||||
String inicio = senhaMD5.substring(posicaoInicialMin, posicaoInicialMax);
|
String inicio = senhaMD5.substring(posicaoInicialMin, posicaoInicialMax);
|
||||||
|
print('inicio');
|
||||||
|
print(inicio);
|
||||||
String fim = senhaMD5.substring(posicaoFinalMin, posicaoFinalMax);
|
String fim = senhaMD5.substring(posicaoFinalMin, posicaoFinalMax);
|
||||||
|
|
||||||
|
print('fim');
|
||||||
|
print(fim);
|
||||||
|
|
||||||
// Faz a criptografia e concatena ela com sha1 e md5
|
// Faz a criptografia e concatena ela com sha1 e md5
|
||||||
String senhaCriptogradafa = tipo.toString() + '\$'+ grHashString(GRCryptoType.sha1, inicio + senha + fim);
|
String senhaCriptogradafa = tipo.toString() + '\$'+ grHashString(GRCryptoType.sha1, inicio + senha + fim);
|
||||||
|
print('senhaCriptogradafa');
|
||||||
|
print(senhaCriptogradafa);
|
||||||
// Retorna a senha criptografada
|
// Retorna a senha criptografada
|
||||||
return senhaCriptogradafa;
|
return senhaCriptogradafa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,13 @@
|
|||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/services.dart';
|
||||||
|
import 'package:flutter_localizations/flutter_localizations.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/routes.dart';
|
import 'package:rkm/config/routes.dart';
|
||||||
|
|
||||||
|
|
||||||
|
//Cadastro e edição do Cadastro do Cidadão, Cadastro Individual, Cadastro Domiciliar e Visita Domiciliar
|
||||||
|
|
||||||
class PostHttpOverrides extends HttpOverrides{
|
class PostHttpOverrides extends HttpOverrides{
|
||||||
@override
|
@override
|
||||||
HttpClient createHttpClient( context){
|
HttpClient createHttpClient( context){
|
||||||
@@ -12,15 +17,27 @@ class PostHttpOverrides extends HttpOverrides{
|
|||||||
}
|
}
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
|
WidgetsFlutterBinding.ensureInitialized();
|
||||||
|
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
|
||||||
HttpOverrides.global = new PostHttpOverrides();
|
HttpOverrides.global = new PostHttpOverrides();
|
||||||
runApp(const MyApp());
|
runApp(const MyApp());
|
||||||
}
|
}
|
||||||
|
|
||||||
class MyApp extends StatelessWidget {
|
class MyApp extends StatelessWidget {
|
||||||
const MyApp({super.key});
|
const MyApp({super.key});
|
||||||
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return MaterialApp(
|
return MaterialApp(
|
||||||
|
locale: const Locale('pt'),
|
||||||
|
localizationsDelegates: [
|
||||||
|
GlobalMaterialLocalizations.delegate,
|
||||||
|
GlobalCupertinoLocalizations.delegate,
|
||||||
|
GlobalWidgetsLocalizations.delegate,
|
||||||
|
],
|
||||||
|
supportedLocales: [
|
||||||
|
const Locale('pt', 'BR'),
|
||||||
|
],
|
||||||
theme: ThemeData(
|
theme: ThemeData(
|
||||||
primaryColor: ColorPalette.primary,
|
primaryColor: ColorPalette.primary,
|
||||||
appBarTheme: AppBarTheme(
|
appBarTheme: AppBarTheme(
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
class CheckModel{
|
class CheckModel{
|
||||||
|
int cod;
|
||||||
String subtitle;
|
String subtitle;
|
||||||
bool check;
|
bool check;
|
||||||
|
|
||||||
CheckModel({
|
CheckModel({
|
||||||
|
required this.cod,
|
||||||
required this.subtitle,
|
required this.subtitle,
|
||||||
required this.check
|
this.check = false
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
11
lib/models/check_proced_sia_model.dart
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
class CheckProcedSiaModel{
|
||||||
|
int COD_SIA;
|
||||||
|
String DESCRICAO_PROCEDIMENTO;
|
||||||
|
bool check;
|
||||||
|
|
||||||
|
CheckProcedSiaModel({
|
||||||
|
required this.COD_SIA,
|
||||||
|
required this.DESCRICAO_PROCEDIMENTO,
|
||||||
|
this.check = false,
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -6,5 +6,17 @@ class DropDownDataStringModel{
|
|||||||
required this.cod,
|
required this.cod,
|
||||||
required this.title
|
required this.title
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) =>
|
||||||
|
identical(this, other) ||
|
||||||
|
other is DropDownDataStringModel &&
|
||||||
|
runtimeType == other.runtimeType &&
|
||||||
|
cod == other.cod &&
|
||||||
|
title == other.title;
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => cod.hashCode ^ title.hashCode;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
11
lib/models/equipe_cidadao.dart
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
class EquipeCidadao{
|
||||||
|
String DESCRICAO;
|
||||||
|
var ID_MICROAREA_CIDADAO;
|
||||||
|
var ID_AREA_CIDADAO;
|
||||||
|
|
||||||
|
EquipeCidadao({
|
||||||
|
required this.DESCRICAO,
|
||||||
|
required this.ID_MICROAREA_CIDADAO,
|
||||||
|
required this.ID_AREA_CIDADAO,
|
||||||
|
});
|
||||||
|
}
|
||||||
23
lib/models/equipe_modelo.dart
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
class EquipeModelo{
|
||||||
|
int ID_EQUIPE;
|
||||||
|
int ID_UNIDADE;
|
||||||
|
String INE;
|
||||||
|
int AREA;
|
||||||
|
var ID_ATB_MICROAREA;
|
||||||
|
int ID_ATB_AREA;
|
||||||
|
var MICROAREA;
|
||||||
|
int ID_PROFISSIONAL;
|
||||||
|
int ATIVO;
|
||||||
|
|
||||||
|
EquipeModelo({
|
||||||
|
required this.ID_EQUIPE,
|
||||||
|
required this.ID_UNIDADE,
|
||||||
|
required this.INE,
|
||||||
|
required this.AREA,
|
||||||
|
required this.ID_ATB_MICROAREA,
|
||||||
|
required this.ID_ATB_AREA,
|
||||||
|
required this.MICROAREA,
|
||||||
|
required this.ID_PROFISSIONAL,
|
||||||
|
required this.ATIVO,
|
||||||
|
});
|
||||||
|
}
|
||||||
9
lib/models/pais_modelo.dart
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
class PaisModelo{
|
||||||
|
int ID_PAIS_RESID;
|
||||||
|
String PAIS;
|
||||||
|
|
||||||
|
PaisModelo({
|
||||||
|
required this.ID_PAIS_RESID,
|
||||||
|
required this.PAIS,
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,64 +1,84 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
|
import 'package:rkm/screens/registers_citizen/register_citizen_screen.dart';
|
||||||
|
import 'package:rkm/screens/select_service/atendimento_domiciliar_tela.dart';
|
||||||
|
import 'package:rkm/screens/select_service/visita_domiciliar_tela.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import 'package:sqflite/sqflite.dart';
|
||||||
|
import '../service/db/db_querys.dart';
|
||||||
|
import '../service/db/db_sqlite_load.dart';
|
||||||
import '../widgets/appbar_default.dart';
|
import '../widgets/appbar_default.dart';
|
||||||
|
import '../widgets/button_default.dart';
|
||||||
|
|
||||||
class AttendanceListScreen extends StatefulWidget {
|
class AttendanceListScreen extends StatefulWidget {
|
||||||
const AttendanceListScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
|
||||||
|
AttendanceListScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<AttendanceListScreen> createState() => _AttendanceListScreenState();
|
State<AttendanceListScreen> createState() => _AttendanceListScreenState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _AttendanceListScreenState extends State<AttendanceListScreen> {
|
class _AttendanceListScreenState extends State<AttendanceListScreen> {
|
||||||
|
|
||||||
|
List atendimentoDomiciliarLista = [];
|
||||||
|
List visitaDomiciliarLista = [];
|
||||||
|
List cadastroCidadaoLista = [];
|
||||||
|
List cadastrosIndividuais = [];
|
||||||
|
|
||||||
|
getData()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
// visitHome = await db.query('VISITAS_DOMICILIARES');
|
||||||
|
visitaDomiciliarLista =await db.rawQuery('''
|
||||||
|
SELECT VD.*, C.*, VD.SINCRONIZADO
|
||||||
|
FROM VISITAS_DOMICILIARES VD
|
||||||
|
INNER JOIN CIDADAOS C ON VD.ID_CIDADAO = C.ID_CIDADAO
|
||||||
|
WHERE VD.SINCRONIZADO = "N"
|
||||||
|
''');
|
||||||
|
cadastroCidadaoLista = await db.query('CIDADAOS WHERE SINCRONIZADO = "N"');
|
||||||
|
cadastrosIndividuais = await db.query('CADASTROS_INDIVIDUAIS WHERE SINCRONIZADO = "N"');
|
||||||
|
atendimentoDomiciliarLista =await db.rawQuery('''
|
||||||
|
SELECT AD.*, C.*, AD.SINCRONIZADO
|
||||||
|
FROM ATENDIMENTOS_DOMICILIARES AD
|
||||||
|
INNER JOIN CIDADAOS C ON AD.ID_CIDADAO = C.ID_CIDADAO
|
||||||
|
''');
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
super.initState();
|
||||||
|
getData();
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
double altura = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Lista Atendimentos'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Lista Atendimentos',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: double.infinity,
|
height: altura,
|
||||||
child: ListView(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
|
width: double.infinity,
|
||||||
padding: ConstVariable().marginHightInput,
|
padding: ConstVariable().marginHightInput,
|
||||||
color: ColorPalette.white,
|
color: ColorPalette.white,
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
TextDefault(
|
TextDefault(
|
||||||
text: 'Atendimentos Domiciliares: 0 | Atendimento Individuais: 0',
|
text: 'Atendimentos Domiciliares: ${atendimentoDomiciliarLista.length} | Visitas Domiciliares: ${visitaDomiciliarLista.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
text: 'Atendimentos Odontológicos: 0 | Avaliação Elegibilidade: 0',
|
text: 'Cadastros Cidadãos Realizados / Atualizados : ${cadastroCidadaoLista.length + cadastrosIndividuais.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
|
||||||
color: ColorPalette.black54,
|
|
||||||
fontSize: 18,
|
|
||||||
),
|
|
||||||
TextDefault(
|
|
||||||
text: 'Cadastros Cidadãos Realizados / Atualizados : 0',
|
|
||||||
fontWeigth: FontWeight.bold,
|
|
||||||
color: ColorPalette.black54,
|
|
||||||
fontSize: 18,
|
|
||||||
),
|
|
||||||
TextDefault(
|
|
||||||
text: 'Fichas Complementares: 0 | Marcadores de Consumo : 0',
|
|
||||||
fontWeigth: FontWeight.bold,
|
|
||||||
color: ColorPalette.black54,
|
|
||||||
fontSize: 18,
|
|
||||||
),
|
|
||||||
TextDefault(
|
|
||||||
text: 'Procedimentos Consolidados: 0 | Procedimentos Individuais : 0',
|
|
||||||
fontWeigth: FontWeight.bold,
|
|
||||||
color: ColorPalette.black54,
|
|
||||||
fontSize: 18,
|
|
||||||
),
|
|
||||||
TextDefault(
|
|
||||||
text: 'Visitas Domiciliares: 0',
|
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
@@ -66,6 +86,353 @@ class _AttendanceListScreenState extends State<AttendanceListScreen> {
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
Container(
|
||||||
|
height: altura*0.88,
|
||||||
|
child: ListView(
|
||||||
|
children: [
|
||||||
|
atendimentoDomiciliarLista.isEmpty?Container():Container(
|
||||||
|
height: atendimentoDomiciliarLista.length*80,
|
||||||
|
child: ListView.builder(
|
||||||
|
physics: NeverScrollableScrollPhysics(),
|
||||||
|
itemCount: atendimentoDomiciliarLista.length,
|
||||||
|
itemBuilder: (context,i_ad){
|
||||||
|
|
||||||
|
List dataList = atendimentoDomiciliarLista[i_ad]['DATA'].toString().split('-');
|
||||||
|
String data = '${dataList[2]}/${dataList[1]}/${dataList[0]}';
|
||||||
|
|
||||||
|
return Card(
|
||||||
|
color: Colors.white,
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
height: 70,
|
||||||
|
width: 50,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Color(0XFF666666),
|
||||||
|
borderRadius: BorderRadius.only(bottomLeft: Radius.circular(10),topLeft: Radius.circular(10))
|
||||||
|
),
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: TextDefault(text: 'A.D.',color: Colors.white,fontSize: 22,fontWeigth: FontWeight.bold,),
|
||||||
|
),
|
||||||
|
SizedBox(width: 10,),
|
||||||
|
Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
TextDefault(text:atendimentoDomiciliarLista[i_ad]['NOME_CIDADAO'].toString(),color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
TextDefault(text:'DATA ATENDIMENTO: $data',color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
SizedBox(width: 20,),
|
||||||
|
TextDefault(text:'SINCRONIZADO : ${atendimentoDomiciliarLista[i_ad]['SINCRONIZADO']}',color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Spacer(),
|
||||||
|
atendimentoDomiciliarLista[i_ad]['SINCRONIZADO']!='S'?IconButton(
|
||||||
|
icon: Container(
|
||||||
|
padding: EdgeInsets.all(8.0),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Color(0XFF990000),
|
||||||
|
borderRadius: BorderRadius.circular(50),
|
||||||
|
),
|
||||||
|
child: Icon(Icons.delete, color: Colors.white, size: 40,),
|
||||||
|
),
|
||||||
|
onPressed: ()async{
|
||||||
|
await showDialog(
|
||||||
|
context: context,
|
||||||
|
builder: (context){
|
||||||
|
return AlertDialog(
|
||||||
|
title: TextDefault(text: 'Aviso',color: ColorPalette.black54,textAlign: TextAlign.center,),
|
||||||
|
content: TextDefault(text: 'Deseja apagar esse "Atendimento Domiciliar" ?',color: ColorPalette.black54,),
|
||||||
|
actions: [
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: ()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
await db.delete(
|
||||||
|
'ATENDS_DOM_COMPL',
|
||||||
|
where: 'ID_ATENDIMENTO_DOMICILIAR = ?',
|
||||||
|
whereArgs: [atendimentoDomiciliarLista[i_ad]['ID_ATENDIMENTO_DOMICILIAR']],
|
||||||
|
);
|
||||||
|
await db.delete(
|
||||||
|
'ATENDS_DOM_PROC',
|
||||||
|
where: 'ID_ATENDIMENTO_DOMICILIAR = ?',
|
||||||
|
whereArgs: [atendimentoDomiciliarLista[i_ad]['ID_ATENDIMENTO_DOMICILIAR']],
|
||||||
|
);
|
||||||
|
await db.delete(
|
||||||
|
'ATENDIMENTOS_DOMICILIARES',
|
||||||
|
where: 'ID_ATENDIMENTO_DOMICILIAR = ?',
|
||||||
|
whereArgs: [atendimentoDomiciliarLista[i_ad]['ID_ATENDIMENTO_DOMICILIAR']],
|
||||||
|
);
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
getData();
|
||||||
|
},
|
||||||
|
title: 'Sim',
|
||||||
|
background: ColorPalette.appBar,
|
||||||
|
borderColor: ColorPalette.appBar,
|
||||||
|
textColor: ColorPalette.white,
|
||||||
|
),
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: ()=>Navigator.of(context).pop(false),
|
||||||
|
title: 'Não',
|
||||||
|
background: ColorPalette.white,
|
||||||
|
borderColor: ColorPalette.white,
|
||||||
|
textColor: ColorPalette.black54,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
},
|
||||||
|
):Container(),
|
||||||
|
atendimentoDomiciliarLista[i_ad]['SINCRONIZADO']!='S'?IconButton(
|
||||||
|
icon: Container(
|
||||||
|
padding: EdgeInsets.all(8.0),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.orangeAccent,
|
||||||
|
borderRadius: BorderRadius.circular(50),
|
||||||
|
),
|
||||||
|
child: Icon(Icons.edit, color: Colors.white, size: 40,),
|
||||||
|
),
|
||||||
|
onPressed: (){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => AtendimentoDomiciliarTela(name: atendimentoDomiciliarLista[i_ad]['NOME_CIDADAO'],username: widget.username,dados: atendimentoDomiciliarLista[i_ad],)),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
):Container(),
|
||||||
|
],
|
||||||
|
));
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
visitaDomiciliarLista.isEmpty?Container():Container(
|
||||||
|
height: visitaDomiciliarLista.length*80,
|
||||||
|
child: ListView.builder(
|
||||||
|
physics: NeverScrollableScrollPhysics(),
|
||||||
|
itemCount: visitaDomiciliarLista.length,
|
||||||
|
itemBuilder: (context,i_vd){
|
||||||
|
|
||||||
|
//print(visitHome[i]);
|
||||||
|
List dataList = visitaDomiciliarLista[i_vd]['DT_ATENDIMENTO'].toString().split('-');
|
||||||
|
String data = '${dataList[2]}/${dataList[1]}/${dataList[0]}';
|
||||||
|
|
||||||
|
return Card(
|
||||||
|
color: Colors.white,
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
height: 70,
|
||||||
|
width: 50,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Color(0XFF006633),
|
||||||
|
borderRadius: BorderRadius.only(bottomLeft: Radius.circular(10),topLeft: Radius.circular(10))
|
||||||
|
),
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: TextDefault(text: 'V.D.',color: Colors.white,fontSize: 22,fontWeigth: FontWeight.bold,),
|
||||||
|
),
|
||||||
|
SizedBox(width: 10,),
|
||||||
|
Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
TextDefault(text:visitaDomiciliarLista[i_vd]['NOME_CIDADAO'].toString(),color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
TextDefault(text:'DATA ATENDIMENTO: $data',color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
SizedBox(width: 20,),
|
||||||
|
TextDefault(text:'SINCRONIZADO : ${visitaDomiciliarLista[i_vd]['SINCRONIZADO']}',color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Spacer(),
|
||||||
|
visitaDomiciliarLista[i_vd]['SINCRONIZADO']!='S'?IconButton(
|
||||||
|
icon: Container(
|
||||||
|
padding: EdgeInsets.all(8.0),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Color(0XFF990000),
|
||||||
|
borderRadius: BorderRadius.circular(50),
|
||||||
|
),
|
||||||
|
child: Icon(Icons.delete, color: Colors.white, size: 40,),
|
||||||
|
),
|
||||||
|
onPressed: ()async{
|
||||||
|
await showDialog(
|
||||||
|
context: context,
|
||||||
|
builder: (context){
|
||||||
|
return AlertDialog(
|
||||||
|
title: TextDefault(text: 'Aviso',color: ColorPalette.black54,textAlign: TextAlign.center,),
|
||||||
|
content: TextDefault(text: 'Deseja apagar essa "Visita Domiciliar" ?',color: ColorPalette.black54,),
|
||||||
|
actions: [
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: ()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
await db.delete(
|
||||||
|
'VISITAS_DOMICILIARES_COMPL',
|
||||||
|
where: 'ID_VISITA_DOMICILIAR = ?',
|
||||||
|
whereArgs: [visitaDomiciliarLista[i_vd]['ID_VISITA_DOMICILIAR']],
|
||||||
|
);
|
||||||
|
await db.delete(
|
||||||
|
'VISITAS_DOMICILIARES',
|
||||||
|
where: 'ID_VISITA_DOMICILIAR = ?',
|
||||||
|
whereArgs: [visitaDomiciliarLista[i_vd]['ID_VISITA_DOMICILIAR']],
|
||||||
|
);
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
getData();
|
||||||
|
},
|
||||||
|
title: 'Sim',
|
||||||
|
background: ColorPalette.appBar,
|
||||||
|
borderColor: ColorPalette.appBar,
|
||||||
|
textColor: ColorPalette.white,
|
||||||
|
),
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: ()=>Navigator.of(context).pop(false),
|
||||||
|
title: 'Não',
|
||||||
|
background: ColorPalette.white,
|
||||||
|
borderColor: ColorPalette.white,
|
||||||
|
textColor: ColorPalette.black54,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
},
|
||||||
|
):Container(),
|
||||||
|
visitaDomiciliarLista[i_vd]['SINCRONIZADO']!='S'?IconButton(
|
||||||
|
icon: Container(
|
||||||
|
padding: EdgeInsets.all(8.0),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.orangeAccent,
|
||||||
|
borderRadius: BorderRadius.circular(50),
|
||||||
|
),
|
||||||
|
child: Icon(Icons.edit, color: Colors.white, size: 40,),
|
||||||
|
),
|
||||||
|
onPressed: (){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => VisitaDomiciliarTela(name: visitaDomiciliarLista[i_vd]['NOME_CIDADAO'],username: widget.username,dados: visitaDomiciliarLista[i_vd],)),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
):Container(),
|
||||||
|
],
|
||||||
|
));
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
cadastroCidadaoLista.isEmpty?Container():Container(
|
||||||
|
height: cadastroCidadaoLista.length*80,
|
||||||
|
child: ListView.builder(
|
||||||
|
physics: NeverScrollableScrollPhysics(),
|
||||||
|
itemCount: cadastroCidadaoLista.length,
|
||||||
|
itemBuilder: (context,i_c){
|
||||||
|
|
||||||
|
List dataList1 = cadastroCidadaoLista[i_c]['DT_HORA_CADASTRO'].toString().split(' ');
|
||||||
|
List dataList2 = dataList1[0].split('-');
|
||||||
|
String data = '${dataList2[2]}/${dataList2[1]}/${dataList2[0]}';
|
||||||
|
|
||||||
|
return Card(
|
||||||
|
color: Colors.white,
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
height: 70,
|
||||||
|
width: 50,
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Color(0XFF990000),
|
||||||
|
borderRadius: BorderRadius.only(bottomLeft: Radius.circular(10),topLeft: Radius.circular(10))
|
||||||
|
),
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: TextDefault(text: 'C',color: Colors.white,fontSize: 22,fontWeigth: FontWeight.bold,),
|
||||||
|
),
|
||||||
|
SizedBox(width: 10,),
|
||||||
|
Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
TextDefault(text:cadastroCidadaoLista[i_c]['NOME_CIDADAO'].toString(),color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
TextDefault(text:'DATA CADASTRO : $data',color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
SizedBox(width: 20,),
|
||||||
|
TextDefault(text:'SINCRONIZADO : ${cadastroCidadaoLista[i_c]['SINCRONIZADO']}',color: ColorPalette.black54,fontWeigth: FontWeight.w700,),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Spacer(),
|
||||||
|
cadastroCidadaoLista[i_c]['ORIGEM']=='C' && cadastroCidadaoLista[i_c]['SINCRONIZADO']=='N'
|
||||||
|
?IconButton(
|
||||||
|
icon: Container(
|
||||||
|
padding: EdgeInsets.all(8.0),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Color(0XFF990000),
|
||||||
|
borderRadius: BorderRadius.circular(50),
|
||||||
|
),
|
||||||
|
child: Icon(Icons.delete, color: Colors.white, size: 40,),
|
||||||
|
),
|
||||||
|
onPressed: ()async{
|
||||||
|
await showDialog(
|
||||||
|
context: context,
|
||||||
|
builder: (context){
|
||||||
|
return AlertDialog(
|
||||||
|
title: TextDefault(text: 'Aviso',color: ColorPalette.black54,textAlign: TextAlign.center,),
|
||||||
|
content: TextDefault(text: 'Deseja apagar esse cidadão?',color: ColorPalette.black54,),
|
||||||
|
actions: [
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: ()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
await db.delete(
|
||||||
|
'CIDADAOS', // Substitua pelo nome da sua tabela
|
||||||
|
where: 'ID_CIDADAO = ?',
|
||||||
|
whereArgs: [cadastroCidadaoLista[i_c]['ID_CIDADAO']],
|
||||||
|
);
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
getData();
|
||||||
|
},
|
||||||
|
title: 'Sim',
|
||||||
|
background: ColorPalette.appBar,
|
||||||
|
borderColor: ColorPalette.appBar,
|
||||||
|
textColor: ColorPalette.white,
|
||||||
|
),
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: ()=>Navigator.of(context).pop(false),
|
||||||
|
title: 'Não',
|
||||||
|
background: ColorPalette.white,
|
||||||
|
borderColor: ColorPalette.white,
|
||||||
|
textColor: ColorPalette.black54,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
},
|
||||||
|
)
|
||||||
|
:Container(),
|
||||||
|
cadastroCidadaoLista[i_c]['SINCRONIZADO']=='N'?IconButton(
|
||||||
|
icon: Container(
|
||||||
|
padding: EdgeInsets.all(8.0),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.orangeAccent,
|
||||||
|
borderRadius: BorderRadius.circular(50),
|
||||||
|
),
|
||||||
|
child: Icon(Icons.edit, color: Colors.white, size: 40,),
|
||||||
|
),
|
||||||
|
onPressed: ()async {
|
||||||
|
await DBQuerys().buscaCidadao(cadastroCidadaoLista[i_c]['NOME_CIDADAO']).then((list){
|
||||||
|
// print(showResults[index]['CD_USUARIO_SUS']);
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => RegisterCitizenScreen(listData: list,username: widget.username,)),
|
||||||
|
);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
):Container(),
|
||||||
|
],
|
||||||
|
));
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,14 +1,15 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/service/db/db_sqlite_sync.dart';
|
import 'package:rkm/service/db/db_sqlite_sync.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
|
||||||
import '../../service/db/db_sqlite_load.dart';
|
import '../../service/db/db_sqlite_load.dart';
|
||||||
import '../../service/shared_preferences/shared_preferences_service.dart';
|
import '../../service/shared_preferences/shared_preferences_service.dart';
|
||||||
import '../../config/color_palette.dart';
|
import '../../config/color_palette.dart';
|
||||||
import '../../widgets/text_default.dart';
|
import '../../widgets/text_default.dart';
|
||||||
|
|
||||||
class ClearDataScreen extends StatefulWidget {
|
class ClearDataScreen extends StatefulWidget {
|
||||||
const ClearDataScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
ClearDataScreen({Key? key, required this.username}) : super(key: key);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ClearDataScreen> createState() => _ClearDataScreenState();
|
State<ClearDataScreen> createState() => _ClearDataScreenState();
|
||||||
@@ -48,7 +49,7 @@ class _ClearDataScreenState extends State<ClearDataScreen> {
|
|||||||
textColor: ColorPalette.white,
|
textColor: ColorPalette.white,
|
||||||
background: ColorPalette.appBar,
|
background: ColorPalette.appBar,
|
||||||
borderColor: ColorPalette.appBar,
|
borderColor: ColorPalette.appBar,
|
||||||
onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/home', (Route<dynamic> route) => false),
|
onPressed: ()=>Navigator.pushAndRemoveUntil(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: widget.username)), (Route<dynamic> route) => false),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@@ -91,7 +92,7 @@ class _ClearDataScreenState extends State<ClearDataScreen> {
|
|||||||
onPressed: ()async{
|
onPressed: ()async{
|
||||||
await DbSqliteLoad().deleteLoad().then((_)async {
|
await DbSqliteLoad().deleteLoad().then((_)async {
|
||||||
await DbSqliteSync().deleteSync().then((_){
|
await DbSqliteSync().deleteSync().then((_){
|
||||||
Navigator.pushReplacementNamed(context, '/splash');
|
Navigator.pushNamedAndRemoveUntil(context, '/splash', (Route<dynamic> route) => false);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -8,7 +8,9 @@ import '../../widgets/button_default.dart';
|
|||||||
import '../../widgets/text_default.dart';
|
import '../../widgets/text_default.dart';
|
||||||
|
|
||||||
class ImportSigtapScreen extends StatefulWidget {
|
class ImportSigtapScreen extends StatefulWidget {
|
||||||
const ImportSigtapScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
|
||||||
|
ImportSigtapScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ImportSigtapScreen> createState() => _ImportSigtapScreenState();
|
State<ImportSigtapScreen> createState() => _ImportSigtapScreenState();
|
||||||
@@ -46,22 +48,101 @@ class _ImportSigtapScreenState extends State<ImportSigtapScreen> {
|
|||||||
stage = "Etapa 1 de 4 - Importando informações do CONECTASUS";
|
stage = "Etapa 1 de 4 - Importando informações do CONECTASUS";
|
||||||
});
|
});
|
||||||
await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((valueAPI)async{
|
await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((valueAPI)async{
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
|
List<dynamic> procedimentos = valueAPI['procedimentos'];
|
||||||
|
print(procedimentos);
|
||||||
|
if(procedimentos.isNotEmpty){
|
||||||
|
for(int i=0;procedimentos.length > i;i++){
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'COD_PROC_SIGTAP' : procedimentos[i]['codProcedimento'],
|
||||||
|
'DESC_PROC_SIGTAP' : procedimentos[i]['nome'],
|
||||||
|
'GRUPO_PROC_SIGTAP' : procedimentos[i]['codGrupo'],
|
||||||
|
'QTDE_MAXIMA' : procedimentos[i]['qtdeMax'],
|
||||||
|
'IDADE_MIN' : procedimentos[i]['idadeMin'],
|
||||||
|
'IDADE_MAX' : procedimentos[i]['idadeMax'],
|
||||||
|
'SEXO' : procedimentos[i]['sexo'],
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteSigtap().saveProceduresSigtapDB(rows).then((value)async{
|
||||||
setState(() {
|
setState(() {
|
||||||
stage = "Etapa 2 de 4 - Gravando os Procedimentos no Aplicativo";
|
stage = "Etapa 2 de 4 - Gravando os Procedimentos no Aplicativo";
|
||||||
});
|
});
|
||||||
// print(valueAPI['procedimentos']);
|
List<Map<String, dynamic>> rows = [];
|
||||||
await DbSqliteSigtap().saveProceduresSigtapDB(valueAPI['procedimentos']).then((value)async{
|
List list = valueAPI['procedimentosRegistros'];
|
||||||
await DbSqliteSigtap().saveProceduresRegisterSigtapDB(valueAPI['procedimentosRegistros']).then((value)async{
|
if(list.isNotEmpty) {
|
||||||
|
for (int i = 0; list.length > i; i++) {
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'COD_PROC_SIGTAP': list[i]['codProcedimento'],
|
||||||
|
'CODIGO_REGISTRO': list[i]['codRegistro'],
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteSigtap().saveProceduresRegisterSigtapDB(rows).then((value)async{
|
||||||
setState(() {
|
setState(() {
|
||||||
stage = "Etapa 3 de 4 - Gravando os CIDs no Aplicativo";
|
stage = "Etapa 3 de 4 - Gravando os CIDs no Aplicativo";
|
||||||
});
|
});
|
||||||
await DbSqliteSigtap().saveSigtapCID(valueAPI['CID']).then((value)async{
|
List<Map<String, dynamic>> rows = [];
|
||||||
await DbSqliteSigtap().saveProceduresSigtapCID(valueAPI['procedimentosCID']).then((value)async{
|
List list = valueAPI['CID'];
|
||||||
|
if(list.isNotEmpty) {
|
||||||
|
for (int i = 0; list.length > i; i++) {
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'CODIGO_CID' : list[i]['codCID'],
|
||||||
|
'DESCRICAO_CID' : list[i]['descCID'],
|
||||||
|
'RESTRICAO_SEXO' : list[i]['restSexo'],
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteSigtap().saveSigtapCID(rows).then((value)async{
|
||||||
setState(() {
|
setState(() {
|
||||||
stage = "Etapa 4 de 4 - Gravando os CIDs no Aplicativo";
|
stage = "Etapa 4 de 4 - Gravando os CIDs no Aplicativo";
|
||||||
});
|
});
|
||||||
await DbSqliteSigtap().saveCBOSigtap(valueAPI['CBO']).then((value)async{
|
List<Map<String, dynamic>> rows = [];
|
||||||
await DbSqliteSigtap().saveProceduresCBOSigtap(valueAPI['procedimentosCBO']).then((value)async{
|
List list = valueAPI['procedimentosCID'];
|
||||||
|
if(list.isNotEmpty) {
|
||||||
|
for (int i = 0; list.length > i; i++) {
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
|
||||||
|
'CODIGO_CID' : list[i]['codCID'],
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteSigtap().saveProceduresSigtapCID(rows).then((value)async{
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
|
List list = valueAPI['CBO'];
|
||||||
|
if(list.isNotEmpty) {
|
||||||
|
for (int i = 0; list.length > i; i++) {
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'CODIGO_CBO' : list[i]['codCBO'],
|
||||||
|
'DESCRICAO_CBO' : list[i]['descCBO'],
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteSigtap().saveCBOSigtap(rows).then((value)async{
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
|
List list = valueAPI['procedimentosCBO'];
|
||||||
|
if(list.isNotEmpty) {
|
||||||
|
for (int i = 0; list.length > i; i++) {
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
|
||||||
|
'CODIGO_CBO' : list[i]['codCBO'],
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteSigtap().saveProceduresCBOSigtap(rows).then((value)async{
|
||||||
await DbSqliteSigtap().saveSyncSigtap(valueAPI['competencia']).then((value)async{
|
await DbSqliteSigtap().saveSyncSigtap(valueAPI['competencia']).then((value)async{
|
||||||
setState(() {
|
setState(() {
|
||||||
finish = true;
|
finish = true;
|
||||||
@@ -95,7 +176,7 @@ class _ImportSigtapScreenState extends State<ImportSigtapScreen> {
|
|||||||
onPressed: (){
|
onPressed: (){
|
||||||
Navigator.pushReplacement(
|
Navigator.pushReplacement(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => HomeScreen()),
|
MaterialPageRoute(builder: (context) => HomeScreen(username: widget.username,)),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
title: 'Continuar',
|
title: 'Continuar',
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ import '../../widgets/text_default.dart';
|
|||||||
import '../../widgets/title_containers.dart';
|
import '../../widgets/title_containers.dart';
|
||||||
|
|
||||||
class MainProceduresScreen extends StatefulWidget {
|
class MainProceduresScreen extends StatefulWidget {
|
||||||
const MainProceduresScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
MainProceduresScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<MainProceduresScreen> createState() => _MainProceduresScreenState();
|
State<MainProceduresScreen> createState() => _MainProceduresScreenState();
|
||||||
@@ -179,7 +180,7 @@ class _MainProceduresScreenState extends State<MainProceduresScreen> {
|
|||||||
double height = MediaQuery.of(context).size.height;
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos Iniciais'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos Iniciais',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
padding: EdgeInsets.all(10),
|
padding: EdgeInsets.all(10),
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
|
|||||||
@@ -1,45 +0,0 @@
|
|||||||
{
|
|
||||||
"competencia":"202303",
|
|
||||||
"procedimentos":[
|
|
||||||
{
|
|
||||||
"codProcedimento":"0101010010",
|
|
||||||
"nome":"ATIVIDADE EDUCATIVA \/ ORIENTA\u00c7\u00c3O EM GRUPO NA ATEN\u00c7\u00c3O PRIM\u00c1RIA",
|
|
||||||
"codGrupo":"01",
|
|
||||||
"qtdeMax":9999,
|
|
||||||
"idadeMin":833,
|
|
||||||
"idadeMax":833,
|
|
||||||
"sexo":"N"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"procedimentosRegistros":[
|
|
||||||
{
|
|
||||||
"codProcedimento":"0101010010",
|
|
||||||
"codRegistro":"01"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"CID":[
|
|
||||||
{
|
|
||||||
"codCID":"A000",
|
|
||||||
"descCID":"A00.0 Colera dev Vibrio cholerae 01 biot cholerae",
|
|
||||||
"restSexo":"5"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"procedimentosCID":[
|
|
||||||
{
|
|
||||||
"codProcedimento":"0201010046",
|
|
||||||
"codCID":"C211"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"CBO":[
|
|
||||||
{
|
|
||||||
"codCBO":"223208",
|
|
||||||
"descCBO":"Cirurgi\u00e3o dentista - cl\u00ednico geral"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"procedimentosCBO":[
|
|
||||||
{
|
|
||||||
"codProcedimento":"0101010010",
|
|
||||||
"codCBO":"223208"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/service/db/db_querys.dart';
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
import '../../config/color_palette.dart';
|
import '../../config/color_palette.dart';
|
||||||
@@ -7,14 +8,15 @@ import '../../service/db/db_sqlite_load.dart';
|
|||||||
import '../../service/db/db_sqlite_sync.dart';
|
import '../../service/db/db_sqlite_sync.dart';
|
||||||
import '../../widgets/text_default.dart';
|
import '../../widgets/text_default.dart';
|
||||||
|
|
||||||
class SincDataScreen extends StatefulWidget {
|
class SyncDataScreen extends StatefulWidget {
|
||||||
const SincDataScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
SyncDataScreen({Key? key,required this.username}) : super(key: key);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<SincDataScreen> createState() => _SincDataScreenState();
|
State<SyncDataScreen> createState() => _SyncDataScreenState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _SincDataScreenState extends State<SincDataScreen> {
|
class _SyncDataScreenState extends State<SyncDataScreen> {
|
||||||
|
|
||||||
String mode ='';
|
String mode ='';
|
||||||
String urlAPI ='';
|
String urlAPI ='';
|
||||||
@@ -63,14 +65,25 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
});
|
});
|
||||||
await DBQuerys().cadCidadaos().then((response)async{
|
await DBQuerys().cadCidadaos().then((response)async{
|
||||||
tableCIDADAOS = response;
|
tableCIDADAOS = response;
|
||||||
|
// print(list);
|
||||||
|
// tableCIDADAOS[0].forEach((key, value) {
|
||||||
|
// print('$key: $value');
|
||||||
|
// });
|
||||||
await DBQuerys().cadDomiciliares().then((response)async{
|
await DBQuerys().cadDomiciliares().then((response)async{
|
||||||
tableCIDADAO_DOMICILIO = response;
|
tableCIDADAO_DOMICILIO = response;
|
||||||
|
// tableCIDADAO_DOMICILIO[0].forEach((key, value) {
|
||||||
|
// print('$key: $value');
|
||||||
|
// });
|
||||||
|
|
||||||
|
// print('tableCIDADAO_DOMICILIO');
|
||||||
// print(tableCIDADAO_DOMICILIO);
|
// print(tableCIDADAO_DOMICILIO);
|
||||||
await DBQuerys().domCidadaos().then((response)async{
|
await DBQuerys().domCidadaos().then((response)async{
|
||||||
tableDOMICILIOS_CIDADAOS = response;
|
tableDOMICILIOS_CIDADAOS = response;
|
||||||
|
// print('tableDOMICILIOS_CIDADAOS');
|
||||||
// print(tableDOMICILIOS_CIDADAOS);
|
// print(tableDOMICILIOS_CIDADAOS);
|
||||||
await DBQuerys().logrDomicilios().then((response)async{
|
await DBQuerys().logrDomicilios().then((response)async{
|
||||||
tableINNERJOINCIDADAO_DOMICILIO = response;
|
tableINNERJOINCIDADAO_DOMICILIO = response;
|
||||||
|
// print('tableINNERJOINCIDADAO_DOMICILIO');
|
||||||
// print(tableINNERJOINCIDADAO_DOMICILIO);
|
// print(tableINNERJOINCIDADAO_DOMICILIO);
|
||||||
await DBQuerys().cadIndividuais().then((response)async{
|
await DBQuerys().cadIndividuais().then((response)async{
|
||||||
tableCADASTROS_INDIVIDUAIS = response;
|
tableCADASTROS_INDIVIDUAIS = response;
|
||||||
@@ -118,13 +131,13 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
// print(tableFICHAS_COMPLEMENTARES);
|
// print(tableFICHAS_COMPLEMENTARES);
|
||||||
await DBQuerys().atendimentosDomiciliares().then((response)async{
|
await DBQuerys().atendimentosDomiciliares().then((response)async{
|
||||||
tableATENDIMENTOS_DOMICILIARES = response;
|
tableATENDIMENTOS_DOMICILIARES = response;
|
||||||
print(tableATENDIMENTOS_DOMICILIARES);
|
// print(tableATENDIMENTOS_DOMICILIARES);
|
||||||
await DBQuerys().atendDomCompl().then((response)async{
|
await DBQuerys().atendDomCompl().then((response)async{
|
||||||
tableATENDS_DOM_COMPL = response;
|
tableATENDS_DOM_COMPL = response;
|
||||||
print(tableATENDS_DOM_COMPL);
|
// print(tableATENDS_DOM_COMPL);
|
||||||
await DBQuerys().atendDomProcsFicha().then((response)async{
|
await DBQuerys().atendDomProcsFicha().then((response)async{
|
||||||
tableATENDS_DOM_PROC = response;
|
tableATENDS_DOM_PROC = response;
|
||||||
print(tableATENDS_DOM_PROC);
|
// print(tableATENDS_DOM_PROC);
|
||||||
await DBQuerys().atendDomProcsSigtap().then((response)async{
|
await DBQuerys().atendDomProcsSigtap().then((response)async{
|
||||||
tableATENDS_DOM_SIGTAP = response;
|
tableATENDS_DOM_SIGTAP = response;
|
||||||
// print(tableATENDS_DOM_SIGTAP);
|
// print(tableATENDS_DOM_SIGTAP);
|
||||||
@@ -228,6 +241,21 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
'aval_eleg_concl_ine': tableAVAL_ELEG_CONCL_INE,
|
'aval_eleg_concl_ine': tableAVAL_ELEG_CONCL_INE,
|
||||||
'avaliacao_elegibilidade': tableAVALIACOES_ELEGIBILIDADE,
|
'avaliacao_elegibilidade': tableAVALIACOES_ELEGIBILIDADE,
|
||||||
};
|
};
|
||||||
|
// print(map['cidadaos'][0]['DT_HORA_CADASTRO']);
|
||||||
|
// print(map['cidadaos'][0]['POSSUI_VEICULO']);
|
||||||
|
// print(map['cidadaos'][0]['MODELO_VEICULO']);
|
||||||
|
// print(map['cidadaos'][0]['ANO_VEICULO']);
|
||||||
|
// print(map['cidadaos'][0]['CD_USUARIO_SUS']);
|
||||||
|
// print(map['cidadaos'][0]['RENDA_MENSAL']);
|
||||||
|
// print(map['cad_individuais'][0]['FIBROMIALGIA']);
|
||||||
|
// print(map['cad_individuais'][0]['TRANSTORNO_ESPECTRO_AUTISTA']);
|
||||||
|
// print(map['cad_individuais'][0]['CNES_RESP_CADASTRO']);
|
||||||
|
// print(map['cad_individuais'][0]['ID_AREA_CIDADAO']);
|
||||||
|
// print(map['cad_individuais'][0]['ID_MICROAREA_CIDADAO']);
|
||||||
|
|
||||||
|
print('tableATENDS_DOM_PROC');
|
||||||
|
print(tableATENDS_DOM_PROC);
|
||||||
|
|
||||||
await ApiDataPost().sincronizacao(urlAPI, mode, nameCityApi,map).then((response)async{
|
await ApiDataPost().sincronizacao(urlAPI, mode, nameCityApi,map).then((response)async{
|
||||||
if(response=='error'){
|
if(response=='error'){
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -251,6 +279,9 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
mode = list[0]['MODE'];
|
mode = list[0]['MODE'];
|
||||||
nameCityApi = list[0]['NAME_CITY_API'];
|
nameCityApi = list[0]['NAME_CITY_API'];
|
||||||
});
|
});
|
||||||
|
print(urlAPI);
|
||||||
|
print(mode);
|
||||||
|
print(nameCityApi);
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -285,7 +316,7 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
textColor: ColorPalette.white,
|
textColor: ColorPalette.white,
|
||||||
background: ColorPalette.appBar,
|
background: ColorPalette.appBar,
|
||||||
borderColor: ColorPalette.appBar,
|
borderColor: ColorPalette.appBar,
|
||||||
onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/home', (Route<dynamic> route) => false),
|
onPressed: ()=>Navigator.pushAndRemoveUntil(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: widget.username)), (Route<dynamic> route) => false),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@@ -340,27 +371,27 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
// TextDefault(
|
||||||
text: 'Atendimento Individuais: ${tableATENDS_INDIVIDUAIS==null?'0':tableATENDS_INDIVIDUAIS.length}',
|
// text: 'Atendimento Individuais: ${tableATENDS_INDIVIDUAIS==null?'0':tableATENDS_INDIVIDUAIS.length}',
|
||||||
textAlign: TextAlign.center,
|
// textAlign: TextAlign.center,
|
||||||
fontWeigth: FontWeight.bold,
|
// fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
// color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
// fontSize: 18,
|
||||||
),
|
// ),
|
||||||
TextDefault(
|
// TextDefault(
|
||||||
textAlign: TextAlign.center,
|
// textAlign: TextAlign.center,
|
||||||
text: 'Atendimentos Odontológicos: ${tableATENDS_ODONTOLOGICOS==null?'0':tableATENDS_ODONTOLOGICOS.length}',
|
// text: 'Atendimentos Odontológicos: ${tableATENDS_ODONTOLOGICOS==null?'0':tableATENDS_ODONTOLOGICOS.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
// fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
// color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
// fontSize: 18,
|
||||||
),
|
// ),
|
||||||
TextDefault(
|
// TextDefault(
|
||||||
textAlign: TextAlign.center,
|
// textAlign: TextAlign.center,
|
||||||
text: 'Avaliação Elegibilidade: ${tableAVALIACOES_ELEGIBILIDADE==null?'0':tableAVALIACOES_ELEGIBILIDADE.length}',
|
// text: 'Avaliação Elegibilidade: ${tableAVALIACOES_ELEGIBILIDADE==null?'0':tableAVALIACOES_ELEGIBILIDADE.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
// fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
// color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
// fontSize: 18,
|
||||||
),
|
// ),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Cadastros Cidadãos Realizados / Atualizados : ${tableCIDADAOS==null?'0':tableCIDADAOS.length}',
|
text: 'Cadastros Cidadãos Realizados / Atualizados : ${tableCIDADAOS==null?'0':tableCIDADAOS.length}',
|
||||||
@@ -368,35 +399,34 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
// TextDefault(
|
||||||
textAlign: TextAlign.center,
|
// textAlign: TextAlign.center,
|
||||||
text: 'Fichas Complementares: ${tableFICHAS_COMPLEMENTARES==null?'0':tableFICHAS_COMPLEMENTARES.length}',
|
// text: 'Fichas Complementares: ${tableFICHAS_COMPLEMENTARES==null?'0':tableFICHAS_COMPLEMENTARES.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
// fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
// color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
// fontSize: 18,
|
||||||
),
|
// ),
|
||||||
TextDefault(
|
// TextDefault(
|
||||||
textAlign: TextAlign.center,
|
// textAlign: TextAlign.center,
|
||||||
text: 'Marcadores de Consumo : ${tableMARCADORES_CONSUMO==null?'0':tableMARCADORES_CONSUMO.length}',
|
// text: 'Marcadores de Consumo : ${tableMARCADORES_CONSUMO==null?'0':tableMARCADORES_CONSUMO.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
// fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
// color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
// fontSize: 18,
|
||||||
),
|
// ),
|
||||||
TextDefault(
|
// TextDefault(
|
||||||
textAlign: TextAlign.center,
|
// textAlign: TextAlign.center,
|
||||||
//aqui verificar de qual tela seria esses dados
|
// text: 'Procedimentos Consolidados: 0',
|
||||||
text: 'Procedimentos Consolidados: 0',
|
// fontWeigth: FontWeight.bold,
|
||||||
fontWeigth: FontWeight.bold,
|
// color: ColorPalette.black54,
|
||||||
color: ColorPalette.black54,
|
// fontSize: 18,
|
||||||
fontSize: 18,
|
// ),
|
||||||
),
|
// TextDefault(
|
||||||
TextDefault(
|
// textAlign: TextAlign.center,
|
||||||
textAlign: TextAlign.center,
|
// text: 'Procedimentos Individuais : ${tablePROCEDIMENTOS_INDIV==null?'0':tablePROCEDIMENTOS_INDIV.length}',
|
||||||
text: 'Procedimentos Individuais : ${tablePROCEDIMENTOS_INDIV==null?'0':tablePROCEDIMENTOS_INDIV.length}',
|
// fontWeigth: FontWeight.bold,
|
||||||
fontWeigth: FontWeight.bold,
|
// color: ColorPalette.black54,
|
||||||
color: ColorPalette.black54,
|
// fontSize: 18,
|
||||||
fontSize: 18,
|
// ),
|
||||||
),
|
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Visitas Domiciliares: ${tableVISITAS_DOMICILIARES==null?'0':tableVISITAS_DOMICILIARES.length}',
|
text: 'Visitas Domiciliares: ${tableVISITAS_DOMICILIARES==null?'0':tableVISITAS_DOMICILIARES.length}',
|
||||||
@@ -416,7 +446,7 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
textColor: ColorPalette.white,
|
textColor: ColorPalette.white,
|
||||||
background: ColorPalette.appBar,
|
background: ColorPalette.appBar,
|
||||||
borderColor: ColorPalette.appBar,
|
borderColor: ColorPalette.appBar,
|
||||||
onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/home', (Route<dynamic> route) => false),
|
onPressed: ()=>Navigator.pushAndRemoveUntil(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: widget.username,)), (Route<dynamic> route) => false),
|
||||||
),
|
),
|
||||||
):Container(),
|
):Container(),
|
||||||
done?Padding(
|
done?Padding(
|
||||||
@@ -2,17 +2,21 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
import 'package:rkm/widgets/appbar_default.dart';
|
import 'package:rkm/widgets/appbar_default.dart';
|
||||||
import 'package:rkm/widgets/input_text.dart';
|
|
||||||
import 'package:rkm/widgets/onbackbutton.dart';
|
import 'package:rkm/widgets/onbackbutton.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import 'package:sqflite/sqflite.dart';
|
||||||
import '../config/color_palette.dart';
|
import '../config/color_palette.dart';
|
||||||
|
import '../service/db/db_querys.dart';
|
||||||
|
import '../service/db/db_sqlite_load.dart';
|
||||||
|
import '../service/shared_preferences/shared_preferences_service.dart';
|
||||||
import '../widgets/button_default.dart';
|
import '../widgets/button_default.dart';
|
||||||
import '../widgets/dropdown_button_default.dart';
|
import '../widgets/dropdown_button_default.dart';
|
||||||
import '../widgets/subtitle_containers.dart';
|
|
||||||
import '../widgets/title_containers.dart';
|
import '../widgets/title_containers.dart';
|
||||||
|
|
||||||
class EditProceduresScreen extends StatefulWidget {
|
class EditProceduresScreen extends StatefulWidget {
|
||||||
const EditProceduresScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
|
||||||
|
EditProceduresScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<EditProceduresScreen> createState() => _EditProceduresScreenState();
|
State<EditProceduresScreen> createState() => _EditProceduresScreenState();
|
||||||
@@ -22,9 +26,15 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
|
|
||||||
var controllerProfessional = TextEditingController();
|
var controllerProfessional = TextEditingController();
|
||||||
var controllerUnit = TextEditingController();
|
var controllerUnit = TextEditingController();
|
||||||
|
var NOME_PROFISSIONAL = TextEditingController();
|
||||||
|
var NOME_UNIDADE = TextEditingController();
|
||||||
|
List listCBO = [];
|
||||||
|
List listINEPROF = [];
|
||||||
String? selectCBO;
|
String? selectCBO;
|
||||||
String? selectTeam;
|
String? INE_RESP_CADASTRO;
|
||||||
String? date;
|
String? date;
|
||||||
|
int idUsuario = 0;
|
||||||
|
String idUnidade = '';
|
||||||
|
|
||||||
escolherprazoInicio(BuildContext context) async {
|
escolherprazoInicio(BuildContext context) async {
|
||||||
var pickDate = await showDatePicker(
|
var pickDate = await showDatePicker(
|
||||||
@@ -46,6 +56,65 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
return formattedDate;
|
return formattedDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
getUser()async{
|
||||||
|
final PrefService _prefService = PrefService();
|
||||||
|
_prefService.readCacheIDUser().then((value){
|
||||||
|
if(value != null){
|
||||||
|
idUsuario = int.parse(value);
|
||||||
|
}
|
||||||
|
}).then((value)async{
|
||||||
|
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
|
||||||
|
// ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
|
||||||
|
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
|
||||||
|
// String CNS_PROFISSIONAL = list['CNS_PROFISSIONAL'];
|
||||||
|
// if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
||||||
|
// CNS_VALIDO = true;
|
||||||
|
// }
|
||||||
|
loadCBO();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
_prefService.readCacheUnidade().then((value){
|
||||||
|
if(value!=null){
|
||||||
|
idUnidade = value[0];
|
||||||
|
NOME_UNIDADE.text = value[1];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
loadCBO()async{
|
||||||
|
Database dbcbo = await DbSqliteLoad().intialDB();
|
||||||
|
var query = 'SELECT * FROM PROFISSIONAIS_CBOS WHERE ID_PROFISSIONAL = $idUsuario';
|
||||||
|
List listcbo = await dbcbo.rawQuery(query);
|
||||||
|
|
||||||
|
if(listcbo.length!=0){
|
||||||
|
for(int i = 0; listcbo.length>i;i++){
|
||||||
|
await DBQuerys().buscaCBOSProfissional(listcbo[i]['CODIGO_CBO']).then((cbo)async{
|
||||||
|
if(cbo.length!=0){
|
||||||
|
listCBO.add(cbo[0]['DESCRICAO_CBO']+' - '+listcbo[i]['CODIGO_CBO'].toString());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
loadEquipe();
|
||||||
|
}
|
||||||
|
|
||||||
|
loadEquipe()async{
|
||||||
|
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
|
for(int i=0; list.length > i;i++){
|
||||||
|
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
||||||
|
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
||||||
|
}
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
super.initState();
|
||||||
|
getUser();
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
@@ -53,9 +122,9 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
double height = MediaQuery.of(context).size.height;
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: ()async => await OnBackButton().onBackButton(context),
|
onWillPop: ()async => await OnBackButton().onBackButton(context, widget.username),
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos Consolidados'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos Consolidados',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
width: width,
|
width: width,
|
||||||
@@ -135,7 +204,7 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
padding: EdgeInsets.all(5),
|
padding: EdgeInsets.all(5),
|
||||||
width: width*0.5,
|
width: width*0.5,
|
||||||
color: ColorPalette.titleContainer,
|
color: ColorPalette.titleContainer,
|
||||||
child: TextDefault(text: 'ADMINISTRADOR',color: ColorPalette.black54,fontSize: 15,),
|
child: TextDefault(text: NOME_PROFISSIONAL.text,color: ColorPalette.black54,fontSize: 15,),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@@ -157,7 +226,7 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
width: width*0.5,
|
width: width*0.5,
|
||||||
color: ColorPalette.titleContainer,
|
color: ColorPalette.titleContainer,
|
||||||
child: TextDefault(
|
child: TextDefault(
|
||||||
text: 'USF PINHAL - EMILIA STEPHANI SIMIONATO',
|
text: NOME_UNIDADE.text,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 15,
|
fontSize: 15,
|
||||||
),
|
),
|
||||||
@@ -186,7 +255,7 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
width: width*0.4,
|
width: width*0.4,
|
||||||
widthContainer: width*0.3,
|
widthContainer: width*0.3,
|
||||||
select: selectCBO,
|
select: selectCBO,
|
||||||
list: ConstVariable().itensCBO,
|
list: listCBO,
|
||||||
onChanged: (value){
|
onChanged: (value){
|
||||||
setState(() {
|
setState(() {
|
||||||
selectCBO = value!;
|
selectCBO = value!;
|
||||||
@@ -216,11 +285,11 @@ class _EditProceduresScreenState extends State<EditProceduresScreen> {
|
|||||||
fontSize: 15,
|
fontSize: 15,
|
||||||
width: width*0.5,
|
width: width*0.5,
|
||||||
widthContainer: width*0.4,
|
widthContainer: width*0.4,
|
||||||
select: selectTeam,
|
select: INE_RESP_CADASTRO,
|
||||||
list: [],
|
list: listINEPROF,
|
||||||
onChanged: (value){
|
onChanged: (value){
|
||||||
setState(() {
|
setState(() {
|
||||||
selectTeam = value!;
|
INE_RESP_CADASTRO = value!;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:line_icons/line_icons.dart';
|
import 'package:line_icons/line_icons.dart';
|
||||||
import 'package:rkm/controllers/main_controllers.dart';
|
import 'package:rkm/controllers/main_controllers.dart';
|
||||||
|
import 'package:rkm/screens/attendance_list_screen.dart';
|
||||||
|
import 'package:rkm/screens/edit_procedures_screen.dart';
|
||||||
import 'package:rkm/screens/registers_citizen/register_citizen_screen.dart';
|
import 'package:rkm/screens/registers_citizen/register_citizen_screen.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
import 'package:rkm/service/db/db_querys.dart';
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
@@ -11,7 +13,9 @@ import '../widgets/appbar_default.dart';
|
|||||||
import '../widgets/item_citizen.dart';
|
import '../widgets/item_citizen.dart';
|
||||||
|
|
||||||
class HomeScreen extends StatefulWidget {
|
class HomeScreen extends StatefulWidget {
|
||||||
const HomeScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
|
||||||
|
HomeScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<HomeScreen> createState() => _HomeScreenState();
|
State<HomeScreen> createState() => _HomeScreenState();
|
||||||
@@ -26,13 +30,15 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
loadCitizen()async{
|
loadCitizen()async{
|
||||||
await DbSqliteLoad().intialDB().then((db)async {
|
await DbSqliteLoad().intialDB().then((db)async {
|
||||||
dataCitizen = await db.query('CIDADAOS ORDER BY NOME_CIDADAO');
|
dataCitizen = await db.query('CIDADAOS ORDER BY NOME_CIDADAO');
|
||||||
// print(await db.rawQuery("SELECT * FROM CIDADAOS WHERE NOME_PAI='REGINALDO OLIVEIRA'"));
|
// print(dataCitizen.length);
|
||||||
|
// print(await db.rawQuery("SELECT * FROM CIDADAOS"));
|
||||||
});
|
});
|
||||||
searchCitizen();
|
searchCitizen();
|
||||||
return 'complete';
|
return 'complete';
|
||||||
}
|
}
|
||||||
|
|
||||||
searchCitizen()async{
|
searchCitizen()async{
|
||||||
|
|
||||||
if(inputSearch.text.isNotEmpty){
|
if(inputSearch.text.isNotEmpty){
|
||||||
showResults =[];
|
showResults =[];
|
||||||
for (int i =0;dataCitizen.length>i;i++) {
|
for (int i =0;dataCitizen.length>i;i++) {
|
||||||
@@ -52,6 +58,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
){
|
){
|
||||||
if(showResults.length<10){
|
if(showResults.length<10){
|
||||||
showResults.add(dataCitizen[i]);
|
showResults.add(dataCitizen[i]);
|
||||||
|
// print(dataCitizen[i]['ORIGEM']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -59,8 +66,11 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
setState(() {
|
setState(() {
|
||||||
|
if(dataCitizen.isNotEmpty){
|
||||||
for(int i = 0;i<10;i++){
|
for(int i = 0;i<10;i++){
|
||||||
showResults.add(dataCitizen[i]);
|
showResults.add(dataCitizen[i]);
|
||||||
|
// print(dataCitizen[i]['ORIGEM']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -88,7 +98,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
double height = MediaQuery.of(context).size.height;
|
double height = MediaQuery.of(context).size.height;
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Início'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Início',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
padding: EdgeInsets.all(10),
|
padding: EdgeInsets.all(10),
|
||||||
width: width,
|
width: width,
|
||||||
@@ -101,7 +111,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
InputSearchText(
|
InputSearchText(
|
||||||
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: 20,
|
fontSize: 20,
|
||||||
fontSizeHint: 11,
|
fontSizeHint: 13,
|
||||||
controller: inputSearch,
|
controller: inputSearch,
|
||||||
width: width*0.72,
|
width: width*0.72,
|
||||||
),
|
),
|
||||||
@@ -109,16 +119,16 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
icon: Icons.person_add,
|
icon: Icons.person_add,
|
||||||
onPressed: ()=> Navigator.push(
|
onPressed: ()=> Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => RegisterCitizenScreen(listData: [],)),
|
MaterialPageRoute(builder: (context) => RegisterCitizenScreen(listData: [],username: widget.username,)),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: Icons.article,
|
icon: Icons.article,
|
||||||
onPressed: ()=>Navigator.pushNamed(context, '/attendance_list')
|
onPressed: ()=>Navigator.push(context,MaterialPageRoute(builder:(context) => AttendanceListScreen(username: widget.username,)))
|
||||||
),
|
),
|
||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: LineIcons.edit,
|
icon: LineIcons.edit,
|
||||||
onPressed: ()=>Navigator.pushNamed(context, '/edit_procedure')
|
onPressed: ()=> Navigator.push(context,MaterialPageRoute(builder:(context) => EditProceduresScreen(username: widget.username,)))
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@@ -137,15 +147,18 @@ class _HomeScreenState extends State<HomeScreen> {
|
|||||||
|
|
||||||
return ItemCitizen(
|
return ItemCitizen(
|
||||||
date: date,
|
date: date,
|
||||||
|
dataPatient: showResults[index],
|
||||||
|
username: widget.username,
|
||||||
name: '${showResults[index]['NOME_CIDADAO']}',
|
name: '${showResults[index]['NOME_CIDADAO']}',
|
||||||
mother:'${showResults[index]['NOME_MAE']}',
|
mother:'${showResults[index]['NOME_MAE']}',
|
||||||
numberCNS: '${showResults[index]['CNS']}'=='null'||'${showResults[index]['CNS']}'==''?'999999999999999':'${showResults[index]['CNS']}',
|
numberCNS: '${showResults[index]['CNS']}'=='null'||'${showResults[index]['CNS']}'==''?'999999999999999':'${showResults[index]['CNS']}',
|
||||||
numberMedicalRecord: '${showResults[index]['NUM_PRONTUARIO']}'==''?'-----':'${showResults[index]['NUM_PRONTUARIO']}',
|
numberMedicalRecord: '${showResults[index]['NUM_PRONTUARIO']}'==''?'-----':'${showResults[index]['NUM_PRONTUARIO']}',
|
||||||
onTap: ()async {
|
onTap: ()async {
|
||||||
await DBQuerys().buscaCidadao(showResults[index]['NOME_CIDADAO']).then((list){
|
await DBQuerys().buscaCidadao(showResults[index]['NOME_CIDADAO']).then((list){
|
||||||
|
// print(showResults[index]['CD_USUARIO_SUS']);
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder:(context) => RegisterCitizenScreen(listData: list,)),
|
MaterialPageRoute(builder:(context) => RegisterCitizenScreen(listData: list,username: widget.username,)),
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import 'package:rkm/widgets/button_default.dart';
|
|||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
import '../config/const_variable.dart';
|
import '../config/const_variable.dart';
|
||||||
import '../service/api/api_data_load.dart';
|
import '../service/api/api_data_load.dart';
|
||||||
|
import '../service/db/db_querys.dart';
|
||||||
import '../service/db/db_sqlite_load.dart';
|
import '../service/db/db_sqlite_load.dart';
|
||||||
import '../service/shared_preferences/shared_preferences_service.dart';
|
import '../service/shared_preferences/shared_preferences_service.dart';
|
||||||
|
|
||||||
@@ -20,12 +21,11 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
String messageSteps = 'Aguarde ...';
|
String messageSteps = 'Aguarde ...';
|
||||||
bool finish = false;
|
bool finish = false;
|
||||||
String idUsuario = '';
|
|
||||||
String mode = '';
|
String mode = '';
|
||||||
String urlAPI = '';
|
String urlAPI = '';
|
||||||
bool loading = false;
|
bool loading = false;
|
||||||
String nameCityApi = '';
|
String nameCityApi = '';
|
||||||
String user = '';
|
String username = '';
|
||||||
double countProg = 0.0;
|
double countProg = 0.0;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -40,7 +40,7 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
urlAPI = list[0]['URLAPI'];
|
urlAPI = list[0]['URLAPI'];
|
||||||
mode = list[0]['MODE'];
|
mode = list[0]['MODE'];
|
||||||
nameCityApi = list[0]['NAME_CITY_API'];
|
nameCityApi = list[0]['NAME_CITY_API'];
|
||||||
user = list[0]['USER'];
|
username = list[0]['USER'];
|
||||||
if(urlAPI!=''){
|
if(urlAPI!=''){
|
||||||
initLoading();
|
initLoading();
|
||||||
}
|
}
|
||||||
@@ -48,19 +48,32 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
initLoading()async{
|
initLoading()async{
|
||||||
await ApiDataLoad().loadPerm(urlAPI,mode,nameCityApi,user).then((response)async{
|
await ApiDataLoad().loadPerm(urlAPI,mode,nameCityApi,username).then((response)async{
|
||||||
if(response['status'] == 0){
|
print(response);
|
||||||
AlertDialogDefault().alert(context, 'Erro', 'Permissão negada', 'Voltar');
|
await ApiDataLoad().loadEtniasIndigenas(urlAPI, mode, nameCityApi, username).then((value)async{
|
||||||
} else if(response['status'] == 1 && response['load_perm'] == "S") {
|
|
||||||
idUsuario = response['idUsuario'].toString();
|
|
||||||
print('idUsuario $idUsuario');
|
|
||||||
_prefService.createCacheidUsuario(idUsuario).then((value)async{
|
|
||||||
await ApiDataLoad().loadUnidades(urlAPI,mode,nameCityApi,user).then((value)async{
|
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0) {
|
if(list.length !=0) {
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 1 de 11 - Gravando as Unidades no Aplicativo";
|
messageSteps = "Etapa 1 de 12 - Gravando as Etnias Indigenas no Aplicativo";
|
||||||
|
});
|
||||||
|
for (int i = 0; i < list.length; i++) {
|
||||||
|
Map<String, dynamic> row = {
|
||||||
|
'ID_ETNIA_INDIGENA': list[i]['idEtniaIndigena'].toString().trim(),
|
||||||
|
'DESC_ETNIA_INDIGENA': list[i]['descEtniaIndigena'].toString().trim(),
|
||||||
|
};
|
||||||
|
rows.add(row);
|
||||||
|
countProg = 0.05;
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
await DbSqliteLoad().saveEtniasIndigenasDB(rows).then((value)async{
|
||||||
|
await ApiDataLoad().loadUnidades(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
|
if(list.length !=0){
|
||||||
|
setState(() {
|
||||||
|
messageSteps = "Etapa 2 de 12 - Gravando as Unidades no Aplicativo";
|
||||||
});
|
});
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -69,16 +82,16 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
'CNES_UNIDADE': list[i]['nrCNES']
|
'CNES_UNIDADE': list[i]['nrCNES']
|
||||||
};
|
};
|
||||||
rows.add(row);
|
rows.add(row);
|
||||||
countProg = 0.1;
|
// countProg = 0.1;
|
||||||
setState(() {});
|
// setState(() {});
|
||||||
}
|
}
|
||||||
await DbSqliteLoad().saveUnidadesDB(rows).then((value)async{
|
await DbSqliteLoad().saveUnidadesDB(rows).then((value)async{
|
||||||
await ApiDataLoad().loadProcedimentos(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadProcedimentos(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0){
|
if(list.length !=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 2 de 11 - Gravando os Procedimentos no Aplicativo";
|
messageSteps = "Etapa 3 de 12 - Gravando os Procedimentos no Aplicativo";
|
||||||
});
|
});
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -96,12 +109,12 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
await DbSqliteLoad().saveProceduresDB(rows).then((value)async{
|
await DbSqliteLoad().saveProceduresDB(rows).then((value)async{
|
||||||
print('finalizou save Procedures');
|
print('finalizou save Procedures');
|
||||||
await ApiDataLoad().loadProcedimentosRegistros(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadProcedimentosRegistros(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0){
|
if(list.length !=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 3 de 11 - Gravando os Procedimentos Registros no Aplicativo";
|
messageSteps = "Etapa 4 de 12 - Gravando os Procedimentos Registros no Aplicativo";
|
||||||
});
|
});
|
||||||
print('finalizou saveProceduresRegisterDB');
|
print('finalizou saveProceduresRegisterDB');
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
@@ -114,13 +127,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
await DbSqliteLoad().saveProceduresRegisterDB(rows).then((value)async{
|
await DbSqliteLoad().saveProceduresRegisterDB(rows).then((value)async{
|
||||||
await ApiDataLoad().loadCID(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadCID(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadCID');
|
print('loadCID');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0){
|
if(list.length !=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 4 de 11 - Gravando os CIDs no Aplicativo";
|
messageSteps = "Etapa 5 de 12 - Gravando os CIDs no Aplicativo";
|
||||||
});
|
});
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -134,13 +147,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
await DbSqliteLoad().saveCID(rows).then((value)async{
|
await DbSqliteLoad().saveCID(rows).then((value)async{
|
||||||
print('finalizou saveCID');
|
print('finalizou saveCID');
|
||||||
await ApiDataLoad().loadProcedimentosCID(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadProcedimentosCID(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadProcedimentosCID');
|
print('loadProcedimentosCID');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0){
|
if(list.length !=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 5 de 11 - Gravando os Procedimentos CIDs no Aplicativo";
|
messageSteps = "Etapa 6 de 12 - Gravando os Procedimentos CIDs no Aplicativo";
|
||||||
});
|
});
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -153,13 +166,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
await DbSqliteLoad().saveProceduresCID(rows).then((value)async{
|
await DbSqliteLoad().saveProceduresCID(rows).then((value)async{
|
||||||
print('finalizou saveProceduresCID');
|
print('finalizou saveProceduresCID');
|
||||||
await ApiDataLoad().loadCBO(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadCBO(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadCBO');
|
print('loadCBO');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0){
|
if(list.length !=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 6 de 11 - Gravando os CBOs no Aplicativo";
|
messageSteps = "Etapa 8 de 12 - Gravando os CBOs no Aplicativo";
|
||||||
});
|
});
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -172,13 +185,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
await DbSqliteLoad().saveCBO(rows).then((value)async{
|
await DbSqliteLoad().saveCBO(rows).then((value)async{
|
||||||
print('finalizou saveCBO');
|
print('finalizou saveCBO');
|
||||||
await ApiDataLoad().loadProcedimentosCBO(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadProcedimentosCBO(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadProcedimentosCBO');
|
print('loadProcedimentosCBO');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length !=0){
|
if(list.length !=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 7 de 11 - Gravando os Procedimentos CBO no Aplicativo";
|
messageSteps = "Etapa 8 de 12 - Gravando os Procedimentos CBO no Aplicativo";
|
||||||
});
|
});
|
||||||
for (int i = 0; i < list.length; i++) {
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -191,13 +204,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
await DbSqliteLoad().saveProceduresCBO(rows).then((value)async{
|
await DbSqliteLoad().saveProceduresCBO(rows).then((value)async{
|
||||||
print('finalizou saveProceduresCBO');
|
print('finalizou saveProceduresCBO');
|
||||||
await ApiDataLoad().loadCIAP(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadCIAP(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadCIAP');
|
print('loadCIAP');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length != 0){
|
if(list.length != 0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 8 de 11 - Gravando os CIAPs no Aplicativo";
|
messageSteps = "Etapa 9 de 12 - Gravando os CIAPs no Aplicativo";
|
||||||
});
|
});
|
||||||
for(int i=0;list.length > i;i++){
|
for(int i=0;list.length > i;i++){
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -211,13 +224,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
await DbSqliteLoad().saveCIAP(rows).then((value)async{
|
await DbSqliteLoad().saveCIAP(rows).then((value)async{
|
||||||
print('finalizou saveCIAP');
|
print('finalizou saveCIAP');
|
||||||
await ApiDataLoad().loadMunicipios(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadMunicipios(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadMunicipios');
|
print('loadMunicipios');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length!=0){
|
if(list.length!=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 9 de 11 - Gravando os Municípios no Aplicativo";
|
messageSteps = "Etapa 10 de 12 - Gravando os Municípios no Aplicativo";
|
||||||
});
|
});
|
||||||
for(int i=0;list.length > i;i++){
|
for(int i=0;list.length > i;i++){
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -232,13 +245,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
await DbSqliteLoad().saveCity(rows).then((value)async{
|
await DbSqliteLoad().saveCity(rows).then((value)async{
|
||||||
await ApiDataLoad().loadEquipes(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadEquipes(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadEquipes');
|
print('loadEquipes');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length!=0){
|
if(list.length!=0){
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps = "Etapa 10 de 11 - Gravando as Equipes no Aplicativo";
|
messageSteps = "Etapa 11 de 12 - Gravando as Equipes no Aplicativo";
|
||||||
});
|
});
|
||||||
for(int i=0;list.length > i;i++){
|
for(int i=0;list.length > i;i++){
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -258,13 +271,13 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
countProg = 0.95;
|
countProg = 0.95;
|
||||||
setState(() {});
|
setState(() {});
|
||||||
print('finalizou saveTeam');
|
print('finalizou saveTeam');
|
||||||
await ApiDataLoad().loadEquipeComponentes(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataLoad().loadEquipeComponentes(urlAPI,mode,nameCityApi,username).then((value)async{
|
||||||
print('loadEquipeComponentes');
|
print('loadEquipeComponentes');
|
||||||
List list = value;
|
List list = value;
|
||||||
List<Map<String, dynamic>> rows = [];
|
List<Map<String, dynamic>> rows = [];
|
||||||
if(list.length!=0) {
|
if(list.length!=0) {
|
||||||
setState(() {
|
setState(() {
|
||||||
messageSteps ="Etapa 11 de 11 - Gravando os Profissionais das Equipes no Aplicativo";
|
messageSteps ="Etapa 12 de 12 - Gravando os Profissionais das Equipes no Aplicativo";
|
||||||
});
|
});
|
||||||
for(int i=0;list.length > i;i++){
|
for(int i=0;list.length > i;i++){
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
@@ -338,7 +351,7 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -351,7 +364,7 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
|
|||||||
return Scaffold(
|
return Scaffold(
|
||||||
bottomSheet: Container(
|
bottomSheet: Container(
|
||||||
width: width,
|
width: width,
|
||||||
height: height*0.05,
|
height: 70,
|
||||||
color: ColorPalette.appBar,
|
color: ColorPalette.appBar,
|
||||||
child: finish
|
child: finish
|
||||||
?Row(
|
?Row(
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/services.dart';
|
||||||
import 'package:rkm/controllers/main_controllers.dart';
|
import 'package:rkm/controllers/main_controllers.dart';
|
||||||
import 'package:rkm/screens/home_screen.dart';
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/service/api/url_api_const.dart';
|
import 'package:rkm/service/api/url_api_const.dart';
|
||||||
@@ -42,6 +43,7 @@ class _LoginLoadScreenState extends State<LoginLoadScreen> {
|
|||||||
|
|
||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
checkLogin()async{
|
checkLogin()async{
|
||||||
|
|
||||||
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){
|
if(selectCity!=null){
|
||||||
_prefService.createCacheModel(inputUser.text,inputPassword.text,selectCity!,mode);
|
_prefService.createCacheModel(inputUser.text,inputPassword.text,selectCity!,mode);
|
||||||
@@ -61,7 +63,8 @@ class _LoginLoadScreenState extends State<LoginLoadScreen> {
|
|||||||
urlAPI = 'http://${inputIP.text}:${inputPort.text}/api/atb/';
|
urlAPI = 'http://${inputIP.text}:${inputPort.text}/api/atb/';
|
||||||
}
|
}
|
||||||
await ApiDataLoad().apiConect(urlAPI,mode,nameCityApi,inputUser.text).then((response) async {
|
await ApiDataLoad().apiConect(urlAPI,mode,nameCityApi,inputUser.text).then((response) async {
|
||||||
// print("erre : "+response.toString());
|
print('response');
|
||||||
|
print(response);
|
||||||
if(response == 'Erro' || response.toString() == 'Error: -902 - I/O error during "open" operation for file "/bases/conectasus/extrema/SISTEMA.FDB" Error while trying to open file No such file or directory'){
|
if(response == 'Erro' || response.toString() == 'Error: -902 - I/O error during "open" operation for file "/bases/conectasus/extrema/SISTEMA.FDB" Error while trying to open file No such file or directory'){
|
||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
loading = false;
|
||||||
@@ -70,7 +73,11 @@ class _LoginLoadScreenState extends State<LoginLoadScreen> {
|
|||||||
}else if(inputUser.text == inputPassword.text || response['bloqueio']==1){
|
}else if(inputUser.text == inputPassword.text || response['bloqueio']==1){
|
||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
loading = false;
|
||||||
|
if( response['bloqueio']==1){
|
||||||
error = 'Usuário bloqueado/usuário e/ou senha incorreta';
|
error = 'Usuário bloqueado/usuário e/ou senha incorreta';
|
||||||
|
}else if(inputUser.text == inputPassword.text){
|
||||||
|
error = 'Usuário e senha não podem ser idênticas';
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}else if(response['status']==0) {
|
}else if(response['status']==0) {
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -78,14 +85,14 @@ class _LoginLoadScreenState extends State<LoginLoadScreen> {
|
|||||||
error = 'Usuário não encontrado';
|
error = 'Usuário não encontrado';
|
||||||
});
|
});
|
||||||
}else if(response['status']==1) {
|
}else if(response['status']==1) {
|
||||||
// print('aqui 1');
|
print('aqui 1');
|
||||||
// print(response);
|
print(response);
|
||||||
setState((){
|
setState((){
|
||||||
error = '';
|
error = '';
|
||||||
});
|
});
|
||||||
//verificar se a criptografia identificou se a senha está correta
|
//verificar se a criptografia identificou se a senha está correta
|
||||||
|
print('chegou');
|
||||||
if(MainControllers().encrypt(inputPassword.text,response['userPass']) == response['userPass']){
|
if(MainControllers().encrypt(inputPassword.text,response['userPass']) == response['userPass']){
|
||||||
// 'print'(EncryptPassword().encrypt(inputPassword.text,response['userPass']));
|
|
||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
loading = false;
|
||||||
});
|
});
|
||||||
@@ -199,6 +206,9 @@ class _LoginLoadScreenState extends State<LoginLoadScreen> {
|
|||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
colorBorder: Colors.white,
|
colorBorder: Colors.white,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
inputFormatters: [
|
||||||
|
FilteringTextInputFormatter.deny(RegExp(r'\s')),
|
||||||
|
],
|
||||||
),
|
),
|
||||||
TitleInput(title:'Senha'),
|
TitleInput(title:'Senha'),
|
||||||
InputText(
|
InputText(
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/services.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:rkm/screens/home_screen.dart';
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/screens/login/sync_login_screen.dart';
|
import 'package:rkm/screens/login/sync_login_screen.dart';
|
||||||
@@ -30,7 +31,6 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
String? now;
|
String? now;
|
||||||
bool validatorDropDown= false;
|
bool validatorDropDown= false;
|
||||||
int contLogo = 0;
|
int contLogo = 0;
|
||||||
bool loading = false;
|
|
||||||
String urlAPI='';
|
String urlAPI='';
|
||||||
String mode = '';
|
String mode = '';
|
||||||
String nameCityApi = '';
|
String nameCityApi = '';
|
||||||
@@ -38,6 +38,9 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
int codCity = 0;
|
int codCity = 0;
|
||||||
int codCityIbge = 0;
|
int codCityIbge = 0;
|
||||||
String codState = '';
|
String codState = '';
|
||||||
|
String passwordDB = '';
|
||||||
|
String userDB = '';
|
||||||
|
String competencia = '';
|
||||||
|
|
||||||
recupDB()async{
|
recupDB()async{
|
||||||
await DbSqliteLoad().intialDB().then((db)async{
|
await DbSqliteLoad().intialDB().then((db)async{
|
||||||
@@ -46,49 +49,33 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
mode = list[0]['MODE'];
|
mode = list[0]['MODE'];
|
||||||
nameCityApi = list[0]['NAME_CITY_API'];
|
nameCityApi = list[0]['NAME_CITY_API'];
|
||||||
nameCityFront = list[0]['NAME_CITY_FRONT'];
|
nameCityFront = list[0]['NAME_CITY_FRONT'];
|
||||||
inputUser.text = list[0]['USER'];
|
userDB = list[0]['USER'];
|
||||||
inputPassword.text = list[0]['PASSWORD'];
|
passwordDB = list[0]['PASSWORD'];
|
||||||
codCity = list[0]['COD_CITY'];
|
codCity = list[0]['COD_CITY'];
|
||||||
codState = list[0]['COD_STATE'];
|
codState = list[0]['COD_STATE'];
|
||||||
codCityIbge = list[0]['COD_IBGE'];
|
codCityIbge = list[0]['COD_IBGE'];
|
||||||
});
|
});
|
||||||
|
if(widget.listControl.isNotEmpty){
|
||||||
|
String ano = widget.listControl[0]['COMPETENCIA'].toString().substring(0, 4);
|
||||||
|
String mes = widget.listControl[0]['COMPETENCIA'].toString().substring(4, 6);
|
||||||
|
competencia = '$mes/$ano';
|
||||||
|
}
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
checkLogin()async{
|
checkLogin()async{
|
||||||
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){
|
||||||
setState(() {
|
if(inputUser.text == userDB && inputPassword.text == passwordDB){
|
||||||
error = '';
|
|
||||||
loading = true;
|
|
||||||
});
|
|
||||||
await ApiDataLoad().apiConect(urlAPI,mode,nameCityApi,inputUser.text).then((response) async {
|
|
||||||
if(inputUser.text == inputPassword.text || response['bloqueio']==1){
|
|
||||||
setState(() {
|
|
||||||
error = 'Usuário bloqueado/senha incorreta';
|
|
||||||
});
|
|
||||||
}else if(response['status']==0) {
|
|
||||||
setState(() {
|
|
||||||
error = 'Usuário não encontrado';
|
|
||||||
});
|
|
||||||
}else if(response['status']==1) {
|
|
||||||
setState(() {
|
setState(() {
|
||||||
error = '';
|
error = '';
|
||||||
});
|
});
|
||||||
//verificar se a criptografia identificou se a senha está correta
|
Navigator.push(context,MaterialPageRoute(builder: (context) => HomeScreen(username: inputUser.text,)));
|
||||||
if(MainControllers().encrypt(inputPassword.text,response['userPass']) == response['userPass']){
|
}else{
|
||||||
// print(EncryptPassword().encrypt(inputPassword.text,response['userPass']));
|
|
||||||
DbSqliteLoad().updateArgs(mode, inputUser.text, inputPassword.text).then((value){
|
|
||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
error = 'Usuário/senha inválido(s)';
|
||||||
});
|
|
||||||
Navigator.push(
|
|
||||||
context,
|
|
||||||
MaterialPageRoute(builder: (context) => HomeScreen()),
|
|
||||||
);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
|
||||||
});
|
|
||||||
}else{
|
}else{
|
||||||
setState(() {
|
setState(() {
|
||||||
error = 'Usuário/senha inválido(s)';
|
error = 'Usuário/senha inválido(s)';
|
||||||
@@ -141,16 +128,7 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
mode == 'homologacao'?Image.asset('assets/images/homologacao.png',width: width*0.4):Container(),
|
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(),
|
mode == 'desenvolvimento'?Image.asset('assets/images/desenvolvimento.png',width: width*0.4):Container(),
|
||||||
SizedBox(height: 10),
|
SizedBox(height: 10),
|
||||||
loading?Center(
|
Form(
|
||||||
child: Column(
|
|
||||||
mainAxisSize: MainAxisSize.min,
|
|
||||||
children: [
|
|
||||||
Image.asset('assets/images/loading.gif'),
|
|
||||||
SizedBox(height: 10),
|
|
||||||
TextDefault(text: 'Carregando dados...',color: ColorPalette.black54,fontSize: 20,fontWeigth: FontWeight.bold,)
|
|
||||||
],
|
|
||||||
),
|
|
||||||
):Form(
|
|
||||||
autovalidateMode: AutovalidateMode.onUserInteraction,
|
autovalidateMode: AutovalidateMode.onUserInteraction,
|
||||||
child: Container(
|
child: Container(
|
||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
@@ -164,6 +142,9 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
colorBorder: Colors.white,
|
colorBorder: Colors.white,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
inputFormatters: [
|
||||||
|
FilteringTextInputFormatter.deny(RegExp(r'\s')),
|
||||||
|
],
|
||||||
),
|
),
|
||||||
TitleInput(title:'Senha'),
|
TitleInput(title:'Senha'),
|
||||||
InputText(
|
InputText(
|
||||||
@@ -178,7 +159,7 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
loading?Container():ButtonDefault(
|
ButtonDefault(
|
||||||
onPressed: ()=>checkLogin(),
|
onPressed: ()=>checkLogin(),
|
||||||
title: 'Entrar',
|
title: 'Entrar',
|
||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
@@ -210,7 +191,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: 'Competência: '+widget.listControl[0]['COMPETENCIA'].toString(),
|
text: 'Competência: $competencia',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
@@ -221,7 +202,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: 'Área: '+widget.listControl[0]['AREA'].toString()+' - Microárea: '+widget.listControl[0]['MICROAREA'].toString(),
|
text: 'Área: '+widget.listControl[0]['AREA_DESCRICAO'].toString()+' - Microárea: '+widget.listControl[0]['MICROAREA_DESCRICAO'].toString(),
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/services.dart';
|
||||||
import 'package:rkm/screens/sync_init_screen.dart';
|
import 'package:rkm/screens/sync_init_screen.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
@@ -8,9 +9,12 @@ import 'package:rkm/widgets/input_text.dart';
|
|||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
import 'package:sqflite/sqflite.dart';
|
import 'package:sqflite/sqflite.dart';
|
||||||
import '../../controllers/main_controllers.dart';
|
import '../../controllers/main_controllers.dart';
|
||||||
|
import '../../models/equipe_modelo.dart';
|
||||||
import '../../service/api/api_data_load.dart';
|
import '../../service/api/api_data_load.dart';
|
||||||
|
import '../../service/api/api_data_sync.dart';
|
||||||
import '../../service/db/db_sqlite_load.dart';
|
import '../../service/db/db_sqlite_load.dart';
|
||||||
import '../../service/shared_preferences/shared_preferences_service.dart';
|
import '../../service/shared_preferences/shared_preferences_service.dart';
|
||||||
|
import '../../widgets/dropdown_equipe.dart';
|
||||||
import '../../widgets/title_input.dart';
|
import '../../widgets/title_input.dart';
|
||||||
class SyncLoginScreen extends StatefulWidget {
|
class SyncLoginScreen extends StatefulWidget {
|
||||||
|
|
||||||
@@ -25,7 +29,7 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
String error = '';
|
String error = '';
|
||||||
String? now;
|
String? now;
|
||||||
String? selectUnit;
|
String? selectUnit;
|
||||||
String? selectTeam;
|
EquipeModelo? selectTeam;
|
||||||
bool validatorDropDown= false;
|
bool validatorDropDown= false;
|
||||||
bool citizenOutArea = false;
|
bool citizenOutArea = false;
|
||||||
int contLogo = 0;
|
int contLogo = 0;
|
||||||
@@ -35,9 +39,11 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
bool loading = false;
|
bool loading = false;
|
||||||
List<String> listUnit=[];
|
List<String> listUnit=[];
|
||||||
List searchUnitCodList=[];
|
List searchUnitCodList=[];
|
||||||
List<String> listTeam = [];
|
List<EquipeModelo> listTeam = [];
|
||||||
String idUnidade ='';
|
String idUnidade ='';
|
||||||
String idUsuario ='1';
|
int idUsuario =0;
|
||||||
|
int ID_ATB_AREA = 0;
|
||||||
|
int ID_ATB_MICROAREA = 0;
|
||||||
|
|
||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
|
|
||||||
@@ -63,18 +69,6 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
});
|
});
|
||||||
|
|
||||||
await ApiDataLoad().apiConect(urlAPI,mode,nameCityApi,inputUser.text).then((response) async {
|
await ApiDataLoad().apiConect(urlAPI,mode,nameCityApi,inputUser.text).then((response) async {
|
||||||
if(inputUser.text == inputPassword.text || response['bloqueio']==1){
|
|
||||||
setState(() {
|
|
||||||
error = 'Usuário bloqueado/senha incorreta';
|
|
||||||
});
|
|
||||||
}else if(response['status']==0) {
|
|
||||||
setState(() {
|
|
||||||
error = 'Usuário não encontrado';
|
|
||||||
});
|
|
||||||
}else if(response['status']==1) {
|
|
||||||
setState((){
|
|
||||||
error = '';
|
|
||||||
});
|
|
||||||
if(MainControllers().encrypt(inputPassword.text,response['userPass']) == response['userPass']){
|
if(MainControllers().encrypt(inputPassword.text,response['userPass']) == response['userPass']){
|
||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
loading = false;
|
||||||
@@ -88,7 +82,6 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -112,14 +105,20 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
super.initState();
|
super.initState();
|
||||||
recupDB();
|
recupDB();
|
||||||
getUnit();
|
getUnit();
|
||||||
// getUser();
|
|
||||||
}
|
}
|
||||||
getUser(){
|
|
||||||
_prefService.readCacheIdUsuario('idUsuario').then((value){
|
Future<int> getUser()async{
|
||||||
if(value != null){
|
await ApiDataSync().syncProfissionais(urlAPI,mode,nameCityApi,inputUser.text,idUnidade).then((value)async{
|
||||||
idUsuario = value;
|
List users = value;
|
||||||
|
for(int i =0; users.length > i; i++){
|
||||||
|
if( value[i]['username'].toString().toUpperCase()==inputUser.text.toUpperCase()){
|
||||||
|
print('idUsuario' + value[i]['idProfissional'].toString());
|
||||||
|
idUsuario = value[i]['idProfissional'];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
print(value);
|
||||||
});
|
});
|
||||||
|
return idUsuario;
|
||||||
}
|
}
|
||||||
|
|
||||||
getUnit()async{
|
getUnit()async{
|
||||||
@@ -140,24 +139,52 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
for(int i=0; listUnit.length > i;i++){
|
for(int i=0; listUnit.length > i;i++){
|
||||||
if(listUnit[i] == selectUnit){
|
if(listUnit[i] == selectUnit){
|
||||||
idUnidade = searchUnitCodList[i].toString();
|
idUnidade = searchUnitCodList[i].toString();
|
||||||
_prefService.createCacheUnidade(idUnidade,selectUnit!);
|
print('idUnidade: $idUnidade / select $selectUnit');
|
||||||
|
_prefService.createCacheUnidade(idUnidade,selectUnit!).then((onValue){
|
||||||
|
print('onValeu ${onValue.toString()}');
|
||||||
|
});
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(idUnidade!=''){
|
if(idUnidade!=''){
|
||||||
// print('idUnidade');
|
getUser().then((value)async{
|
||||||
// print(idUnidade);
|
var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $value";
|
||||||
// print('idUsuario');
|
|
||||||
// print(idUsuario);
|
|
||||||
var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $idUsuario";
|
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
listTeam.clear();
|
listTeam.clear();
|
||||||
|
print(list);
|
||||||
for(int i=0; list.length > i;i++){
|
for(int i=0; list.length > i;i++){
|
||||||
listTeam.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
listTeam.add(
|
||||||
|
EquipeModelo(
|
||||||
|
AREA:list[i]['AREA'],
|
||||||
|
ID_EQUIPE:list[i]['ID_EQUIPE'],
|
||||||
|
INE:list[i]['INE'].toString(),
|
||||||
|
ID_ATB_AREA:list[i]['ID_ATB_AREA'],
|
||||||
|
ID_ATB_MICROAREA:list[i]['ID_ATB_MICROAREA'],
|
||||||
|
MICROAREA:list[i]['MICROAREA'],
|
||||||
|
ID_PROFISSIONAL:list[i]['ID_PROFISSIONAL'],
|
||||||
|
ATIVO:list[i]['ATIVO'],
|
||||||
|
ID_UNIDADE:list[i]['ID_UNIDADE'],
|
||||||
|
)
|
||||||
|
);
|
||||||
|
// listTeam.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']==null?'':list[i]['MICROAREA']}');
|
||||||
}
|
}
|
||||||
|
var query1 = "SELECT * FROM EQUIPES WHERE ID_EQUIPE = $idUnidade";
|
||||||
|
List list1 = await db.rawQuery(query1);
|
||||||
|
// print(list1);
|
||||||
|
var query2 = "SELECT * FROM PROFISSIONAIS_EQUIPE WHERE ID_PROFISSIONAL = $idUsuario";
|
||||||
|
List list2 = await db.rawQuery(query2);
|
||||||
|
// print(list2);
|
||||||
|
print(list2.length);
|
||||||
|
print('idUsuario');
|
||||||
|
print(idUsuario);
|
||||||
|
print('idUnidade');
|
||||||
|
print(idUnidade);
|
||||||
|
print('listTeam');
|
||||||
|
print(listTeam);
|
||||||
setState(() {});
|
setState(() {});
|
||||||
|
_prefService.createCacheidUsuario(value.toString());
|
||||||
|
});
|
||||||
}
|
}
|
||||||
// print('listTeam');
|
|
||||||
// print(listTeam);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -168,6 +195,7 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
|
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
|
iconTheme: ConstVariable().iconThemeDataDefault,
|
||||||
centerTitle: true,
|
centerTitle: true,
|
||||||
title: TextDefault(text: 'RKM AB - Sincronização de Unidade',fontSize: ConstVariable().fontSizeTitleAppBar,color: ColorPalette.white),
|
title: TextDefault(text: 'RKM AB - Sincronização de Unidade',fontSize: ConstVariable().fontSizeTitleAppBar,color: ColorPalette.white),
|
||||||
),
|
),
|
||||||
@@ -208,6 +236,9 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
colorBorder: Colors.white,
|
colorBorder: Colors.white,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
inputFormatters: [
|
||||||
|
FilteringTextInputFormatter.deny(RegExp(r'\s')),
|
||||||
|
],
|
||||||
),
|
),
|
||||||
TitleInput(title:'Senha'),
|
TitleInput(title:'Senha'),
|
||||||
InputText(
|
InputText(
|
||||||
@@ -230,11 +261,14 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
validatorDropDown = true;
|
validatorDropDown = true;
|
||||||
selectTeam = null;
|
selectTeam = null;
|
||||||
});
|
});
|
||||||
|
_prefService.removeUnidade().then((onValue){
|
||||||
|
print('remove unidade');
|
||||||
getTeam();
|
getTeam();
|
||||||
|
});
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
TitleInput(title:'Equipe'),
|
TitleInput(title:'Equipe'),
|
||||||
DropDownButtonDefault(
|
DropDownEquipe(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
title: 'Equipe',
|
title: 'Equipe',
|
||||||
list: listTeam,
|
list: listTeam,
|
||||||
@@ -242,6 +276,18 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
|
|||||||
onChanged: (value){
|
onChanged: (value){
|
||||||
setState(() {
|
setState(() {
|
||||||
selectTeam = value!;
|
selectTeam = value!;
|
||||||
|
print('ID_ATB_AREA');
|
||||||
|
print(selectTeam!.ID_ATB_AREA.toString());
|
||||||
|
print('AREA');
|
||||||
|
print(selectTeam!.AREA.toString());
|
||||||
|
print('ID_ATB_MICROAREA');
|
||||||
|
print(selectTeam!.ID_ATB_MICROAREA.toString());
|
||||||
|
print('MICROAREA');
|
||||||
|
print(selectTeam!.MICROAREA.toString());
|
||||||
|
print('UNIDADE');
|
||||||
|
print(selectTeam!.ID_UNIDADE.toString());
|
||||||
|
print('EQUIPE');
|
||||||
|
print(selectTeam!.ID_EQUIPE.toString());
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -2,10 +2,14 @@ import 'package:brasil_fields/brasil_fields.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
import 'package:mask_text_input_formatter/mask_text_input_formatter.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
|
import 'package:rkm/models/drop_down_data_string_model.dart';
|
||||||
|
import 'package:rkm/models/pais_modelo.dart';
|
||||||
import 'package:rkm/widgets/alert_dialog_default.dart';
|
import 'package:rkm/widgets/alert_dialog_default.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
|
import 'package:rkm/widgets/dropdown_button_com_pesquisa_paises.dart';
|
||||||
import 'package:rkm/widgets/title_containers.dart';
|
import 'package:rkm/widgets/title_containers.dart';
|
||||||
import 'package:sqflite/sqflite.dart';
|
import 'package:sqflite/sqflite.dart';
|
||||||
import '../../controllers/main_controllers.dart';
|
import '../../controllers/main_controllers.dart';
|
||||||
@@ -14,6 +18,7 @@ import '../../service/db/db_sqlite_load.dart';
|
|||||||
import '../../service/db/db_sqlite_sync.dart';
|
import '../../service/db/db_sqlite_sync.dart';
|
||||||
import '../../service/shared_preferences/shared_preferences_service.dart';
|
import '../../service/shared_preferences/shared_preferences_service.dart';
|
||||||
import '../../widgets/appbar_default.dart';
|
import '../../widgets/appbar_default.dart';
|
||||||
|
import '../../widgets/dropdown_etnia_indigena.dart';
|
||||||
import '../../widgets/dropdown_with_subtitle.dart';
|
import '../../widgets/dropdown_with_subtitle.dart';
|
||||||
import '../../widgets/error_default.dart';
|
import '../../widgets/error_default.dart';
|
||||||
import '../../widgets/input_search_text.dart';
|
import '../../widgets/input_search_text.dart';
|
||||||
@@ -22,9 +27,11 @@ import '../../widgets/onbackbutton.dart';
|
|||||||
import '../../widgets/subtitle_appbar_citizen.dart';
|
import '../../widgets/subtitle_appbar_citizen.dart';
|
||||||
import '../../widgets/switch_with_subtitle.dart';
|
import '../../widgets/switch_with_subtitle.dart';
|
||||||
import '../../widgets/text_default.dart';
|
import '../../widgets/text_default.dart';
|
||||||
|
import '../../widgets/title_input.dart';
|
||||||
class RegisterCitizenScreen extends StatefulWidget {
|
class RegisterCitizenScreen extends StatefulWidget {
|
||||||
List listData;
|
List listData;
|
||||||
RegisterCitizenScreen({required this.listData});
|
String username;
|
||||||
|
RegisterCitizenScreen({required this.listData, required this.username});
|
||||||
@override
|
@override
|
||||||
State<RegisterCitizenScreen> createState() => _RegisterCitizenScreenState();
|
State<RegisterCitizenScreen> createState() => _RegisterCitizenScreenState();
|
||||||
}
|
}
|
||||||
@@ -82,6 +89,8 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
var dateDeathController = TextEditingController();
|
var dateDeathController = TextEditingController();
|
||||||
String checkCNS = '';
|
String checkCNS = '';
|
||||||
String checkCPF = '';
|
String checkCPF = '';
|
||||||
|
String checkEmail = '';
|
||||||
|
String checkCEP = '';
|
||||||
String? selectTypeCertificate;
|
String? selectTypeCertificate;
|
||||||
int? selectTypeCertificateCod;
|
int? selectTypeCertificateCod;
|
||||||
String? selectCTPSUF;
|
String? selectCTPSUF;
|
||||||
@@ -93,13 +102,16 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
String? selectZone;
|
String? selectZone;
|
||||||
int? selectZoneCod;
|
int? selectZoneCod;
|
||||||
String? selectVillage;
|
String? selectVillage;
|
||||||
String? selectCountry;
|
PaisModelo? selectCountry;
|
||||||
|
bool showSelectCountry = false;
|
||||||
|
String? selectPaisResidencia;
|
||||||
String? selectClassification;
|
String? selectClassification;
|
||||||
int? selectClassificationCOD;
|
int? selectClassificationCOD;
|
||||||
String? selectGender;
|
String? selectGender;
|
||||||
String? selectMaritalStatus;
|
String? selectMaritalStatus;
|
||||||
int? selectMaritalStatusCod;
|
int? selectMaritalStatusCod;
|
||||||
String? selectBreed;
|
String? selectBreed;
|
||||||
|
DropDownDataStringModel? selectEtniaIndigena;
|
||||||
int? selectBreedCod;
|
int? selectBreedCod;
|
||||||
String? selectScooling;
|
String? selectScooling;
|
||||||
int? selectScoolingCod;
|
int? selectScoolingCod;
|
||||||
@@ -138,6 +150,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
List<String> listScooling = [];
|
List<String> listScooling = [];
|
||||||
List<String> listBreed = [];
|
List<String> listBreed = [];
|
||||||
List<String> listMaritalStatus = [];
|
List<String> listMaritalStatus = [];
|
||||||
|
List<DropDownDataStringModel> listEtniasIndigenas = [];
|
||||||
String idUnidade = '';
|
String idUnidade = '';
|
||||||
String codSus = '';
|
String codSus = '';
|
||||||
bool edit = false;
|
bool edit = false;
|
||||||
@@ -149,9 +162,11 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
|
|
||||||
var pickDate = await showDatePicker(
|
var pickDate = await showDatePicker(
|
||||||
context: context,
|
context: context,
|
||||||
|
locale: Locale('pt','BR'),
|
||||||
initialDate: DateTime.now(),
|
initialDate: DateTime.now(),
|
||||||
firstDate: DateTime(1900),
|
firstDate: DateTime(1900),
|
||||||
lastDate: DateTime(2024));
|
lastDate: DateTime.now()
|
||||||
|
);
|
||||||
if (pickDate != null) {
|
if (pickDate != null) {
|
||||||
setState(() {
|
setState(() {
|
||||||
if(type == 'birth'){
|
if(type == 'birth'){
|
||||||
@@ -180,13 +195,35 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
return formattedDate;
|
return formattedDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getEtniasIndigenas()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM ETNIAS_INDIGENAS";
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
for(int i = 0; list.length > i ; i++ ){
|
||||||
|
listEtniasIndigenas.add(DropDownDataStringModel(cod: list[i]['ID_ETNIA_INDIGENA'], title: list[i]['DESC_ETNIA_INDIGENA']));
|
||||||
|
}
|
||||||
|
print('antes');
|
||||||
|
print(listEtniasIndigenas.length);
|
||||||
|
List<DropDownDataStringModel> listaSemDuplicatas = listEtniasIndigenas.toSet().toList();
|
||||||
|
|
||||||
|
listEtniasIndigenas = listaSemDuplicatas;
|
||||||
|
print('depois');
|
||||||
|
print(listEtniasIndigenas.length);
|
||||||
|
|
||||||
|
if(widget.listData.length!=0){
|
||||||
|
getData();
|
||||||
|
edit = true;
|
||||||
|
showTab = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
getUnit()async{
|
getUnit()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var queryControl = "SELECT * FROM CONTROLE_INTERNO";
|
var queryControl = "SELECT * FROM CONTROLE_INTERNO";
|
||||||
List listControl = await db.rawQuery(queryControl);
|
List listControl = await db.rawQuery(queryControl);
|
||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
_prefService.readCacheUnidade('idUnidade').then((listUnidade)async{
|
_prefService.readCacheUnidade().then((listUnidade)async{
|
||||||
idUnidade =listUnidade[0];
|
idUnidade =listUnidade[0].toString();
|
||||||
});
|
});
|
||||||
setState(() {
|
setState(() {
|
||||||
unitController.text = listControl[0]['NOME_UNIDADE'];
|
unitController.text = listControl[0]['NOME_UNIDADE'];
|
||||||
@@ -197,13 +234,11 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var queryCity = "SELECT * FROM ARGS";
|
var queryCity = "SELECT * FROM ARGS";
|
||||||
List listCity = await db.rawQuery(queryCity);
|
List listCity = await db.rawQuery(queryCity);
|
||||||
// print(listCity);
|
|
||||||
setState(() {
|
setState(() {
|
||||||
cityController.text = '${listCity[0]['NAME_CITY_FRONT']} - ${listCity[0]['COD_STATE']}'.toUpperCase();
|
cityController.text = '${listCity[0]['NAME_CITY_FRONT']} - ${listCity[0]['COD_STATE']}'.toUpperCase();
|
||||||
codIBGEController.text = listCity[0]['COD_IBGE'].toString();
|
codIBGEController.text = listCity[0]['COD_IBGE'].toString();
|
||||||
});
|
});
|
||||||
String city = MainControllers().replaceDefaul(listCity[0]['NAME_CITY_FRONT']);
|
String city = MainControllers().replaceDefaul(listCity[0]['NAME_CITY_FRONT']);
|
||||||
// print(city);
|
|
||||||
resultListResid = await DBQuerys().buscaMunicipioporNome(city);
|
resultListResid = await DBQuerys().buscaMunicipioporNome(city);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -214,6 +249,11 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
for(int i=0; listVillageDB.length > i;i++){
|
for(int i=0; listVillageDB.length > i;i++){
|
||||||
villageDB.add('${listVillageDB[i]['NO_BAIRRO']}');
|
villageDB.add('${listVillageDB[i]['NO_BAIRRO']}');
|
||||||
}
|
}
|
||||||
|
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']);
|
||||||
|
}
|
||||||
|
}
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -224,16 +264,12 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
for(int i=0; list.length > i;i++){
|
for(int i=0; list.length > i;i++){
|
||||||
typeStreetDB.add('${list[i]['NO_LOGR_TIPO']}');
|
typeStreetDB.add('${list[i]['NO_LOGR_TIPO']}');
|
||||||
}
|
}
|
||||||
// print('oque');
|
|
||||||
// print(typeStreetDB);
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
loadStreetDB()async{
|
loadStreetDB()async{
|
||||||
streetDB=[];
|
streetDB=[];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $idUsuario";
|
|
||||||
// {ID_LOGR_ENDERECO: 14, ID_LOGR_TIPO: 27, DESC_LOGR_ENDERECO: NICOLAU MAROTTI, ID_BAIRRO: 135},
|
|
||||||
var query = "SELECT * FROM LOGRADOUROS_ENDERECOS WHERE ID_BAIRRO = $idBairro AND ID_LOGR_TIPO = $idTipo ORDER BY DESC_LOGR_ENDERECO";
|
var query = "SELECT * FROM LOGRADOUROS_ENDERECOS WHERE ID_BAIRRO = $idBairro AND ID_LOGR_TIPO = $idTipo ORDER BY DESC_LOGR_ENDERECO";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
|
|
||||||
@@ -323,19 +359,26 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
checkCNS = 'ok';
|
checkCNS = 'ok';
|
||||||
}
|
}
|
||||||
if((selectClassification!='OUTRO MUNICIPIO' && selectCountry == 'BRASIL' && selectStreet == null) ||
|
if((selectClassification!='OUTRO MUNICIPIO' && selectCountry == 'BRASIL' && selectStreet == null) ||
|
||||||
(selectStreet!=null && (cepController.text.isEmpty || cepController.text.length!=8)) ||
|
(selectClassification!='OUTRO MUNICIPIO' && selectStreet!=null && (cepController.text.isEmpty || cepController.text.length!=10)) ||
|
||||||
(selectStreet!=null && numberController.text.isEmpty) ||
|
(selectClassification!='OUTRO MUNICIPIO' && selectStreet!=null && numberController.text.isEmpty) ||
|
||||||
(selectTypeStreet == null && selectClassification!='OUTRO MUNICIPIO') ||
|
(selectTypeStreet == null && selectClassification!='OUTRO MUNICIPIO') ||
|
||||||
(selectVillage == null && (selectCountry == 'BRASIL' && selectClassification!='OUTRO MUNICIPIO')) ||
|
(selectVillage == null && (selectCountry == 'BRASIL' && selectClassification!='OUTRO MUNICIPIO')) ||
|
||||||
(cityController.text.isEmpty && selectCountry!='OUTRO') ||
|
(cityController.text.isEmpty && selectCountry!='OUTRO') ||
|
||||||
selectCountry == null
|
selectCountry == null
|
||||||
){
|
){
|
||||||
checkClassification = true;
|
checkClassification = true;
|
||||||
|
print('selectClassification: $selectClassification');
|
||||||
|
print('selectCountry: $selectCountry');
|
||||||
|
print('selectStreet: $selectStreet');
|
||||||
|
print('cepController: ${cepController.text}');
|
||||||
|
print('selectVillage: $selectVillage');
|
||||||
|
print('cityController: ${cityController.text}');
|
||||||
print('erro no end');
|
print('erro no end');
|
||||||
}
|
}
|
||||||
|
|
||||||
//ok
|
//ok
|
||||||
if( nameController.text.isEmpty ||
|
if( nameController.text.isEmpty ||
|
||||||
|
!nameController.text.contains(' ') ||
|
||||||
selectGender==null ||
|
selectGender==null ||
|
||||||
selectNaturality==null ||
|
selectNaturality==null ||
|
||||||
selectBreed==null ||
|
selectBreed==null ||
|
||||||
@@ -344,8 +387,8 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
selectCountry==null ||
|
selectCountry==null ||
|
||||||
date == 'Data de Nascimento'||
|
date == 'Data de Nascimento'||
|
||||||
cityBirthController.text.isEmpty ||
|
cityBirthController.text.isEmpty ||
|
||||||
messageDDDController.text.isEmpty ||
|
mobileDDDController.text.isEmpty ||
|
||||||
messageController.text.isEmpty ||
|
mobileController.text.isEmpty ||
|
||||||
checkMother ||
|
checkMother ||
|
||||||
checkFather ||
|
checkFather ||
|
||||||
checkClassification||
|
checkClassification||
|
||||||
@@ -371,7 +414,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//sdsafdsf
|
||||||
saveCitizen()async{
|
saveCitizen()async{
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_CIDADAO' : idCidadao,
|
'ID_CIDADAO' : idCidadao,
|
||||||
@@ -387,6 +430,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'NO_MUNICIPIO_NASC' : resultListNasc[0]['NO_MUNICIPIO'],
|
'NO_MUNICIPIO_NASC' : resultListNasc[0]['NO_MUNICIPIO'],
|
||||||
'ESTADO_UF_NASC' : resultListNasc[0]['UF_ESTADO'],
|
'ESTADO_UF_NASC' : resultListNasc[0]['UF_ESTADO'],
|
||||||
'ID_ETNIA' : selectBreedCod,
|
'ID_ETNIA' : selectBreedCod,
|
||||||
|
'ID_ETNIA_INDIGENA' : selectEtniaIndigena==null?0:selectEtniaIndigena!.cod.toString().trim(),
|
||||||
'ID_ESCOLARIDADE' : selectScoolingCod,
|
'ID_ESCOLARIDADE' : selectScoolingCod,
|
||||||
'ID_DEFICIENCIA' : selectDeficiencyCod,
|
'ID_DEFICIENCIA' : selectDeficiencyCod,
|
||||||
'NOME_MAE' : nameMotherController.text,
|
'NOME_MAE' : nameMotherController.text,
|
||||||
@@ -399,16 +443,16 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'CLASSIFICACAO' : selectClassificationCOD,
|
'CLASSIFICACAO' : selectClassificationCOD,
|
||||||
'CLASSIFICACAO_SUB' : selectSubdivisionCOD,
|
'CLASSIFICACAO_SUB' : selectSubdivisionCOD,
|
||||||
'NUM_FAMILIA' : numberFamilyController.text,
|
'NUM_FAMILIA' : numberFamilyController.text,
|
||||||
'ID_PAIS_RESID' : selectCountry=='BRASIL'?33:0,
|
'ID_PAIS_RESID' : selectCountry!.ID_PAIS_RESID,
|
||||||
'ID_MUNICIPIO_RESID' : resultListResid[0]['ID_MUNICIPIO'],
|
'ID_MUNICIPIO_RESID' : selectCountry!.ID_PAIS_RESID!=33?0:resultListResid[0]['ID_MUNICIPIO'],
|
||||||
'NO_MUNICIPIO_RESID' : resultListResid[0]['NO_MUNICIPIO'],
|
'NO_MUNICIPIO_RESID' : selectCountry!.ID_PAIS_RESID!=33?'':resultListResid[0]['NO_MUNICIPIO'],
|
||||||
'ESTADO_UF_RESID' : resultListResid[0]['UF_ESTADO'],
|
'ESTADO_UF_RESID' : selectCountry!.ID_PAIS_RESID!=33?'':resultListResid[0]['UF_ESTADO'],
|
||||||
'CODIGO_IBGE_RESID' : codIBGEController.text,
|
'CODIGO_IBGE_RESID' : codIBGEController.text,
|
||||||
'NO_BAIRRO_LOGR' : selectVillage,
|
'NO_BAIRRO_LOGR' : selectVillage,
|
||||||
'ID_LOGR_TIPO' : idTipo,
|
'ID_LOGR_TIPO' : idTipo,
|
||||||
'NOME_LOGR' : selectStreet,
|
'NOME_LOGR' : selectStreet,
|
||||||
'CEP_LOGR' : cepController.text.isNotEmpty?int.parse(cepController.text):0,
|
'CEP_LOGR' : cepController.text.isNotEmpty?int.parse(cepController.text.replaceAll('-', '').replaceAll('.', '')):0,
|
||||||
'NUMERO_LOGR' : numberController.text.isNotEmpty?int.parse(numberController.text):0,
|
'NUMERO_LOGR' : numberController.text.isNotEmpty && numberController.text!='S/N'?int.parse(numberController.text):0,
|
||||||
'LOTEAMENTO_LOGR' : selectSubdivision,
|
'LOTEAMENTO_LOGR' : selectSubdivision,
|
||||||
'COMPL_LOGR' : complementController.text,
|
'COMPL_LOGR' : complementController.text,
|
||||||
'PONTO_REFERENCIA' : referencePointController.text,
|
'PONTO_REFERENCIA' : referencePointController.text,
|
||||||
@@ -421,10 +465,10 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'NUM_RECADO' : messageController.text.isNotEmpty?int.parse(messageController.text):0,
|
'NUM_RECADO' : messageController.text.isNotEmpty?int.parse(messageController.text):0,
|
||||||
'EMAIL' : emailController.text,
|
'EMAIL' : emailController.text,
|
||||||
'OBSERVACOES' : observationController.text,
|
'OBSERVACOES' : observationController.text,
|
||||||
'CPF' : CPFController.text.isNotEmpty?int.parse(CPFController.text):0,
|
'CPF' : CPFController.text.isNotEmpty?int.parse(CPFController.text.replaceAll('.', '').replaceAll('-', '')):0,
|
||||||
'CNS' : checkCNS == 'ok'&& CNSController.text.isNotEmpty?int.parse(CNSController.text):999999999999999,
|
'CNS' : checkCNS == 'ok'&& CNSController.text.isNotEmpty?int.parse(CNSController.text):999999999999999,
|
||||||
'TITULO_ELEITOR' : voterController.text,
|
'TITULO_ELEITOR' : voterController.text,
|
||||||
'RG_NUMERO' : RGController.text.isNotEmpty?int.parse(RGController.text):0,
|
'RG_NUMERO' : RGController.text.isNotEmpty && RGController.text!='null'?int.parse(RGController.text):0,
|
||||||
'RG_COMPLEMENTO' : RGComplementController.text,
|
'RG_COMPLEMENTO' : RGComplementController.text,
|
||||||
'RG_UF' : selectRGUF,
|
'RG_UF' : selectRGUF,
|
||||||
'RG_ORGAO' : RGOrganController.text,
|
'RG_ORGAO' : RGOrganController.text,
|
||||||
@@ -441,24 +485,18 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'ESTADO_UF_CTPS' : selectCTPSUF,
|
'ESTADO_UF_CTPS' : selectCTPSUF,
|
||||||
'NUM_PIS_PASEP' : PISController.text.isNotEmpty?int.parse(PISController.text):0,
|
'NUM_PIS_PASEP' : PISController.text.isNotEmpty?int.parse(PISController.text):0,
|
||||||
'FL_RETIROU_CARTAO' : enableCityCard?'S':'N',
|
'FL_RETIROU_CARTAO' : enableCityCard?'S':'N',
|
||||||
'NUM_NIS' : NISController.text.isNotEmpty?int.parse(NISController.text):0,
|
'NUM_NIS' : NISController.text.isNotEmpty && NISController.text!=null && NISController.text.toLowerCase().trim()!='null' ?int.parse(NISController.text):0,
|
||||||
//aqui
|
|
||||||
'NUM_PROT_CROSS' : '',
|
'NUM_PROT_CROSS' : '',
|
||||||
'RENDA_MENSAL' : incomeController.text.isNotEmpty?double.parse(incomeController.text.replaceAll('R\$ ', '').replaceAll('.', '').replaceAll(',', '.')):0,
|
'RENDA_MENSAL' : incomeController.text.isNotEmpty?double.parse(incomeController.text.replaceAll('R\$ ', '').replaceAll('.', '').replaceAll(',', '.')):0,
|
||||||
'PROFISSAO' : professionalController.text,
|
'PROFISSAO' : professionalController.text,
|
||||||
'DT_OBITO' : dateDeathDB,
|
'DT_OBITO' : dateDeathDB,
|
||||||
'DECLARACAO_OBITO' : '',
|
'DECLARACAO_OBITO' : '',
|
||||||
'BLOQUEIO' : enableBlocked?1:0,
|
'BLOQUEIO' : enableBlocked?1:0,
|
||||||
'ORIGEM' : 'A',
|
'ORIGEM' : editing?'A':'C',
|
||||||
'DT_HORA_CADASTRO' : DateTime.now().toString(),
|
'DT_HORA_CADASTRO' : DateTime.now().toString(),
|
||||||
// 'ID_USUARIO_CADASTRO' : '',
|
|
||||||
//só quando for feito o atendimento domicíliar
|
|
||||||
'ID_DOMICILIO' : '',
|
|
||||||
//só quando for feito um atendimento
|
|
||||||
'ATENDIMENTOS' : '',
|
|
||||||
'SINCRONIZADO' : 'N',
|
'SINCRONIZADO' : 'N',
|
||||||
};
|
};
|
||||||
await DbSqliteSync().insertCidadaos(row,editing?'update':'new',codSus,0).then((value){
|
await DbSqliteSync().insertCidadaos(row,editing?'update':'new',codSus).then((value){
|
||||||
if(checkCNS != 'ok' || CNSController.text.isEmpty){
|
if(checkCNS != 'ok' || CNSController.text.isEmpty){
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
context,
|
context,
|
||||||
@@ -483,6 +521,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'OK'
|
'OK'
|
||||||
);
|
);
|
||||||
setState(() {
|
setState(() {
|
||||||
|
edit = true;
|
||||||
showTab = true;
|
showTab = true;
|
||||||
});
|
});
|
||||||
// print(value);
|
// print(value);
|
||||||
@@ -508,8 +547,6 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getData()async{
|
getData()async{
|
||||||
// print('passou');
|
|
||||||
// print(widget.listData);
|
|
||||||
idCidadao = widget.listData[0]['ID_CIDADAO'];
|
idCidadao = widget.listData[0]['ID_CIDADAO'];
|
||||||
codSus = widget.listData[0]['CD_USUARIO_SUS'];
|
codSus = widget.listData[0]['CD_USUARIO_SUS'];
|
||||||
nameController.text = widget.listData[0]['NOME_CIDADAO'];
|
nameController.text = widget.listData[0]['NOME_CIDADAO'];
|
||||||
@@ -525,6 +562,9 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
spouseController.text = widget.listData[0]['NOME_CONJUGE'];
|
spouseController.text = widget.listData[0]['NOME_CONJUGE'];
|
||||||
|
if(spouseController.text.isNotEmpty){
|
||||||
|
enableSpouse = true;
|
||||||
|
}
|
||||||
selectNaturalityCod = widget.listData[0]['NACIONALIDADE'];
|
selectNaturalityCod = widget.listData[0]['NACIONALIDADE'];
|
||||||
if(selectNaturalityCod==1){
|
if(selectNaturalityCod==1){
|
||||||
selectNaturality = 'BRASILEIRO';
|
selectNaturality = 'BRASILEIRO';
|
||||||
@@ -545,6 +585,18 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
selectBreed = ConstVariable().listBreed[i].title;
|
selectBreed = ConstVariable().listBreed[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(widget.listData[0]['ID_ETNIA_INDIGENA']!=null &&widget.listData[0]['ID_ETNIA_INDIGENA']!=''){
|
||||||
|
print('${widget.listData[0]['ID_ETNIA_INDIGENA']}');
|
||||||
|
for(int i = 0; listEtniasIndigenas.length >i;i++){
|
||||||
|
if(listEtniasIndigenas[i].cod == widget.listData[0]['ID_ETNIA_INDIGENA'].toString().trim()){
|
||||||
|
|
||||||
|
selectEtniaIndigena = DropDownDataStringModel(cod: listEtniasIndigenas[i].cod.toString().trim(), title: listEtniasIndigenas[i].title.toString().trim());
|
||||||
|
print('load');
|
||||||
|
print(selectEtniaIndigena!.cod);
|
||||||
|
print(selectEtniaIndigena!.title);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
for(int i = 0;ConstVariable().listScooling.length >i;i++){
|
for(int i = 0;ConstVariable().listScooling.length >i;i++){
|
||||||
if(ConstVariable().listScooling[i].cod == widget.listData[0]['ID_ESCOLARIDADE']){
|
if(ConstVariable().listScooling[i].cod == widget.listData[0]['ID_ESCOLARIDADE']){
|
||||||
selectScoolingCod = ConstVariable().listScooling[i].cod;
|
selectScoolingCod = ConstVariable().listScooling[i].cod;
|
||||||
@@ -582,7 +634,19 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
selectSubdivisionCOD = widget.listData[0]['CLASSIFICACAO_SUB']=='null'?0:widget.listData[0]['CLASSIFICACAO_SUB'];
|
selectSubdivisionCOD = widget.listData[0]['CLASSIFICACAO_SUB']=='null'?0:widget.listData[0]['CLASSIFICACAO_SUB'];
|
||||||
}
|
}
|
||||||
numberFamilyController.text = widget.listData[0]['NUM_FAMILIA'].toString();
|
numberFamilyController.text = widget.listData[0]['NUM_FAMILIA'].toString();
|
||||||
selectCountry = widget.listData[0]['ID_PAIS_RESID']==33?'BRASIL':'OUTRO';
|
|
||||||
|
if(widget.listData[0]['ID_PAIS_RESID']!=0 && widget.listData[0]['ID_PAIS_RESID']!=null){
|
||||||
|
for(int i = 0; ConstVariable().paises.length > i;i++){
|
||||||
|
if(ConstVariable().paises[i].ID_PAIS_RESID == widget.listData[0]['ID_PAIS_RESID']){
|
||||||
|
print('ID_PAIS_RESID');
|
||||||
|
print(widget.listData[0]['ID_PAIS_RESID']);
|
||||||
|
selectPaisResidencia = ConstVariable().paises[i].PAIS;
|
||||||
|
selectCountry = ConstVariable().paises[i];
|
||||||
|
// print(selectCountry!.ID_PAIS_RESID);
|
||||||
|
// print(selectCountry!.PAIS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
int codCity = widget.listData[0]['ID_MUNICIPIO_RESID'];
|
int codCity = widget.listData[0]['ID_MUNICIPIO_RESID'];
|
||||||
List listCity = await DBQuerys().buscaMunicipioporId(codCity);
|
List listCity = await DBQuerys().buscaMunicipioporId(codCity);
|
||||||
cityController.text = listCity.length!=0?listCity[0]['NO_MUNICIPIO']+' - SP':'';
|
cityController.text = listCity.length!=0?listCity[0]['NO_MUNICIPIO']+' - SP':'';
|
||||||
@@ -596,7 +660,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
}
|
}
|
||||||
List listTypeStreet = await DBQuerys().buscaTipoLogradouroPorId(idTipo);
|
List listTypeStreet = await DBQuerys().buscaTipoLogradouroPorId(idTipo);
|
||||||
selectTypeStreet = listTypeStreet[0]['NO_LOGR_TIPO'];
|
selectTypeStreet = listTypeStreet[0]['NO_LOGR_TIPO'];
|
||||||
cepController.text = widget.listData[0]['CEP_LOGR'].toString()=='null'?'': widget.listData[0]['CEP_LOGR'].toString();
|
cepController.text = widget.listData[0]['CEP_LOGR'].toString()=='null'?'': cepfMaskFormatter.maskText(widget.listData[0]['CEP_LOGR'].toString());
|
||||||
numberController.text = widget.listData[0]['NUMERO_LOGR'].toString()??'';
|
numberController.text = widget.listData[0]['NUMERO_LOGR'].toString()??'';
|
||||||
// print('numberController');
|
// print('numberController');
|
||||||
// print(numberController.text);
|
// print(numberController.text);
|
||||||
@@ -621,22 +685,29 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
messageController.text = widget.listData[0]['NUM_RECADO'].toString()=='null'?'':widget.listData[0]['NUM_RECADO'].toString();
|
messageController.text = widget.listData[0]['NUM_RECADO'].toString()=='null'?'':widget.listData[0]['NUM_RECADO'].toString();
|
||||||
emailController.text = widget.listData[0]['EMAIL'];
|
emailController.text = widget.listData[0]['EMAIL'];
|
||||||
observationController.text = widget.listData[0]['OBSERVACOES'];
|
observationController.text = widget.listData[0]['OBSERVACOES'];
|
||||||
CPFController.text = widget.listData[0]['CPF'].toString();
|
CPFController.text = cpfMaskFormatter.maskText(widget.listData[0]['CPF'].toString());
|
||||||
CNSController.text = widget.listData[0]['CNS'];
|
CNSController.text = widget.listData[0]['CNS'];
|
||||||
voterController.text = widget.listData[0]['TITULO_ELEITOR'].toString()??'';
|
voterController.text = widget.listData[0]['TITULO_ELEITOR']==null?'':widget.listData[0]['TITULO_ELEITOR'].toString()??'';
|
||||||
RGController.text = widget.listData[0]['RG_NUMERO'].toString()=='null'?'':widget.listData[0]['RG_NUMERO'].toString();
|
RGController.text = widget.listData[0]['RG_NUMERO'].toString()==null?'':widget.listData[0]['RG_NUMERO'].toString();
|
||||||
RGComplementController.text = widget.listData[0]['RG_COMPLEMENTO'].toString();
|
RGComplementController.text = widget.listData[0]['RG_COMPLEMENTO'].toString()==null?'':widget.listData[0]['RG_COMPLEMENTO'].toString();
|
||||||
selectRGUF = widget.listData[0]['RG_UF']??'';
|
selectRGUF = widget.listData[0]['RG_UF']??'--';
|
||||||
RGOrganController.text = widget.listData[0]['RG_ORGAO']==null?'':widget.listData[0]['RG_ORGAO'];
|
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'];
|
RGDateController.text = widget.listData[0]['RG_DATA_EMISSAO']==null?'':widget.listData[0]['RG_DATA_EMISSAO'];
|
||||||
RGDateDB = RGDateController.text;
|
RGDateDB = RGDateController.text;
|
||||||
selectTypeCertificateCod = widget.listData[0]['TIPO_CERTIDAO']??0;
|
|
||||||
|
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++){
|
for(int i = 0;ConstVariable().itensCertificate.length >i;i++){
|
||||||
if(ConstVariable().itensCertificate[i].cod == selectTypeCertificateCod){
|
if(ConstVariable().itensCertificate[i].cod == selectTypeCertificateCod){
|
||||||
selectTypeCertificate = ConstVariable().itensCertificate[i].title;
|
selectTypeCertificate = ConstVariable().itensCertificate[i].title;
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
numberCertificateController.text = widget.listData[0]['NUM_CERTIDAO']??'';
|
numberCertificateController.text = widget.listData[0]['NUM_CERTIDAO']??'';
|
||||||
nameCertificateController.text = widget.listData[0]['CARTORIO_CERTIDAO']??'';
|
nameCertificateController.text = widget.listData[0]['CARTORIO_CERTIDAO']??'';
|
||||||
bookCertificateController.text = widget.listData[0]['LIVRO_CERTIDAO']??'';
|
bookCertificateController.text = widget.listData[0]['LIVRO_CERTIDAO']??'';
|
||||||
@@ -658,22 +729,27 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var cpfMaskFormatter = MaskTextInputFormatter(
|
||||||
|
mask: '###.###.###-##',
|
||||||
|
filter: { "#": RegExp(r'[0-9]') },
|
||||||
|
);
|
||||||
|
var cepfMaskFormatter = MaskTextInputFormatter(
|
||||||
|
mask: '##.###-###',
|
||||||
|
filter: { "#": RegExp(r'[0-9]') },
|
||||||
|
);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
searchCityBirthController.addListener(_searchCityBirth);
|
searchCityBirthController.addListener(_searchCityBirth);
|
||||||
searchCityController.addListener(_searchCity);
|
searchCityController.addListener(_searchCity);
|
||||||
|
getEtniasIndigenas();
|
||||||
getCity();
|
getCity();
|
||||||
getUnit();
|
getUnit();
|
||||||
loadVillgeDB();
|
loadVillgeDB();
|
||||||
loadTypeStreetDB();
|
loadTypeStreetDB();
|
||||||
loadSubdivisionsDB();
|
loadSubdivisionsDB();
|
||||||
loadLists();
|
loadLists();
|
||||||
if(widget.listData.length!=0){
|
|
||||||
getData();
|
|
||||||
edit = true;
|
|
||||||
showTab = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -683,16 +759,16 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: () async => await OnBackButton().onBackButton(context),
|
onWillPop:edit?null: () async => await OnBackButton().onBackButton(context, widget.username),
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Cidadão'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Cidadão',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
child: ListView(
|
child: ListView(
|
||||||
children: [
|
children: [
|
||||||
SubtitleAppbarCitizen(title: 1,edit: showTab,listData:widget.listData),
|
SubtitleAppbarCitizen(title: 1,edit: showTab,listData:widget.listData,username: widget.username),
|
||||||
showCheckError?Card(
|
showCheckError?Card(
|
||||||
margin: EdgeInsets.all(10),
|
margin: EdgeInsets.all(10),
|
||||||
child: Container(
|
child: Container(
|
||||||
@@ -748,7 +824,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
margin: EdgeInsets.all(10),
|
margin: EdgeInsets.all(10),
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
TitleContainers(title: 'Indentificação'),
|
TitleContainers(title: 'Identificação'),
|
||||||
Row(
|
Row(
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
@@ -856,6 +932,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
controller: spouseController,
|
controller: spouseController,
|
||||||
subtitle: 'Cônjuge',
|
subtitle: 'Cônjuge',
|
||||||
@@ -867,6 +944,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
enabled: enableSpouse,
|
enabled: enableSpouse,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
|
selectMaritalStatus=='CASADO(A)'&& enableSpouse && mandatory?ErrorDefault():Container(),
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
list: ConstVariable().listNationality,
|
list: ConstVariable().listNationality,
|
||||||
subtitle: 'Naturalidade',
|
subtitle: 'Naturalidade',
|
||||||
@@ -879,22 +957,70 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
setState(() {
|
setState(() {
|
||||||
selectNaturality = value!;
|
selectNaturality = value!;
|
||||||
if(selectNaturality!='BRASILEIRO'){
|
if(selectNaturality!='BRASILEIRO'){
|
||||||
|
selectCountry = null;
|
||||||
if(selectNaturality=='ESTRANGEIRO'){
|
if(selectNaturality=='ESTRANGEIRO'){
|
||||||
selectNaturalityCod = 2;
|
selectNaturalityCod = 2;
|
||||||
}else{
|
}else{
|
||||||
selectNaturalityCod = 3;
|
selectNaturalityCod = 3;
|
||||||
}
|
}
|
||||||
cityBirthController.text = 'MUNICIPIO IGNORADO - SP';
|
cityBirthController.text = 'MUNICIPIO IGNORADO';
|
||||||
}else{
|
}else{
|
||||||
cityBirthController.text = '';
|
cityBirthController.text = '';
|
||||||
selectNaturalityCod = 1;
|
selectNaturalityCod = 1;
|
||||||
|
selectCountry = PaisModelo(ID_PAIS_RESID: 33, PAIS: 'BRASIL');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
selectNaturality==null&& mandatory?ErrorDefault():Container(),
|
selectNaturality==null&& mandatory?ErrorDefault():Container(),
|
||||||
|
!showSelectCountry?GestureDetector(
|
||||||
|
onTap: ()=>setState(()=>showSelectCountry=true),
|
||||||
|
child: Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: width*0.7,
|
||||||
|
child: TitleInput(title:'País de Nascimento')
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.only(left: 10),
|
||||||
|
width: width*0.7,
|
||||||
|
alignment: Alignment.centerLeft,
|
||||||
|
height: 50,
|
||||||
|
color: Colors.white,
|
||||||
|
child: TextDefault(
|
||||||
|
color: Colors.black,
|
||||||
|
fontSize: 15,
|
||||||
|
text:selectCountry==null?'SELECIONE UM PAÍS': selectCountry!.PAIS
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
):
|
||||||
|
Column(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: width*0.7,
|
||||||
|
child: TitleInput(title:'País de Nascimento')
|
||||||
|
),
|
||||||
|
DropDownButtonComPesquisaPaises(
|
||||||
|
list: ConstVariable().paises,
|
||||||
|
title: 'Pesquise o país',
|
||||||
|
select: selectCountry,
|
||||||
|
width: width*0.7,
|
||||||
|
onChanged: ( dynamic value){
|
||||||
|
setState(() {
|
||||||
|
selectCountry = value;
|
||||||
|
print(value.PAIS);
|
||||||
|
print(value.ID_PAIS_RESID);
|
||||||
|
showSelectCountry = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
GestureDetector(
|
GestureDetector(
|
||||||
onTap: cityBirthController.text == 'MUNICIPIO IGNORADO - SP' || edit?null:(){
|
onTap: cityBirthController.text == 'MUNICIPIO IGNORADO' || edit?null:(){
|
||||||
searchCityController.text = '';
|
searchCityController.text = '';
|
||||||
searchCityBirthController.text = '';
|
searchCityBirthController.text = '';
|
||||||
searchCity('birth');
|
searchCity('birth');
|
||||||
@@ -992,6 +1118,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
for(int i = 0;ConstVariable().listBreed.length >i;i++){
|
for(int i = 0;ConstVariable().listBreed.length >i;i++){
|
||||||
if(ConstVariable().listBreed[i].title == selectBreed){
|
if(ConstVariable().listBreed[i].title == selectBreed){
|
||||||
selectBreedCod = ConstVariable().listBreed[i].cod;
|
selectBreedCod = ConstVariable().listBreed[i].cod;
|
||||||
|
selectEtniaIndigena = null;
|
||||||
print(selectBreedCod);
|
print(selectBreedCod);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -999,6 +1126,20 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
},
|
},
|
||||||
),
|
),
|
||||||
selectBreed==null&& mandatory?ErrorDefault():Container(),
|
selectBreed==null&& mandatory?ErrorDefault():Container(),
|
||||||
|
DropDownEtniaIndigena(
|
||||||
|
title: 'Etnia Indígena',
|
||||||
|
width: width*0.69,
|
||||||
|
list: listEtniasIndigenas,
|
||||||
|
select: selectEtniaIndigena,
|
||||||
|
onChanged:!edit&&selectBreedCod!=5?null: (value){
|
||||||
|
setState(() {
|
||||||
|
selectEtniaIndigena = value!;
|
||||||
|
print(selectEtniaIndigena!.cod);
|
||||||
|
print(selectEtniaIndigena!.title);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
selectBreedCod==5 &&selectEtniaIndigena==null && mandatory?ErrorDefault():Container(),
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
list: listScooling,
|
list: listScooling,
|
||||||
subtitle: 'Escolaridade',
|
subtitle: 'Escolaridade',
|
||||||
@@ -1052,6 +1193,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
enabled: !enableMother && !edit,
|
enabled: !enableMother && !edit,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
|
!enableMother && nameMotherController.text.isEmpty && mandatory?ErrorDefault():Container(),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.65,
|
width: width*0.65,
|
||||||
title: 'Desconhece Mãe',
|
title: 'Desconhece Mãe',
|
||||||
@@ -1077,6 +1219,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
enabled: !enableFather && !edit,
|
enabled: !enableFather && !edit,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
|
!enableFather&& nameFatherController.text.isEmpty && mandatory?ErrorDefault():Container(),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.65,
|
width: width*0.65,
|
||||||
title: 'Desconhece Pai',
|
title: 'Desconhece Pai',
|
||||||
@@ -1181,7 +1324,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
selectClassificationCOD = 1;
|
selectClassificationCOD = 1;
|
||||||
}
|
}
|
||||||
changedCity();
|
changedCity();
|
||||||
selectCountry = 'BRASIL';
|
selectCountry = PaisModelo(ID_PAIS_RESID: 33, PAIS: 'BRASIL');
|
||||||
}
|
}
|
||||||
setState(() {});
|
setState(() {});
|
||||||
},
|
},
|
||||||
@@ -1217,6 +1360,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
children: [
|
children: [
|
||||||
TitleContainers(title: 'Endereço'),
|
TitleContainers(title: 'Endereço'),
|
||||||
Row(
|
Row(
|
||||||
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
height: height*0.4,
|
height: height*0.4,
|
||||||
@@ -1228,17 +1372,17 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
subtitle: 'Pais de Residência',
|
subtitle: 'País de Residência',
|
||||||
select: selectCountry,
|
select: selectPaisResidencia,
|
||||||
widthSubtitle: width*0.6,
|
widthSubtitle: width*0.6,
|
||||||
widthDropdown: width*0.69,
|
widthDropdown: width*0.69,
|
||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
hintDropdown: 'Pais de Residência',
|
hintDropdown: 'País de Residência',
|
||||||
onChanged:selectClassification!='OUTRO MUNICIPIO'?null:(value){
|
onChanged:selectClassification!='OUTRO MUNICIPIO'?null:(value){
|
||||||
setState(() {
|
setState(() {
|
||||||
selectCountry = value;
|
selectPaisResidencia = value;
|
||||||
if(selectCountry=='OUTRO'){
|
if(selectPaisResidencia=='OUTRO'){
|
||||||
cityController.text= 'MUNICIPIO IGNORADO - SP';
|
cityController.text= 'MUNICIPIO IGNORADO';
|
||||||
resultListResid = [{"ID_MUNICIPIO":1,"CODIGO_IBGE":"000000","NO_MUNICIPIO":"MUNICIPIO IGNORADO","UF_ESTADO":"--","ID_PAIS":33}];
|
resultListResid = [{"ID_MUNICIPIO":1,"CODIGO_IBGE":"000000","NO_MUNICIPIO":"MUNICIPIO IGNORADO","UF_ESTADO":"--","ID_PAIS":33}];
|
||||||
codIBGEController.text = '000000';
|
codIBGEController.text = '000000';
|
||||||
numberController.clear();
|
numberController.clear();
|
||||||
@@ -1266,9 +1410,9 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'OUTRO',
|
'OUTRO',
|
||||||
]
|
]
|
||||||
),
|
),
|
||||||
selectCountry==null&& mandatory?ErrorDefault():Container(),
|
selectPaisResidencia==null&& mandatory?ErrorDefault():Container(),
|
||||||
GestureDetector(
|
GestureDetector(
|
||||||
onTap: selectClassification!='OUTRO MUNICIPIO'|| cityController.text == 'MUNICIPIO IGNORADO - SP'?null: (){
|
onTap: selectClassification!='OUTRO MUNICIPIO'|| cityController.text == 'MUNICIPIO IGNORADO'?null: (){
|
||||||
searchCityController.text = '';
|
searchCityController.text = '';
|
||||||
searchCityBirthController.text = '';
|
searchCityBirthController.text = '';
|
||||||
searchCity('city');
|
searchCity('city');
|
||||||
@@ -1403,7 +1547,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
},
|
},
|
||||||
list: typeStreetDB
|
list: typeStreetDB
|
||||||
),
|
),
|
||||||
selectTypeStreet!='OUTRO MUNICIPIO' && selectTypeStreet == null && selectCountry == null&& mandatory?ErrorDefault():Container(),
|
selectClassification!='OUTRO MUNICIPIO' && selectTypeStreet == null && selectCountry == null && mandatory?ErrorDefault():Container(),
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
subtitle: 'Nome do Logradouro',
|
subtitle: 'Nome do Logradouro',
|
||||||
select: selectStreet,
|
select: selectStreet,
|
||||||
@@ -1422,14 +1566,30 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
typeInput: 'cep',
|
typeInput: 'cep',
|
||||||
controller: cepController,
|
controller: cepController,
|
||||||
subtitle: 'CEP(só números)',
|
subtitle: 'CEP(só números)',
|
||||||
errorInput: selectClassification!='OUTRO MUNICIPIO'&& cepController.text.isEmpty?'Campo Obrigatório':cepController.text.length!=8?'CEP incorreto':'',
|
errorInput: selectClassification!='OUTRO MUNICIPIO'&& cepController.text.isEmpty?'Campo Obrigatório':cepController.text.length!=10?'CEP incorreto':'',
|
||||||
labelInput: 'CEP(só números)',
|
labelInput: 'CEP(só números)',
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.2,
|
widthSubtitle: width*0.2,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
mandatory: mandatory,
|
mandatory: mandatory,
|
||||||
|
maxLength: 10,
|
||||||
enabled: selectClassification!='OUTRO MUNICIPIO' && !edit?true:false,
|
enabled: selectClassification!='OUTRO MUNICIPIO' && !edit?true:false,
|
||||||
onChanged: (v)=>setState((){}),
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [
|
||||||
|
FilteringTextInputFormatter.digitsOnly,
|
||||||
|
CepInputFormatter()
|
||||||
|
],
|
||||||
|
onChanged: (v){
|
||||||
|
if(cepController.text.length==10){
|
||||||
|
checkCEP = '';
|
||||||
|
}else{
|
||||||
|
checkCEP = 'CEP incompleto';
|
||||||
|
}
|
||||||
|
setState((){});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
checkCEP==''?Container():Container(
|
||||||
|
width: width*0.7,child: TextDefault(text: checkCEP,fontSize: 15,color: ColorPalette.red,)
|
||||||
),
|
),
|
||||||
Container(
|
Container(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
@@ -1454,7 +1614,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
setState(() {
|
setState(() {
|
||||||
checkBoxNumber = value!;
|
checkBoxNumber = value!;
|
||||||
if(checkBoxNumber){
|
if(checkBoxNumber){
|
||||||
numberController.text = '0';
|
numberController.text = 'S/N';
|
||||||
}else{
|
}else{
|
||||||
numberController.clear();
|
numberController.clear();
|
||||||
}
|
}
|
||||||
@@ -1559,9 +1719,12 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
labelInput: 'Telefone - DDD',
|
labelInput: 'Telefone - DDD',
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
|
maxLength: 3,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
@@ -1569,11 +1732,14 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
subtitle: 'Telefone (Só Números)',
|
subtitle: 'Telefone (Só Números)',
|
||||||
errorInput: 'Campo Obrigatório',
|
errorInput: 'Campo Obrigatório',
|
||||||
labelInput: 'Telefone(Só Números)',
|
labelInput: 'Telefone(Só Números)',
|
||||||
|
maxLength: 8,
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
@@ -1584,32 +1750,42 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
|
maxLength: 3,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
mandatory: false,
|
mandatory: mandatory,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
|
selectDeficiency==null&& mandatory?ErrorDefault():Container(),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
controller: mobileController,
|
controller: mobileController,
|
||||||
subtitle: 'Celular (Só Números)',
|
subtitle: 'Celular (Só Números)',
|
||||||
errorInput: 'Campo Obrigatório',
|
errorInput: 'Campo Obrigatório',
|
||||||
labelInput: 'Celular (Só Números)',
|
labelInput: 'Celular (Só Números)',
|
||||||
widthInput: width*0.7,
|
maxLength: 9,
|
||||||
widthSubtitle: width*0.7,
|
|
||||||
hintInput: 'Escreva aqui',
|
|
||||||
enabled: !edit,
|
|
||||||
mandatory: false,
|
|
||||||
onChanged: (v)=>setState((){}),
|
|
||||||
),
|
|
||||||
InputWithSubtitle(
|
|
||||||
controller: messageDDDController,
|
|
||||||
subtitle: 'Recado - DDD',
|
|
||||||
errorInput: 'Campo Obrigatório',
|
|
||||||
labelInput: 'Recado - DDD',
|
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
mandatory: mandatory,
|
mandatory: mandatory,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
selectDeficiency==null&& mandatory?ErrorDefault():Container(),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: messageDDDController,
|
||||||
|
subtitle: 'Recado - DDD',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Recado - DDD',
|
||||||
|
maxLength: 3,
|
||||||
|
widthInput: width*0.7,
|
||||||
|
widthSubtitle: width*0.7,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: !edit,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
@@ -1617,11 +1793,13 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
subtitle: 'Recado (Só Números)',
|
subtitle: 'Recado (Só Números)',
|
||||||
errorInput: 'Campo Obrigatório',
|
errorInput: 'Campo Obrigatório',
|
||||||
labelInput: 'Recado (Só Números)',
|
labelInput: 'Recado (Só Números)',
|
||||||
|
maxLength: 9,
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
mandatory: mandatory,
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
@@ -1634,8 +1812,19 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
onChanged: (v)=>setState((){}),
|
textInputType: TextInputType.emailAddress,
|
||||||
|
onChanged: (v){
|
||||||
|
if(emailController.text.contains('@') && emailController.text.contains('.')){
|
||||||
|
checkEmail = '';
|
||||||
|
}else{
|
||||||
|
checkEmail = 'E-mail incompleto';
|
||||||
|
}
|
||||||
|
setState((){});
|
||||||
|
},
|
||||||
),
|
),
|
||||||
|
checkEmail==''?Container():Container(
|
||||||
|
width: width*0.7,child: TextDefault(text: checkEmail,fontSize: 15,color: ColorPalette.red,)
|
||||||
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -1709,7 +1898,13 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
|
maxLength: 14,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [
|
||||||
|
FilteringTextInputFormatter.digitsOnly,
|
||||||
|
CpfInputFormatter()
|
||||||
|
],
|
||||||
onChanged: (v)async{
|
onChanged: (v)async{
|
||||||
if(CPFController.text.isNotEmpty){
|
if(CPFController.text.isNotEmpty){
|
||||||
checkCPF = await MainControllers().validaCPF(v,editing);
|
checkCPF = await MainControllers().validaCPF(v,editing);
|
||||||
@@ -1730,8 +1925,11 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
|
maxLength: 15,
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)async{
|
onChanged: (v)async{
|
||||||
//783107557570002
|
//783107557570002
|
||||||
if(CNSController.text.isNotEmpty){
|
if(CNSController.text.isNotEmpty){
|
||||||
@@ -1762,11 +1960,14 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
subtitle: 'RG',
|
subtitle: 'RG',
|
||||||
errorInput: 'Campo Obrigatório',
|
errorInput: 'Campo Obrigatório',
|
||||||
labelInput: 'RG',
|
labelInput: 'RG',
|
||||||
|
maxLength: 9,
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
@@ -1776,9 +1977,12 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
labelInput: 'RG - Complemento',
|
labelInput: 'RG - Complemento',
|
||||||
widthInput: width*0.7,
|
widthInput: width*0.7,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
|
maxLength: 1,
|
||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
@@ -1960,6 +2164,10 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [
|
||||||
|
FilteringTextInputFormatter.digitsOnly,
|
||||||
|
],
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
controller: numberCTPSController,
|
controller: numberCTPSController,
|
||||||
@@ -1971,6 +2179,8 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
hintInput: 'Escreva aqui',
|
hintInput: 'Escreva aqui',
|
||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
inputFormatters: [FilteringTextInputFormatter.digitsOnly,],
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
@@ -2046,7 +2256,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
color: ColorPalette.white,
|
color: edit?Colors.grey[200]:ColorPalette.disable,
|
||||||
margin: EdgeInsets.only(top: 5),
|
margin: EdgeInsets.only(top: 5),
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
child: TextFormField(
|
child: TextFormField(
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/service/db/db_querys.dart';
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
import 'package:rkm/widgets/title_containers.dart';
|
import 'package:rkm/widgets/title_containers.dart';
|
||||||
@@ -18,7 +19,8 @@ import '../../widgets/switch_with_subtitle.dart';
|
|||||||
import '../../widgets/text_default.dart';
|
import '../../widgets/text_default.dart';
|
||||||
class RegisterHomeScreen extends StatefulWidget {
|
class RegisterHomeScreen extends StatefulWidget {
|
||||||
List listData;
|
List listData;
|
||||||
RegisterHomeScreen({required this.listData});
|
String username;
|
||||||
|
RegisterHomeScreen({required this.listData, required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<RegisterHomeScreen> createState() => _RegisterHomeScreenState();
|
State<RegisterHomeScreen> createState() => _RegisterHomeScreenState();
|
||||||
@@ -32,7 +34,17 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
var NOME_RESP_CADASTRO = TextEditingController();
|
var NOME_RESP_CADASTRO = TextEditingController();
|
||||||
var CNES_RESP_CADASTRO = TextEditingController();
|
var CNES_RESP_CADASTRO = TextEditingController();
|
||||||
var DT_CADASTRO = TextEditingController();
|
var DT_CADASTRO = TextEditingController();
|
||||||
|
var RENDA_TOTAL_FAMILIAR = TextEditingController();
|
||||||
|
var RENDA_MENSAL = TextEditingController();
|
||||||
|
var ANO_VEICULO = TextEditingController();
|
||||||
|
var MODELO_VEICULO = TextEditingController();
|
||||||
|
var VALOR_PARCELA_FINANCIAMENTO = TextEditingController();
|
||||||
|
var VALOR_PARCELA_EMPRESTIMO = TextEditingController();
|
||||||
|
var PROFISSAO = TextEditingController();
|
||||||
|
|
||||||
|
bool POSSUI_FINANCIAMENTO = false;
|
||||||
|
bool POSSUI_EMPRESTIMO = false;
|
||||||
|
bool POSSUI_VEICULO = false;
|
||||||
bool FORA_AREA = false;
|
bool FORA_AREA = false;
|
||||||
bool DISPONIBILIDADE_ENERGIA = false;
|
bool DISPONIBILIDADE_ENERGIA = false;
|
||||||
bool FL_ANIMAIS = false;
|
bool FL_ANIMAIS = false;
|
||||||
@@ -60,8 +72,9 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
List<String> listSanitary = [];
|
List<String> listSanitary = [];
|
||||||
List<String> listCBO = [];
|
List<String> listCBO = [];
|
||||||
List<String> listINEPROF = [];
|
List<String> listINEPROF = [];
|
||||||
|
List listaINE = [];
|
||||||
|
|
||||||
String idUsuario = '';
|
int idUsuario = 0;
|
||||||
String idUnidade = '';
|
String idUnidade = '';
|
||||||
String nomeUnidade = '';
|
String nomeUnidade = '';
|
||||||
String INE_DB='';
|
String INE_DB='';
|
||||||
@@ -109,9 +122,11 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
escolherprazoInicio(BuildContext context) async {
|
escolherprazoInicio(BuildContext context) async {
|
||||||
var pickDate = await showDatePicker(
|
var pickDate = await showDatePicker(
|
||||||
context: context,
|
context: context,
|
||||||
|
locale: Locale('pt','BR'),
|
||||||
initialDate: DateTime.now(),
|
initialDate: DateTime.now(),
|
||||||
firstDate: DateTime(2022),
|
firstDate: DateTime(2022),
|
||||||
lastDate: DateTime(2025));
|
lastDate: DateTime(DateTime.now().year,12,31)
|
||||||
|
);
|
||||||
if (pickDate != null) {
|
if (pickDate != null) {
|
||||||
setState(() {
|
setState(() {
|
||||||
date_cad = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}';
|
date_cad = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}';
|
||||||
@@ -128,14 +143,14 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
|
|
||||||
getUser(){
|
getUser(){
|
||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
_prefService.readCacheIdUsuario('idUsuario').then((value){
|
_prefService.readCacheIDUser().then((value){
|
||||||
if(value != null){
|
if(value != null){
|
||||||
idUsuario = value;
|
idUsuario = int.parse(value);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
_prefService.readCacheUnidade('idUnidade').then((value){
|
_prefService.readCacheUnidade().then((value){
|
||||||
if(value!=null){
|
if(value!=null){
|
||||||
idUnidade = value[0];
|
idUnidade = value[0].toString();
|
||||||
nomeUnidade = value[1];
|
nomeUnidade = value[1];
|
||||||
}
|
}
|
||||||
loadLists();
|
loadLists();
|
||||||
@@ -180,11 +195,32 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
loadRegisterHome()async{
|
loadRegisterHome()async{
|
||||||
ID_DOMICILIO = widget.listData[0]['ID_DOMICILIO'];
|
//dados
|
||||||
|
PROFISSAO.text = widget.listData[0]['PROFISSAO']??'';
|
||||||
|
RENDA_TOTAL_FAMILIAR.text = widget.listData[0]['RENDA_TOTAL_FAMILIAR']==null?'0,00':'${widget.listData[0]['RENDA_TOTAL_FAMILIAR'].toString().replaceAll('.', ',')}';
|
||||||
|
MODELO_VEICULO.text = widget.listData[0]['MODELO_VEICULO'];
|
||||||
|
ANO_VEICULO.text = widget.listData[0]['ANO_VEICULO'].toString();
|
||||||
|
VALOR_PARCELA_FINANCIAMENTO.text = widget.listData[0]['VALOR_PARCELA_FINANCIAMENTO'].toString().replaceAll('.', ',');
|
||||||
|
VALOR_PARCELA_EMPRESTIMO.text = widget.listData[0]['VALOR_PARCELA_EMPRESTIMO'].toString().replaceAll('.', ',');
|
||||||
|
RENDA_MENSAL.text = widget.listData[0]['RENDA_MENSAL']==null?'0,00':'${widget.listData[0]['RENDA_MENSAL'].toString().replaceAll('.', ',')}';
|
||||||
|
POSSUI_VEICULO = widget.listData[0]['POSSUI_VEICULO']=='S'?true:false;
|
||||||
|
POSSUI_FINANCIAMENTO = widget.listData[0]['POSSUI_FINANCIAMENTO']=='S'?true:false;
|
||||||
|
POSSUI_EMPRESTIMO = widget.listData[0]['POSSUI_EMPRESTIMO']=='S'?true:false;
|
||||||
|
|
||||||
|
// print(RENDA_TOTAL_FAMILIAR.text);
|
||||||
|
// print(MODELO_VEICULO.text);
|
||||||
|
// print(ANO_VEICULO.text);
|
||||||
|
// print(VALOR_PARCELA_FINANCIAMENTO.text);
|
||||||
|
// print(VALOR_PARCELA_EMPRESTIMO.text);
|
||||||
|
// print(POSSUI_VEICULO);
|
||||||
|
// print(POSSUI_FINANCIAMENTO);
|
||||||
|
// print(POSSUI_EMPRESTIMO);
|
||||||
|
|
||||||
|
ID_DOMICILIO = widget.listData[0]['ID_DOMICILIO']==null || widget.listData[0]['ID_DOMICILIO'] == ''?0:widget.listData[0]['ID_DOMICILIO'];
|
||||||
ID_CIDADAO = widget.listData[0]['ID_CIDADAO'];
|
ID_CIDADAO = widget.listData[0]['ID_CIDADAO'];
|
||||||
CD_USUARIO_SUS = widget.listData[0]['CD_USUARIO_SUS'];
|
CD_USUARIO_SUS = widget.listData[0]['CD_USUARIO_SUS'];
|
||||||
DBQuerys().buscaCadDomiciliar(ID_DOMICILIO).then((dataHome)async{
|
DBQuerys().buscaCadDomiciliar(ID_DOMICILIO).then((dataHome)async{
|
||||||
TIPO_IMOVEL_COD = dataHome[0]['TIPO_IMOVEL']??0;
|
TIPO_IMOVEL_COD = ID_DOMICILIO==0?0:dataHome[0]['TIPO_IMOVEL']??0;
|
||||||
if(dataHome.length!=0){
|
if(dataHome.length!=0){
|
||||||
TIPO_SALVAR = 'update';
|
TIPO_SALVAR = 'update';
|
||||||
}
|
}
|
||||||
@@ -193,90 +229,93 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
TIPO_IMOVEL = ConstVariable().listTypeHome[i].title;
|
TIPO_IMOVEL = ConstVariable().listTypeHome[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
listaINE = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
ID_AREA_DOMICILIO = list[0]['AREA'];
|
print('lista');
|
||||||
ID_MICROAREA_DOMICILIO = list[0]['MICROAREA'];
|
print(listaINE);
|
||||||
INE_DB = list[0]['INE'];
|
ID_AREA_DOMICILIO = listaINE[0]['AREA'];
|
||||||
|
ID_MICROAREA_DOMICILIO = listaINE[0]['MICROAREA'];
|
||||||
|
ID_EQUIPE = listaINE[0]['ID_EQUIPE'];
|
||||||
|
INE_DB = listaINE[0]['INE'];
|
||||||
INE = 'INE: $INE_DB / Área: $ID_AREA_DOMICILIO - Microárea : $ID_MICROAREA_DOMICILIO';
|
INE = 'INE: $INE_DB / Área: $ID_AREA_DOMICILIO - Microárea : $ID_MICROAREA_DOMICILIO';
|
||||||
listINE.add(INE!);
|
listINE.add(INE!);
|
||||||
FORA_AREA = dataHome[0]['FORA_AREA']==1?true:false;
|
FORA_AREA = dataHome.length==0?false:dataHome[0]['FORA_AREA']==1?true:false;
|
||||||
SITUACAO_MORADIA_COD = dataHome[0]['SITUACAO_MORADIA']??0;
|
SITUACAO_MORADIA_COD = dataHome.length==0?0:dataHome[0]['SITUACAO_MORADIA']??0;
|
||||||
for (int i = 0; ConstVariable().listSituationHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listSituationHome.length > i; i++) {
|
||||||
if (ConstVariable().listSituationHome[i].cod == SITUACAO_MORADIA_COD) {
|
if (ConstVariable().listSituationHome[i].cod == SITUACAO_MORADIA_COD) {
|
||||||
SITUACAO_MORADIA = ConstVariable().listSituationHome[i].title;
|
SITUACAO_MORADIA = ConstVariable().listSituationHome[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TIPO_LOCALIDADE_COD = dataHome[0]['TIPO_LOCALIDADE']??0;
|
TIPO_LOCALIDADE_COD = dataHome.length==0?0:dataHome[0]['TIPO_LOCALIDADE']??0;
|
||||||
for (int i = 0; ConstVariable().listTypeLocation.length > i; i++) {
|
for (int i = 0; ConstVariable().listTypeLocation.length > i; i++) {
|
||||||
if (ConstVariable().listTypeLocation[i].cod == TIPO_LOCALIDADE_COD) {
|
if (ConstVariable().listTypeLocation[i].cod == TIPO_LOCALIDADE_COD) {
|
||||||
TIPO_LOCALIDADE = ConstVariable().listTypeLocation[i].title;
|
TIPO_LOCALIDADE = ConstVariable().listTypeLocation[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TIPO_DOMICILIO_COD = dataHome[0]['TIPO_DOMICILIO']??0;
|
TIPO_DOMICILIO_COD =dataHome.length==0?0: dataHome[0]['TIPO_DOMICILIO']??0;
|
||||||
for (int i = 0; ConstVariable().listTypeResidence.length > i; i++) {
|
for (int i = 0; ConstVariable().listTypeResidence.length > i; i++) {
|
||||||
if (ConstVariable().listTypeResidence[i].cod == TIPO_DOMICILIO_COD) {
|
if (ConstVariable().listTypeResidence[i].cod == TIPO_DOMICILIO_COD) {
|
||||||
TIPO_DOMICILIO = ConstVariable().listTypeResidence[i].title;
|
TIPO_DOMICILIO = ConstVariable().listTypeResidence[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
NUM_MORADORES.text = dataHome[0]['NUM_MORADORES'].toString()=='null'?'':dataHome[0]['NUM_MORADORES'].toString();
|
NUM_MORADORES.text = dataHome.length==0?'':dataHome[0]['NUM_MORADORES'].toString()=='null'?'':dataHome[0]['NUM_MORADORES'].toString();
|
||||||
NUM_COMODOS.text = dataHome[0]['NUM_COMODOS'].toString()=='null'?'':dataHome[0]['NUM_COMODOS'].toString();
|
NUM_COMODOS.text = dataHome.length==0?'':dataHome[0]['NUM_COMODOS'].toString()=='null'?'':dataHome[0]['NUM_COMODOS'].toString();
|
||||||
SITUACAO_RURAL_COD = dataHome[0]['SITUACAO_RURAL']??0;
|
SITUACAO_RURAL_COD = dataHome.length==0?0:dataHome[0]['SITUACAO_RURAL']??0;
|
||||||
for (int i = 0; ConstVariable().listSituationRural.length > i; i++) {
|
for (int i = 0; ConstVariable().listSituationRural.length > i; i++) {
|
||||||
if (ConstVariable().listSituationRural[i].cod == SITUACAO_RURAL_COD) {
|
if (ConstVariable().listSituationRural[i].cod == SITUACAO_RURAL_COD) {
|
||||||
SITUACAO_RURAL = ConstVariable().listSituationRural[i].title;
|
SITUACAO_RURAL = ConstVariable().listSituationRural[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TIPO_ACESSO_COD = dataHome[0]['TIPO_ACESSO']??0;
|
TIPO_ACESSO_COD = dataHome.length==0?0:dataHome[0]['TIPO_ACESSO']??0;
|
||||||
for (int i = 0; ConstVariable().listTypeAcessHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listTypeAcessHome.length > i; i++) {
|
||||||
if (ConstVariable().listTypeAcessHome[i].cod == TIPO_ACESSO_COD) {
|
if (ConstVariable().listTypeAcessHome[i].cod == TIPO_ACESSO_COD) {
|
||||||
TIPO_ACESSO = ConstVariable().listTypeAcessHome[i].title;
|
TIPO_ACESSO = ConstVariable().listTypeAcessHome[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
MAT_PREDOMINANTE_COD = dataHome[0]['MAT_PREDOMINANTE']??0;
|
MAT_PREDOMINANTE_COD = dataHome.length==0?0:dataHome[0]['MAT_PREDOMINANTE']??0;
|
||||||
for (int i = 0; ConstVariable().listMaterialHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listMaterialHome.length > i; i++) {
|
||||||
if (ConstVariable().listMaterialHome[i].cod == MAT_PREDOMINANTE_COD) {
|
if (ConstVariable().listMaterialHome[i].cod == MAT_PREDOMINANTE_COD) {
|
||||||
MAT_PREDOMINANTE = ConstVariable().listMaterialHome[i].title;
|
MAT_PREDOMINANTE = ConstVariable().listMaterialHome[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DISPONIBILIDADE_ENERGIA = dataHome[0]['DISPONIBILIDADE_ENERGIA']==1?true:false;
|
DISPONIBILIDADE_ENERGIA = dataHome.length==0?false:dataHome[0]['DISPONIBILIDADE_ENERGIA']==1?true:false;
|
||||||
TIPO_ABASTECIMENTO_COD = dataHome[0]['TIPO_ABASTECIMENTO']??0;
|
TIPO_ABASTECIMENTO_COD = dataHome.length==0?0:dataHome[0]['TIPO_ABASTECIMENTO']??0;
|
||||||
for (int i = 0; ConstVariable().listWaterHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listWaterHome.length > i; i++) {
|
||||||
if (ConstVariable().listWaterHome[i].cod == TIPO_ACESSO_COD) {
|
if (ConstVariable().listWaterHome[i].cod == TIPO_ACESSO_COD) {
|
||||||
TIPO_ABASTECIMENTO = ConstVariable().listWaterHome[i].title;
|
TIPO_ABASTECIMENTO = ConstVariable().listWaterHome[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
TRATAMENTO_AGUA_COD = dataHome[0]['TRATAMENTO_AGUA']??0;
|
TRATAMENTO_AGUA_COD = dataHome.length==0?0:dataHome[0]['TRATAMENTO_AGUA']??0;
|
||||||
for (int i = 0; ConstVariable().listWaterHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listWaterHome.length > i; i++) {
|
||||||
if (ConstVariable().listWaterTreatment[i].cod == TRATAMENTO_AGUA_COD) {
|
if (ConstVariable().listWaterTreatment[i].cod == TRATAMENTO_AGUA_COD) {
|
||||||
TRATAMENTO_AGUA = ConstVariable().listWaterTreatment[i].title;
|
TRATAMENTO_AGUA = ConstVariable().listWaterTreatment[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DESTINO_LIXO_COD = dataHome[0]['DESTINO_LIXO']??0;
|
DESTINO_LIXO_COD = dataHome.length==0?0:dataHome[0]['DESTINO_LIXO']??0;
|
||||||
for (int i = 0; ConstVariable().listDestinyTrash.length > i; i++) {
|
for (int i = 0; ConstVariable().listDestinyTrash.length > i; i++) {
|
||||||
if (ConstVariable().listDestinyTrash[i].cod == DESTINO_LIXO_COD) {
|
if (ConstVariable().listDestinyTrash[i].cod == DESTINO_LIXO_COD) {
|
||||||
DESTINO_LIXO = ConstVariable().listDestinyTrash[i].title;
|
DESTINO_LIXO = ConstVariable().listDestinyTrash[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ESCOAMENTO_COD = dataHome[0]['ESCOAMENTO']??0;
|
ESCOAMENTO_COD = dataHome.length==0?0:dataHome[0]['ESCOAMENTO']??0;
|
||||||
for (int i = 0; ConstVariable().listSanitary.length > i; i++) {
|
for (int i = 0; ConstVariable().listSanitary.length > i; i++) {
|
||||||
if (ConstVariable().listSanitary[i].cod == ESCOAMENTO_COD) {
|
if (ConstVariable().listSanitary[i].cod == ESCOAMENTO_COD) {
|
||||||
ESCOAMENTO = ConstVariable().listSanitary[i].title;
|
ESCOAMENTO = ConstVariable().listSanitary[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
FL_ANIMAIS = dataHome[0]['FL_ANIMAIS']==1?true:false;
|
FL_ANIMAIS = dataHome.length==0?false:dataHome[0]['FL_ANIMAIS']==1?true:false;
|
||||||
ANIMAIS_GATO = dataHome[0]['ANIMAIS_GATO']==1?true:false;
|
ANIMAIS_GATO = dataHome.length==0?false:dataHome[0]['ANIMAIS_GATO']==1?true:false;
|
||||||
ANIMAIS_CACHORRO = dataHome[0]['ANIMAIS_CACHORRO']==1?true:false;
|
ANIMAIS_CACHORRO = dataHome.length==0?false:dataHome[0]['ANIMAIS_CACHORRO']==1?true:false;
|
||||||
ANIMAIS_PASSARO = dataHome[0]['ANIMAIS_PASSARO']==1?true:false;
|
ANIMAIS_PASSARO = dataHome.length==0?false:dataHome[0]['ANIMAIS_PASSARO']==1?true:false;
|
||||||
QTDE_ANIMAIS.text = dataHome[0]['QTDE_ANIMAIS']==null?'':dataHome[0]['QTDE_ANIMAIS'].toString();
|
QTDE_ANIMAIS.text = dataHome.length==0?'':dataHome[0]['QTDE_ANIMAIS']==null?'':dataHome[0]['QTDE_ANIMAIS'].toString();
|
||||||
date_cad = dataHome[0]['DT_CADASTRO']??'';
|
date_cad = dataHome.length==0?'':dataHome[0]['DT_CADASTRO']??'';
|
||||||
List splitted = date_cad.toString().split('-');
|
List splitted = date_cad.toString().split('-');
|
||||||
DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}';
|
DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}';
|
||||||
ID_EQUIPE = dataHome[0]['ID_EQUIPE']??0;
|
ID_EQUIPE = dataHome.length==0?0:dataHome[0]['ID_EQUIPE']??0;
|
||||||
NOME_INSTITUICAO_PERMANENCIA = dataHome[0]['NOME_INSTITUICAO_PERMANENCIA'];
|
NOME_INSTITUICAO_PERMANENCIA = dataHome.length==0?'':dataHome[0]['NOME_INSTITUICAO_PERMANENCIA'];
|
||||||
PROFISSIONAIS_VINCULADOS_INST = dataHome[0]['PROFISSIONAIS_VINCULADOS_INST'];
|
PROFISSIONAIS_VINCULADOS_INST = dataHome.length==0?'':dataHome[0]['PROFISSIONAIS_VINCULADOS_INST'];
|
||||||
RESPONSAVEL_TECNICO_INST = dataHome[0]['RESPONSAVEL_TECNICO_INST'];
|
RESPONSAVEL_TECNICO_INST = dataHome.length==0?'':dataHome[0]['RESPONSAVEL_TECNICO_INST'];
|
||||||
CARGO_RESP_TECNICO_INST = dataHome[0]['CARGO_RESP_TECNICO_INST'];
|
CARGO_RESP_TECNICO_INST = dataHome.length==0?'':dataHome[0]['CARGO_RESP_TECNICO_INST'];
|
||||||
TEL_RESP_TECNICO_INST = dataHome[0]['TEL_RESP_TECNICO_INST'];
|
TEL_RESP_TECNICO_INST = dataHome.length==0?'':dataHome[0]['TEL_RESP_TECNICO_INST'];
|
||||||
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
|
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
|
||||||
if(list.length!=0){
|
if(list.length!=0){
|
||||||
for(int i = 0; list.length>i;i++){
|
for(int i = 0; list.length>i;i++){
|
||||||
@@ -286,20 +325,22 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
|
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
});
|
||||||
});
|
await DBQuerys().buscaProfissionalCadInd(dataHome[0]['ID_RESP_CADASTRO']).then((list)async{
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
|
||||||
for(int i=0; list.length > i;i++){
|
|
||||||
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
|
||||||
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
|
||||||
}
|
|
||||||
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
|
|
||||||
ID_RESP_CADASTRO = list['ID_PROFISSIONAL'];
|
ID_RESP_CADASTRO = list['ID_PROFISSIONAL'];
|
||||||
NOME_RESP_CADASTRO.text = list['NOME_PROFISSIONAL'];
|
NOME_RESP_CADASTRO.text = list['NOME_PROFISSIONAL'];
|
||||||
String CNS_PROFISSIONAL = list['CNS_PROFISSIONAL'];
|
String CNS_PROFISSIONAL = list['CNS_PROFISSIONAL'];
|
||||||
|
CNES_RESP_CADASTRO.text = await DBQuerys().buscaNomeUnidade(list['ID_UNIDADE']);
|
||||||
|
print(list);
|
||||||
if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
||||||
CNS_VALIDO = true;
|
CNS_VALIDO = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
});
|
||||||
|
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
|
for(int i=0; list.length > i;i++){
|
||||||
|
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}';
|
||||||
|
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}');
|
||||||
|
}
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -323,7 +364,39 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
saveCitizenHome()async{
|
saveCitizenHome()async{
|
||||||
Map<String, dynamic> row = {
|
//save
|
||||||
|
final f = new DateFormat('yyyy-MM-dd HH:mm:ss');
|
||||||
|
Map<String, dynamic> rowCitizen = {
|
||||||
|
'PROFISSAO' : PROFISSAO.text.trim(),
|
||||||
|
'RENDA_TOTAL_FAMILIAR' : double.parse(RENDA_TOTAL_FAMILIAR.text.trim().replaceAll('.','').replaceAll(',', '.')),
|
||||||
|
'MODELO_VEICULO' : MODELO_VEICULO.text.trim(),
|
||||||
|
'ANO_VEICULO' : int.parse(ANO_VEICULO.text.trim().replaceAll('.', '')),
|
||||||
|
'VALOR_PARCELA_FINANCIAMENTO' : VALOR_PARCELA_FINANCIAMENTO.text.trim().replaceAll('.','').replaceAll(',', '.'),
|
||||||
|
'VALOR_PARCELA_EMPRESTIMO' : VALOR_PARCELA_EMPRESTIMO.text.trim().replaceAll('.','').replaceAll(',', '.'),
|
||||||
|
'RENDA_MENSAL' : RENDA_MENSAL.text.trim().replaceAll('.','').replaceAll(',', '.'),
|
||||||
|
'POSSUI_VEICULO' : POSSUI_VEICULO?'S':'N',
|
||||||
|
'POSSUI_FINANCIAMENTO' : POSSUI_FINANCIAMENTO?'S':'N',
|
||||||
|
'POSSUI_EMPRESTIMO' : POSSUI_EMPRESTIMO?'S':'N',
|
||||||
|
'DT_HORA_CADASTRO' : '${f.format(DateTime.now())}',
|
||||||
|
'ORIGEM' : TIPO_SALVAR!='new'?'A':'C',
|
||||||
|
'SINCRONIZADO' : 'N',
|
||||||
|
};
|
||||||
|
|
||||||
|
RegExp regex = RegExp(r'INE:\s*(\d+)');
|
||||||
|
String? ineNumber = regex.firstMatch(INE!)?.group(1);
|
||||||
|
int ID_UNIDADE = 0;
|
||||||
|
for (int i = 0; listaINE.length > i; i++) {
|
||||||
|
if (listaINE[i]['INE'] == ineNumber) {
|
||||||
|
ID_EQUIPE = listaINE[i]['ID_EQUIPE'];
|
||||||
|
INE_DB = listaINE[i]['INE'];
|
||||||
|
ID_UNIDADE = listaINE[i]['ID_UNIDADE'];
|
||||||
|
print(listaINE[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var CNES_UNIDADE = await DBQuerys().cnesUnidade(ID_UNIDADE);
|
||||||
|
|
||||||
|
Map<String, dynamic> rowHome = {
|
||||||
'TIPO_IMOVEL' : TIPO_IMOVEL_COD,
|
'TIPO_IMOVEL' : TIPO_IMOVEL_COD,
|
||||||
'ID_AREA_DOMICILIO' : ID_AREA_DOMICILIO,
|
'ID_AREA_DOMICILIO' : ID_AREA_DOMICILIO,
|
||||||
'ID_MICROAREA_DOMICILIO' : ID_MICROAREA_DOMICILIO,
|
'ID_MICROAREA_DOMICILIO' : ID_MICROAREA_DOMICILIO,
|
||||||
@@ -332,7 +405,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'TIPO_LOCALIDADE' : TIPO_LOCALIDADE_COD,
|
'TIPO_LOCALIDADE' : TIPO_LOCALIDADE_COD,
|
||||||
'TIPO_DOMICILIO' : TIPO_DOMICILIO_COD,
|
'TIPO_DOMICILIO' : TIPO_DOMICILIO_COD,
|
||||||
'NUM_MORADORES' : int.parse(NUM_MORADORES.text),
|
'NUM_MORADORES' : int.parse(NUM_MORADORES.text),
|
||||||
'NUM_COMODOS' : int.parse(NUM_COMODOS.text),
|
'NUM_COMODOS' : NUM_COMODOS.text.isEmpty?0:int.parse(NUM_COMODOS.text),
|
||||||
'SITUACAO_RURAL' : SITUACAO_RURAL_COD,
|
'SITUACAO_RURAL' : SITUACAO_RURAL_COD,
|
||||||
'TIPO_ACESSO' : TIPO_ACESSO_COD,
|
'TIPO_ACESSO' : TIPO_ACESSO_COD,
|
||||||
'MAT_PREDOMINANTE' : MAT_PREDOMINANTE_COD,
|
'MAT_PREDOMINANTE' : MAT_PREDOMINANTE_COD,
|
||||||
@@ -349,11 +422,11 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'QTDE_ANIMAIS' : QTDE_ANIMAIS.text.isEmpty?0:int.parse(QTDE_ANIMAIS.text),
|
'QTDE_ANIMAIS' : QTDE_ANIMAIS.text.isEmpty?0:int.parse(QTDE_ANIMAIS.text),
|
||||||
'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO,
|
'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO,
|
||||||
'ID_RESP_CADASTRO' : ID_RESP_CADASTRO,
|
'ID_RESP_CADASTRO' : ID_RESP_CADASTRO,
|
||||||
'CNES_RESP_CADASTRO' : CNES_RESP_CADASTRO.text,
|
'CNES_RESP_CADASTRO' : CNES_UNIDADE,
|
||||||
'INE_RESP_CADASTRO' : INE,
|
'INE_RESP_CADASTRO' : INE_DB,
|
||||||
'DT_CADASTRO' : date_cad,
|
'DT_CADASTRO' : date_cad,
|
||||||
'ID_EQUIPE' : ID_EQUIPE,
|
'ID_EQUIPE' : ID_EQUIPE,
|
||||||
'ORIGEM' : 'A',
|
'ORIGEM' : TIPO_SALVAR!='new'?'A':'C',
|
||||||
'SINCRONIZADO' : 'N',
|
'SINCRONIZADO' : 'N',
|
||||||
'NOME_INSTITUICAO_PERMANENCIA': NOME_INSTITUICAO_PERMANENCIA,
|
'NOME_INSTITUICAO_PERMANENCIA': NOME_INSTITUICAO_PERMANENCIA,
|
||||||
'PROFISSIONAIS_VINCULADOS_INST': PROFISSIONAIS_VINCULADOS_INST,
|
'PROFISSIONAIS_VINCULADOS_INST': PROFISSIONAIS_VINCULADOS_INST,
|
||||||
@@ -361,7 +434,11 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'CARGO_RESP_TECNICO_INST' : CARGO_RESP_TECNICO_INST,
|
'CARGO_RESP_TECNICO_INST' : CARGO_RESP_TECNICO_INST,
|
||||||
'TEL_RESP_TECNICO_INST' : TEL_RESP_TECNICO_INST,
|
'TEL_RESP_TECNICO_INST' : TEL_RESP_TECNICO_INST,
|
||||||
};
|
};
|
||||||
await DbSqliteSync().insertCadastrosDomiciliares(row,TIPO_SALVAR,ID_DOMICILIO,ID_CIDADAO,CD_USUARIO_SUS,0).then((value){
|
|
||||||
|
await DbSqliteSync().insertCadastrosDomiciliares(rowHome,TIPO_SALVAR,ID_DOMICILIO,ID_CIDADAO,CD_USUARIO_SUS).then((value)async{
|
||||||
|
await DbSqliteSync().insertCidadaos(rowCitizen,editing?'update':'new',widget.listData[0]['CD_USUARIO_SUS']).then((value){
|
||||||
|
edit = false;
|
||||||
|
setState(() {});
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
context,
|
context,
|
||||||
'Aviso',
|
'Aviso',
|
||||||
@@ -370,8 +447,11 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'Cadastro Domiciliar realizado com sucesso!',
|
'Cadastro Domiciliar realizado com sucesso!',
|
||||||
'OK'
|
'OK'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Navigator.pushAndRemoveUntil(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: widget.username)), (route) => false);
|
||||||
// print(value);
|
// print(value);
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -387,16 +467,16 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: ()async => await OnBackButton().onBackButton(context),
|
onWillPop: !edit?null:()async => await OnBackButton().onBackButton(context, widget.username),
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Domiciliar'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Domiciliar',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
child: ListView(
|
child: ListView(
|
||||||
children: [
|
children: [
|
||||||
SubtitleAppbarCitizen(title: 3,edit: true,listData: widget.listData),
|
SubtitleAppbarCitizen(title: 3,edit: true,listData: widget.listData,username: widget.username),
|
||||||
showCheckError?Card(
|
showCheckError?Card(
|
||||||
margin: EdgeInsets.all(10),
|
margin: EdgeInsets.all(10),
|
||||||
child: Container(
|
child: Container(
|
||||||
@@ -490,7 +570,23 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
select: INE,
|
select: INE,
|
||||||
widthDropdown: width*0.7,
|
widthDropdown: width*0.7,
|
||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
onChanged: !editing?null: (value)=>setState(()=>INE = value!),
|
onChanged: !editing?null: (value){
|
||||||
|
|
||||||
|
print(value);
|
||||||
|
setState(()=>INE = value!);
|
||||||
|
|
||||||
|
RegExp regex = RegExp(r'INE:\s*(\d+)');
|
||||||
|
String? ineNumber = regex.firstMatch(value)?.group(1);
|
||||||
|
for (int i = 0; listaINE.length > i; i++) {
|
||||||
|
if (listaINE[i]['INE'] == ineNumber) {
|
||||||
|
ID_EQUIPE = listaINE[i]['ID_EQUIPE'];
|
||||||
|
INE_DB = listaINE[i]['INE'];
|
||||||
|
// SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod;
|
||||||
|
print('ID_EQUIPE $ID_EQUIPE');
|
||||||
|
print('INE_DB $INE_DB');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
),
|
),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
@@ -513,9 +609,12 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
onChanged:!editing?null: (value){
|
onChanged:!editing?null: (value){
|
||||||
setState(()=>SITUACAO_MORADIA = value!);
|
setState(()=>SITUACAO_MORADIA = value!);
|
||||||
|
print('modou para $SITUACAO_MORADIA_COD');
|
||||||
|
print('modou para $SITUACAO_MORADIA');
|
||||||
for (int i = 0; ConstVariable().listSituationHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listSituationHome.length > i; i++) {
|
||||||
if (ConstVariable().listSituationHome[i].title == TIPO_IMOVEL) {
|
if (ConstVariable().listSituationHome[i].title == SITUACAO_MORADIA) {
|
||||||
SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod;
|
SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod;
|
||||||
|
print('modou para dentro do for $SITUACAO_MORADIA_COD');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -631,7 +730,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
),
|
),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
title: 'Disponibilidade de Energia Elétroca',
|
title: 'Disponibilidade de Energia Elétrica',
|
||||||
value: DISPONIBILIDADE_ENERGIA,
|
value: DISPONIBILIDADE_ENERGIA,
|
||||||
onChanged:!editing?null: (value)=>setState(()=>DISPONIBILIDADE_ENERGIA = value),
|
onChanged:!editing?null: (value)=>setState(()=>DISPONIBILIDADE_ENERGIA = value),
|
||||||
),
|
),
|
||||||
@@ -756,7 +855,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
margin: EdgeInsets.all(10),
|
margin: EdgeInsets.all(10),
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
TitleContainers(title: 'Outros'),
|
TitleContainers(title: 'Profissional Responsável'),
|
||||||
Row(
|
Row(
|
||||||
children: [
|
children: [
|
||||||
Container(
|
Container(
|
||||||
@@ -840,6 +939,177 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
Card(
|
||||||
|
margin: EdgeInsets.all(10),
|
||||||
|
child: Column(
|
||||||
|
children: [
|
||||||
|
TitleContainers(title: 'Outros'),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
height: heigth*0.4,
|
||||||
|
width: width*0.2,
|
||||||
|
child: Icon(Icons.tag,size: 80,),
|
||||||
|
),
|
||||||
|
Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: Column(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
|
mainAxisSize: MainAxisSize.min,
|
||||||
|
children: [
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: 'R\$',color: Colors.black87)),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: RENDA_MENSAL,
|
||||||
|
subtitle: 'Renda Mensal',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Renda Mensal',
|
||||||
|
widthInput: width*0.65,
|
||||||
|
widthSubtitle: width*0.65,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: '',color: Colors.black87)),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: PROFISSAO,
|
||||||
|
subtitle: 'Profissão',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Profissão',
|
||||||
|
widthInput: width*0.65,
|
||||||
|
widthSubtitle: width*0.65,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: 'R\$',color: Colors.black87)),
|
||||||
|
InputWithSubtitle(
|
||||||
|
textInputType: TextInputType.number,
|
||||||
|
controller: RENDA_TOTAL_FAMILIAR,
|
||||||
|
subtitle: 'Renda Total Familiar',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Renda Total Familiar',
|
||||||
|
widthInput: width*0.65,
|
||||||
|
widthSubtitle: width*0.65,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: '',color: Colors.black87)),
|
||||||
|
SwitchWithSubtitle(
|
||||||
|
width: width*0.65,
|
||||||
|
title: 'Possui Veículo Próprio',
|
||||||
|
value: POSSUI_VEICULO,
|
||||||
|
onChanged: !editing?null: (value)=>setState(()=>POSSUI_VEICULO = value!),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
width: width*0.7,
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: '',color: Colors.black87)),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: MODELO_VEICULO,
|
||||||
|
subtitle: 'Modelo Veículo',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Modelo Veículo',
|
||||||
|
widthInput: width*0.53,
|
||||||
|
widthSubtitle: width*0.53,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing && POSSUI_VEICULO,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
Spacer(),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: ANO_VEICULO,
|
||||||
|
subtitle: 'Ano Veículo',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Ano Veículo',
|
||||||
|
widthInput: width*0.1,
|
||||||
|
widthSubtitle: width*0.1,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing && POSSUI_VEICULO,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: '',color: Colors.black87)),
|
||||||
|
SwitchWithSubtitle(
|
||||||
|
width: width*0.65,
|
||||||
|
title: 'Possui Financiamento',
|
||||||
|
value: POSSUI_FINANCIAMENTO,
|
||||||
|
onChanged: !editing?null: (value)=>setState(()=>POSSUI_FINANCIAMENTO = value!),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: 'R\$',color: Colors.black87)),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: VALOR_PARCELA_FINANCIAMENTO,
|
||||||
|
subtitle: 'Valor Parcela Financiamento',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Valor Parcela Financiamento',
|
||||||
|
widthInput: width*0.65,
|
||||||
|
widthSubtitle: width*0.65,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing && POSSUI_FINANCIAMENTO,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: '',color: Colors.black87)),
|
||||||
|
SwitchWithSubtitle(
|
||||||
|
width: width*0.65,
|
||||||
|
title: 'Possui Veículo Empréstimo',
|
||||||
|
value: POSSUI_EMPRESTIMO,
|
||||||
|
onChanged: !editing?null: (value)=>setState(()=>POSSUI_EMPRESTIMO = value!),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
Container(width: width*0.05,child: TextDefault(text: 'R\$',color: Colors.black87)),
|
||||||
|
InputWithSubtitle(
|
||||||
|
controller: VALOR_PARCELA_EMPRESTIMO,
|
||||||
|
subtitle: 'Valor Parcela Empréstimo',
|
||||||
|
errorInput: 'Campo Obrigatório',
|
||||||
|
labelInput: 'Valor Parcela Empréstimo',
|
||||||
|
widthInput: width*0.65,
|
||||||
|
widthSubtitle: width*0.65,
|
||||||
|
hintInput: 'Escreva aqui',
|
||||||
|
enabled: editing && POSSUI_EMPRESTIMO,
|
||||||
|
onChanged: (v)=>setState((){}),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
CNS_VALIDO?Card(
|
CNS_VALIDO?Card(
|
||||||
margin: EdgeInsets.all(10),
|
margin: EdgeInsets.all(10),
|
||||||
child: Container(
|
child: Container(
|
||||||
|
|||||||
@@ -3,16 +3,20 @@ import 'package:intl/intl.dart';
|
|||||||
import 'package:line_icons/line_icons.dart';
|
import 'package:line_icons/line_icons.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
|
import 'package:rkm/models/equipe_cidadao.dart';
|
||||||
import 'package:rkm/service/db/db_querys.dart';
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
import 'package:rkm/widgets/title_containers.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/db/db_sqlite_sync.dart';
|
||||||
import '../../service/shared_preferences/shared_preferences_service.dart';
|
import '../../service/shared_preferences/shared_preferences_service.dart';
|
||||||
import '../../widgets/alert_dialog_default.dart';
|
import '../../widgets/alert_dialog_default.dart';
|
||||||
import '../../widgets/appbar_default.dart';
|
import '../../widgets/appbar_default.dart';
|
||||||
import '../../widgets/check_box_two_subtitle.dart';
|
import '../../widgets/check_box_two_subtitle.dart';
|
||||||
import '../../widgets/dropdown_with_subtitle.dart';
|
import '../../widgets/dropdown_with_subtitle.dart';
|
||||||
|
import '../../widgets/dropdown_with_subtitle_cidadao.dart';
|
||||||
import '../../widgets/error_default.dart';
|
import '../../widgets/error_default.dart';
|
||||||
import '../../widgets/input_with_subtitle.dart';
|
import '../../widgets/input_with_subtitle.dart';
|
||||||
import '../../widgets/onbackbutton.dart';
|
import '../../widgets/onbackbutton.dart';
|
||||||
@@ -20,7 +24,8 @@ import '../../widgets/subtitle_appbar_citizen.dart';
|
|||||||
import '../../widgets/switch_with_subtitle.dart';
|
import '../../widgets/switch_with_subtitle.dart';
|
||||||
class RegisterIndividualScreen extends StatefulWidget {
|
class RegisterIndividualScreen extends StatefulWidget {
|
||||||
List listData;
|
List listData;
|
||||||
RegisterIndividualScreen({required this.listData});
|
String username;
|
||||||
|
RegisterIndividualScreen({required this.listData, required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<RegisterIndividualScreen> createState() => _RegisterIndividualScreenState();
|
State<RegisterIndividualScreen> createState() => _RegisterIndividualScreenState();
|
||||||
@@ -28,7 +33,7 @@ class RegisterIndividualScreen extends StatefulWidget {
|
|||||||
|
|
||||||
class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
||||||
|
|
||||||
List<String> listINE = [];
|
List<EquipeCidadao> listINE = [];
|
||||||
List<String> listkin = [];
|
List<String> listkin = [];
|
||||||
List<String> listScoolingRegisterInd = [];
|
List<String> listScoolingRegisterInd = [];
|
||||||
List<String> listOcupacion = [];
|
List<String> listOcupacion = [];
|
||||||
@@ -96,6 +101,9 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
bool HIGIENE_BUCAL = false;
|
bool HIGIENE_BUCAL = false;
|
||||||
bool OUTROS_HIGIENE = false;
|
bool OUTROS_HIGIENE = false;
|
||||||
bool CNS_VALIDO = false;
|
bool CNS_VALIDO = false;
|
||||||
|
bool FIBROMIALGIA = false;
|
||||||
|
bool TRANSTORNO_ESPECTRO_AUTISTA = false;
|
||||||
|
|
||||||
bool edit = false;
|
bool edit = false;
|
||||||
bool editing = false;
|
bool editing = false;
|
||||||
bool mandatory = false;
|
bool mandatory = false;
|
||||||
@@ -116,7 +124,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
int IDENTIDADE_GENERO_COD = 0;
|
int IDENTIDADE_GENERO_COD = 0;
|
||||||
int ID_EQUIPE = 0;
|
int ID_EQUIPE = 0;
|
||||||
int ID_CIDADAO = 0;
|
int ID_CIDADAO = 0;
|
||||||
String? INE;
|
EquipeCidadao? INE;
|
||||||
String? INE_DB;
|
String? INE_DB;
|
||||||
String? ESCOLARIDADE;
|
String? ESCOLARIDADE;
|
||||||
String? SITUACAO_MERCADO;
|
String? SITUACAO_MERCADO;
|
||||||
@@ -133,7 +141,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
String? CBO_RESP_CADASTRO;
|
String? CBO_RESP_CADASTRO;
|
||||||
String? INE_RESP_CADASTRO;
|
String? INE_RESP_CADASTRO;
|
||||||
String CNS_PROFISSIONAL='';
|
String CNS_PROFISSIONAL='';
|
||||||
String idUsuario = '';
|
int idUsuario = 0;
|
||||||
String idUnidade = '';
|
String idUnidade = '';
|
||||||
String nomeUnidade = '';
|
String nomeUnidade = '';
|
||||||
String date_cad = '';
|
String date_cad = '';
|
||||||
@@ -141,6 +149,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
int ID_AREA_CIDADAO = 0;
|
int ID_AREA_CIDADAO = 0;
|
||||||
int ID_MICROAREA_CIDADAO = 0;
|
int ID_MICROAREA_CIDADAO = 0;
|
||||||
String TIPO_SALVAR = 'new';
|
String TIPO_SALVAR = 'new';
|
||||||
|
int ID_PROFISSIONAL = 0;
|
||||||
|
|
||||||
var NOME_RESPONSAVEL_FAMILIAR = TextEditingController();
|
var NOME_RESPONSAVEL_FAMILIAR = TextEditingController();
|
||||||
var NATURALIDADE = TextEditingController(text: 'BRASILEIRO');
|
var NATURALIDADE = TextEditingController(text: 'BRASILEIRO');
|
||||||
@@ -155,20 +164,20 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
var OUTRAS_CONDICOES = TextEditingController();
|
var OUTRAS_CONDICOES = TextEditingController();
|
||||||
var ACOMP_INTITUICAO_QUAL = TextEditingController();
|
var ACOMP_INTITUICAO_QUAL = TextEditingController();
|
||||||
var PARENTESCO_VISITA = TextEditingController();
|
var PARENTESCO_VISITA = TextEditingController();
|
||||||
var ID_RESP_CADASTRO = TextEditingController();
|
var USUARIO_RESP_CADASTRO = TextEditingController();
|
||||||
var CNES_RESP_CADASTRO = TextEditingController();
|
var CNES_RESP_CADASTRO = TextEditingController();
|
||||||
var DT_CADASTRO = TextEditingController();
|
var DT_CADASTRO = TextEditingController();
|
||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
|
|
||||||
getUser(){
|
getUser(){
|
||||||
_prefService.readCacheIdUsuario('idUsuario').then((value){
|
_prefService.readCacheIDUser().then((value){
|
||||||
if(value != null){
|
if(value != null){
|
||||||
idUsuario = value;
|
idUsuario = int.parse(value);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
_prefService.readCacheUnidade('idUnidade').then((value){
|
_prefService.readCacheUnidade().then((value){
|
||||||
if(value!=null){
|
if(value!=null){
|
||||||
idUnidade = value[0];
|
idUnidade = value[0].toString();
|
||||||
nomeUnidade = value[1];
|
nomeUnidade = value[1];
|
||||||
}
|
}
|
||||||
loadLists();
|
loadLists();
|
||||||
@@ -217,27 +226,53 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
|
|
||||||
loadCadIndividual()async{
|
loadCadIndividual()async{
|
||||||
ID_CIDADAO = widget.listData[0]['ID_CIDADAO'];
|
ID_CIDADAO = widget.listData[0]['ID_CIDADAO'];
|
||||||
|
// print(widget.listData[0]['ID_CAD_INDIVIDUAL']);
|
||||||
|
print('ID_CIDADAO');
|
||||||
|
print(ID_CIDADAO);
|
||||||
|
|
||||||
await DBQuerys().buscaCadInvidual(ID_CIDADAO).then((dataCitizen)async{
|
await DBQuerys().buscaCadInvidual(ID_CIDADAO).then((dataCitizen)async{
|
||||||
// print(CD_USUARIO_SUS);
|
|
||||||
if(dataCitizen.length != 0) {
|
if(dataCitizen.isNotEmpty) {
|
||||||
|
ID_PROFISSIONAL = dataCitizen[0]['ID_RESP_CADASTRO'];
|
||||||
TIPO_SALVAR = 'update';
|
TIPO_SALVAR = 'update';
|
||||||
showTab = true;
|
showTab = true;
|
||||||
FORA_AREA = dataCitizen[0]['FORA_AREA'] == 1 ? true : false;
|
FORA_AREA = dataCitizen[0]['FORA_AREA'] == 1 ? true : false;
|
||||||
ID_EQUIPE = dataCitizen[0]['ID_EQUIPE']??0;
|
ID_EQUIPE = dataCitizen[0]['ID_EQUIPE']??0;
|
||||||
STATUS_CADASTRO = dataCitizen[0]['STATUS_CADASTRO'] == null? false : dataCitizen[0]['STATUS_CADASTRO'] == 1 ? true : false;
|
STATUS_CADASTRO = dataCitizen[0]['STATUS_CADASTRO'] == null? false : dataCitizen[0]['STATUS_CADASTRO'] == 1 ? true : false;
|
||||||
RESPONSAVEL_FAMILIAR = dataCitizen[0]['RESPONSAVEL_FAMILIAR'] == 1 ? true : false;
|
RESPONSAVEL_FAMILIAR = dataCitizen[0]['RESPONSAVEL_FAMILIAR'] == 1 ? true : false;
|
||||||
|
FIBROMIALGIA = dataCitizen[0]['FIBROMIALGIA']==1?true:false;
|
||||||
|
TRANSTORNO_ESPECTRO_AUTISTA = dataCitizen[0]['TRANSTORNO_ESPECTRO_AUTISTA']==1?true:false;
|
||||||
|
|
||||||
if(dataCitizen[0]['INE']!=null){
|
if(dataCitizen[0]['INE']!=null){
|
||||||
INE = 'INE: ${dataCitizen[0]['INE']} / Área : ${dataCitizen[0]['ID_AREA_CIDADAO']} - Microárea : ${dataCitizen[0]['ID_MICROAREA_CIDADAO']}';
|
print('co');
|
||||||
INE_RESP_CADASTRO = 'INE: ${dataCitizen[0]['INE']} / Área: ${dataCitizen[0]['AREA']} - Microárea : ${dataCitizen[0]['MICROAREA']}';
|
String ine = 'INE: ${dataCitizen[0]['INE']} / Área : ${dataCitizen[0]['AREA']} ${dataCitizen[0]['MICROAREA']==null?'':'- Microárea : ${dataCitizen[0]['MICROAREA']}'}';
|
||||||
listINE.add(INE!);
|
INE_RESP_CADASTRO = 'INE: ${dataCitizen[0]['INE']} / Área: ${dataCitizen[0]['AREA']} ${dataCitizen[0]['MICROAREA']==null?'':'- Microárea : ${dataCitizen[0]['MICROAREA']}'}';
|
||||||
|
INE = EquipeCidadao(
|
||||||
|
DESCRICAO: ine!,
|
||||||
|
ID_MICROAREA_CIDADAO: dataCitizen[0]['ID_MICROAREA_CIDADAO'],
|
||||||
|
ID_AREA_CIDADAO: dataCitizen[0]['ID_AREA_CIDADAO']
|
||||||
|
);
|
||||||
listINEPROF.add(INE_RESP_CADASTRO!);
|
listINEPROF.add(INE_RESP_CADASTRO!);
|
||||||
}else{
|
}else{
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
for(int i=0; list.length > i;i++){
|
for(int i=0; list.length > i;i++){
|
||||||
INE = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
String ine = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}';
|
||||||
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}';
|
||||||
listINE.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
listINE.add(
|
||||||
|
EquipeCidadao(
|
||||||
|
DESCRICAO: ine!,
|
||||||
|
ID_MICROAREA_CIDADAO: list[i]['ID_ATB_MICROAREA'],
|
||||||
|
ID_AREA_CIDADAO: list[i]['ID_ATB_AREA']
|
||||||
|
)
|
||||||
|
);
|
||||||
|
print('ID_MICROAREA_CIDADAO');
|
||||||
|
print(dataCitizen[0]['ID_MICROAREA_CIDADAO']);
|
||||||
|
print('ID_AREA_CIDADAO');
|
||||||
|
print(dataCitizen[0]['ID_AREA_CIDADAO']);
|
||||||
|
if(dataCitizen[0]['ID_MICROAREA_CIDADAO']==list[i]['ID_ATB_MICROAREA']
|
||||||
|
&&dataCitizen[0]['ID_AREA_CIDADAO']==list[i]['ID_ATB_AREA']){
|
||||||
|
INE = listINE[i];
|
||||||
|
}
|
||||||
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -387,37 +422,41 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
SANITARIO = dataCitizen[0]['SANITARIO'] == 1 ? true : false;
|
SANITARIO = dataCitizen[0]['SANITARIO'] == 1 ? true : false;
|
||||||
HIGIENE_BUCAL = dataCitizen[0]['HIGIENE_BUCAL'] == 1 ? true : false;
|
HIGIENE_BUCAL = dataCitizen[0]['HIGIENE_BUCAL'] == 1 ? true : false;
|
||||||
OUTROS_HIGIENE = dataCitizen[0]['OUTROS_HIGIENE'] == 1 ? true : false;
|
OUTROS_HIGIENE = dataCitizen[0]['OUTROS_HIGIENE'] == 1 ? true : false;
|
||||||
CNES_RESP_CADASTRO.text = await DBQuerys().buscaNomeUnidade(idUnidade);
|
|
||||||
CBO_RESP_CADASTRO = dataCitizen[0]['CBO_RESP_CADASTRO'].toString();
|
CBO_RESP_CADASTRO = dataCitizen[0]['CBO_RESP_CADASTRO'].toString();
|
||||||
date_cad = dataCitizen[0]['DT_CADASTRO']??'';
|
date_cad = dataCitizen[0]['DT_CADASTRO']??'';
|
||||||
// print('data $date_cad');
|
|
||||||
List splitted = date_cad.toString().split('-');
|
List splitted = date_cad.toString().split('-');
|
||||||
DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}';
|
DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}';
|
||||||
|
CNES_RESP_CADASTRO.text = dataCitizen[0]['CNES_RESP_CADASTRO']??'';
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}else{
|
||||||
if(CNES_RESP_CADASTRO.text=='null' || CNES_RESP_CADASTRO.text.isEmpty){
|
showTab = true;
|
||||||
CNES_RESP_CADASTRO.text = nomeUnidade;
|
|
||||||
}
|
}
|
||||||
if(listINE.length == 0){
|
if(listINE.length == 0){
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
for(int i=0; list.length > i;i++){
|
for(int i=0; list.length > i;i++){
|
||||||
ID_AREA_CIDADAO = list[i]['AREA'];
|
ID_AREA_CIDADAO = list[i]['ID_ATB_AREA'];
|
||||||
ID_MICROAREA_CIDADAO = list[i]['MICROAREA'];
|
ID_MICROAREA_CIDADAO = list[i]['ID_ATB_MICROAREA']==null?0:list[i]['ID_ATB_MICROAREA'];
|
||||||
INE_DB = list[i]['INE'];
|
INE_DB = list[i]['INE'];
|
||||||
INE = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
String ine = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}';
|
||||||
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}';
|
||||||
listINE.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
listINE.add(
|
||||||
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
EquipeCidadao(
|
||||||
|
DESCRICAO: ine!,
|
||||||
|
ID_MICROAREA_CIDADAO: list[i]['ID_ATB_MICROAREA'],
|
||||||
|
ID_AREA_CIDADAO: list[i]['ID_ATB_AREA']
|
||||||
|
)
|
||||||
|
);
|
||||||
|
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
|
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
|
||||||
ID_RESP_CADASTRO.text = list['NOME_PROFISSIONAL'];
|
USUARIO_RESP_CADASTRO.text = list['NOME_PROFISSIONAL'];
|
||||||
CNS_PROFISSIONAL = list['CNS_PROFISSIONAL'];
|
CNS_PROFISSIONAL = list['CNS_PROFISSIONAL'];
|
||||||
if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
||||||
CNS_VALIDO = true;
|
CNS_VALIDO = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
CNES_RESP_CADASTRO.text = await DBQuerys().buscaNomeUnidade(idUnidade);
|
// CNES_RESP_CADASTRO.text = await DBQuerys().buscaNomeUnidade(idUnidade);
|
||||||
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
|
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
|
||||||
if(list.length!=0){
|
if(list.length!=0){
|
||||||
for(int i = 0; list.length>i;i++){
|
for(int i = 0; list.length>i;i++){
|
||||||
@@ -426,6 +465,14 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
}
|
}
|
||||||
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
|
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
|
||||||
});
|
});
|
||||||
|
if(ID_PROFISSIONAL!=0){
|
||||||
|
await DBQuerys().buscaProfissionalCadInd(ID_PROFISSIONAL).then((value)async{
|
||||||
|
// print(value);
|
||||||
|
USUARIO_RESP_CADASTRO.text = value['NOME_PROFISSIONAL'];
|
||||||
|
//aguardando unidade
|
||||||
|
// CNES_RESP_CADASTRO.text = await DBQuerys().cnesUnidade(value['ID_UNIDADE']);
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
@@ -454,12 +501,13 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
saveCitizenInd()async{
|
saveCitizenInd()async{
|
||||||
|
//cnes
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'STATUS_CADASTRO' : STATUS_CADASTRO?1:2,
|
'STATUS_CADASTRO' : STATUS_CADASTRO?1:2,
|
||||||
'ID_CIDADAO' : widget.listData[0]['ID_CIDADAO'],
|
'ID_CIDADAO' : widget.listData[0]['ID_CIDADAO'],
|
||||||
'CD_USUARIO_SUS' : widget.listData[0]['CD_USUARIO_SUS'],
|
'CD_USUARIO_SUS' : widget.listData[0]['CD_USUARIO_SUS'],
|
||||||
'ID_AREA_CIDADAO' : ID_AREA_CIDADAO,
|
'ID_AREA_CIDADAO' : INE!.ID_AREA_CIDADAO,
|
||||||
'ID_MICROAREA_CIDADAO' : ID_MICROAREA_CIDADAO,
|
'ID_MICROAREA_CIDADAO' : INE!.ID_MICROAREA_CIDADAO,
|
||||||
'FORA_AREA' : FORA_AREA?1:2,
|
'FORA_AREA' : FORA_AREA?1:2,
|
||||||
'RESPONSAVEL_FAMILIAR' : RESPONSAVEL_FAMILIAR?1:2,
|
'RESPONSAVEL_FAMILIAR' : RESPONSAVEL_FAMILIAR?1:2,
|
||||||
'ID_RESPONSAVEL_FAMILIAR' : '',
|
'ID_RESPONSAVEL_FAMILIAR' : '',
|
||||||
@@ -497,6 +545,8 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
'TUBERCULOSE' : TUBERCULOSE?1:2,
|
'TUBERCULOSE' : TUBERCULOSE?1:2,
|
||||||
'CANCER' : CANCER?1:2,
|
'CANCER' : CANCER?1:2,
|
||||||
'INTERNACAO' : INTERNACAO?1:2,
|
'INTERNACAO' : INTERNACAO?1:2,
|
||||||
|
'FIBROMIALGIA' : FIBROMIALGIA?1:2,
|
||||||
|
'TRANSTORNO_ESPECTRO_AUTISTA': TRANSTORNO_ESPECTRO_AUTISTA?1:2,
|
||||||
'MOTIVO' : MOTIVO.text,
|
'MOTIVO' : MOTIVO.text,
|
||||||
'DOENCA_CARDIACA' : DOENCA_CARDIACA_COD,
|
'DOENCA_CARDIACA' : DOENCA_CARDIACA_COD,
|
||||||
'PROBLEMA_RINS' : PROBLEMA_RINS_COD,
|
'PROBLEMA_RINS' : PROBLEMA_RINS_COD,
|
||||||
@@ -527,12 +577,12 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
'OUTROS_HIGIENE' : OUTROS_HIGIENE?1:2,
|
'OUTROS_HIGIENE' : OUTROS_HIGIENE?1:2,
|
||||||
'FICHA_ALTERACAO' : 1,
|
'FICHA_ALTERACAO' : 1,
|
||||||
'ID_RESP_CADASTRO' : idUsuario,
|
'ID_RESP_CADASTRO' : idUsuario,
|
||||||
'CNES_RESP_CADASTRO' : CNES_RESP_CADASTRO.text,
|
'CNES_RESP_CADASTRO' : CNES_RESP_CADASTRO.text=='null'?'':CNES_RESP_CADASTRO.text,
|
||||||
'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO,
|
'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO,
|
||||||
'INE_RESP_CADASTRO' : INE_DB,
|
'INE_RESP_CADASTRO' : INE_DB,
|
||||||
'DT_CADASTRO' : date_cad,
|
'DT_CADASTRO' : date_cad,
|
||||||
'ID_EQUIPE' : ID_EQUIPE,
|
'ID_EQUIPE' : ID_EQUIPE,
|
||||||
'ORIGEM' : 'A',
|
'ORIGEM' : TIPO_SALVAR!='new'?'A':'C',
|
||||||
'SINCRONIZADO' : 'N',
|
'SINCRONIZADO' : 'N',
|
||||||
'DT_ENTRADA_BRASIL' : DT_ENTRADA_BRASIL.text,
|
'DT_ENTRADA_BRASIL' : DT_ENTRADA_BRASIL.text,
|
||||||
'DT_NATURALIZACAO' : DT_NATURALIZACAO.text,
|
'DT_NATURALIZACAO' : DT_NATURALIZACAO.text,
|
||||||
@@ -545,7 +595,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
'CRIANCAS_OUTRO' : CRIANCAS_OUTRO?1:2,
|
'CRIANCAS_OUTRO' : CRIANCAS_OUTRO?1:2,
|
||||||
'IDENTIDADE_GENERO' : IDENTIDADE_GENERO_COD,
|
'IDENTIDADE_GENERO' : IDENTIDADE_GENERO_COD,
|
||||||
};
|
};
|
||||||
await DbSqliteSync().insertCadastrosIndividuais(row,TIPO_SALVAR,ID_CIDADAO,0).then((value){
|
await DbSqliteSync().insertCadastrosIndividuais(row,TIPO_SALVAR,ID_CIDADAO).then((value){
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
context,
|
context,
|
||||||
'Aviso',
|
'Aviso',
|
||||||
@@ -555,6 +605,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
'OK'
|
'OK'
|
||||||
);
|
);
|
||||||
setState(() {
|
setState(() {
|
||||||
|
edit = false;
|
||||||
showTab = true;
|
showTab = true;
|
||||||
});
|
});
|
||||||
// print(value);
|
// print(value);
|
||||||
@@ -565,9 +616,11 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
|
|
||||||
var pickDate = await showDatePicker(
|
var pickDate = await showDatePicker(
|
||||||
context: context,
|
context: context,
|
||||||
|
locale: Locale('pt','BR'),
|
||||||
initialDate: DateTime.now(),
|
initialDate: DateTime.now(),
|
||||||
firstDate: DateTime(1900),
|
firstDate: DateTime(1900),
|
||||||
lastDate: DateTime(2024));
|
lastDate: DateTime.now()
|
||||||
|
);
|
||||||
if (pickDate != null) {
|
if (pickDate != null) {
|
||||||
if(type=='cadastro'){
|
if(type=='cadastro'){
|
||||||
date_cad = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}';
|
date_cad = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}';
|
||||||
@@ -601,16 +654,16 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: ()async=> await OnBackButton().onBackButton(context),
|
onWillPop: !edit?null:()async=> await OnBackButton().onBackButton(context, widget.username),
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Individual'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Individual',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
decoration: ConstVariable().backgroundGradient,
|
decoration: ConstVariable().backgroundGradient,
|
||||||
child: ListView(
|
child: ListView(
|
||||||
children: [
|
children: [
|
||||||
SubtitleAppbarCitizen(title: 2,edit: showTab,listData: widget.listData),
|
SubtitleAppbarCitizen(title: 2,edit: showTab,listData: widget.listData,username: widget.username),
|
||||||
showCheckError?Card(
|
showCheckError?Card(
|
||||||
margin: EdgeInsets.all(10),
|
margin: EdgeInsets.all(10),
|
||||||
child: Container(
|
child: Container(
|
||||||
@@ -691,7 +744,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
mainAxisAlignment: MainAxisAlignment.start,
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitleCidadao(
|
||||||
list:listINE,
|
list:listINE,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
subtitle: 'INE / Área - Microárea',
|
subtitle: 'INE / Área - Microárea',
|
||||||
@@ -699,7 +752,13 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
select: INE,
|
select: INE,
|
||||||
widthDropdown: width*0.69,
|
widthDropdown: width*0.69,
|
||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
onChanged:!editing?null: (value)=>setState(()=>INE = value),
|
onChanged:!editing?null: (value)=>setState((){
|
||||||
|
INE = value;
|
||||||
|
print('ID_AREA_CIDADAO');
|
||||||
|
print(INE!.ID_AREA_CIDADAO);
|
||||||
|
print('ID_MICROAREA_CIDADAO');
|
||||||
|
print(INE!.ID_MICROAREA_CIDADAO);
|
||||||
|
}),
|
||||||
onTapDelete: ()=>setState(()=>INE=null),
|
onTapDelete: ()=>setState(()=>INE=null),
|
||||||
),
|
),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
@@ -1156,6 +1215,18 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
value: CANCER,
|
value: CANCER,
|
||||||
onChanged: !editing?null: (value)=>setState(()=>CANCER = value),
|
onChanged: !editing?null: (value)=>setState(()=>CANCER = value),
|
||||||
),
|
),
|
||||||
|
SwitchWithSubtitle(
|
||||||
|
width: width*0.7,
|
||||||
|
title: 'Fibromialgia',
|
||||||
|
value: FIBROMIALGIA ,
|
||||||
|
onChanged: !editing?null: (value)=>setState(()=>FIBROMIALGIA = value),
|
||||||
|
),
|
||||||
|
SwitchWithSubtitle(
|
||||||
|
width: width*0.7,
|
||||||
|
title: 'Transtorno Espectro Autista',
|
||||||
|
value: TRANSTORNO_ESPECTRO_AUTISTA,
|
||||||
|
onChanged: !editing?null: (value)=>setState(()=>TRANSTORNO_ESPECTRO_AUTISTA = value),
|
||||||
|
),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
title: 'Internação nos Últimos 12 Meses',
|
title: 'Internação nos Últimos 12 Meses',
|
||||||
@@ -1475,7 +1546,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
|
|||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
controller: ID_RESP_CADASTRO,
|
controller: USUARIO_RESP_CADASTRO,
|
||||||
subtitle: 'Usuário responsável Pelo Cadastro',
|
subtitle: 'Usuário responsável Pelo Cadastro',
|
||||||
errorInput: 'Campo Obrigatório!',
|
errorInput: 'Campo Obrigatório!',
|
||||||
labelInput: 'Usuário responsável Pelo Cadastro',
|
labelInput: 'Usuário responsável Pelo Cadastro',
|
||||||
|
|||||||
@@ -7,7 +7,9 @@ import 'package:rkm/models/drop_down_data_model.dart';
|
|||||||
import 'package:rkm/service/db/db_sqlite_Sigtap.dart';
|
import 'package:rkm/service/db/db_sqlite_Sigtap.dart';
|
||||||
import 'package:rkm/widgets/alert_dialog_default.dart';
|
import 'package:rkm/widgets/alert_dialog_default.dart';
|
||||||
import 'package:rkm/widgets/appbar_default.dart';
|
import 'package:rkm/widgets/appbar_default.dart';
|
||||||
|
import 'package:sqflite/sqflite.dart';
|
||||||
import '../../config/const_variable.dart';
|
import '../../config/const_variable.dart';
|
||||||
|
import '../../models/check_proced_sia_model.dart';
|
||||||
import '../../models/drop_down_data_string_model.dart';
|
import '../../models/drop_down_data_string_model.dart';
|
||||||
import '../../service/api/api_data_import_sigtap.dart';
|
import '../../service/api/api_data_import_sigtap.dart';
|
||||||
import '../../service/db/db_querys.dart';
|
import '../../service/db/db_querys.dart';
|
||||||
@@ -22,16 +24,19 @@ import '../../widgets/input_with_subtitle.dart';
|
|||||||
import '../../widgets/onbackbutton.dart';
|
import '../../widgets/onbackbutton.dart';
|
||||||
import '../../widgets/text_default.dart';
|
import '../../widgets/text_default.dart';
|
||||||
import '../../widgets/title_containers.dart';
|
import '../../widgets/title_containers.dart';
|
||||||
|
import '../home_screen.dart';
|
||||||
|
|
||||||
class ServiceHomeScreen extends StatefulWidget {
|
class AtendimentoDomiciliarTela extends StatefulWidget {
|
||||||
String name;
|
String name;
|
||||||
ServiceHomeScreen({required this.name});
|
String username;
|
||||||
|
var dados;
|
||||||
|
AtendimentoDomiciliarTela({required this.name,required this.username, required this.dados});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ServiceHomeScreen> createState() => _ServiceHomeScreenState();
|
State<AtendimentoDomiciliarTela> createState() => _AtendimentoDomiciliarTelaState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
||||||
|
|
||||||
var NOME_PROFISSIONAL = TextEditingController();
|
var NOME_PROFISSIONAL = TextEditingController();
|
||||||
var CNES_UNIDADE = TextEditingController();
|
var CNES_UNIDADE = TextEditingController();
|
||||||
@@ -40,7 +45,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
|
|
||||||
String date='';
|
String date='';
|
||||||
String dateDB='';
|
String dateDB='';
|
||||||
String idUsuario='';
|
int idUsuario=0;
|
||||||
String idUnidade='';
|
String idUnidade='';
|
||||||
String? nameCityApi;
|
String? nameCityApi;
|
||||||
String? mode;
|
String? mode;
|
||||||
@@ -48,18 +53,20 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
String CD_USUARIO_SUS = '';
|
String CD_USUARIO_SUS = '';
|
||||||
String INE_PROFISSIONAL = '';
|
String INE_PROFISSIONAL = '';
|
||||||
|
|
||||||
|
int ID_ATENDIMENTO_DOMICILIAR = 0;
|
||||||
int ID_CIDADAO=0;
|
int ID_CIDADAO=0;
|
||||||
int ID_PROFISSIONAL=0;
|
int ID_PROFISSIONAL=0;
|
||||||
int LOCAL_ATENDIMENTO_COD=0;
|
int LOCAL_ATENDIMENTO_COD=0;
|
||||||
int TIPO_ATENDIMENTO_COD=0;
|
int TIPO_ATENDIMENTO_COD=0;
|
||||||
int MODALIDADE_COD=0;
|
int MODALIDADE_COD=0;
|
||||||
int TURNO_COD=0;
|
int TURNO_COD=0;
|
||||||
int CIAP_COD=0;
|
String CIAP_COD='';
|
||||||
int CONDUTA_COD=0;
|
int CONDUTA_COD=0;
|
||||||
int ID_EQUIPE=0;
|
int ID_EQUIPE=0;
|
||||||
String CID_COD='';
|
String CID_COD='';
|
||||||
|
|
||||||
String? CBO_PROFISSIONAL;
|
String? CBO_PROFISSIONAL;
|
||||||
|
String? CBO_PROFISSIONAL_DB;
|
||||||
String? CIAP;
|
String? CIAP;
|
||||||
String? CID;
|
String? CID;
|
||||||
String? CBO_RESP_CADASTRO;
|
String? CBO_RESP_CADASTRO;
|
||||||
@@ -71,19 +78,22 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
String? CONDUTA;
|
String? CONDUTA;
|
||||||
|
|
||||||
List<CheckModel> serviceHomeModel = [];
|
List<CheckModel> serviceHomeModel = [];
|
||||||
List<CheckModel> serviceProcModel = [];
|
List<CheckProcedSiaModel> serviceProcModel = [];
|
||||||
List <String>listCBO = [];
|
List <String>listCBO = [];
|
||||||
List <String>listServicePlace = [];
|
List <String>listServicePlace = [];
|
||||||
List <String>typeService = [];
|
List <String>typeService = [];
|
||||||
List <String>typeModelService = [];
|
List <String>typeModelService = [];
|
||||||
List <String>typeTurnService = [];
|
List <String>typeTurnService = [];
|
||||||
List <String>listINEPROF = [];
|
List <String>listINEPROF = [];
|
||||||
List<DropDownDataModel> listCIAP = [];
|
List<DropDownDataStringModel> listCIAP = [];
|
||||||
List<DropDownDataStringModel> listCID = [];
|
List<DropDownDataStringModel> listCID = [];
|
||||||
List<String> PROCEDIMENTOS_SIGTAP = [];
|
List<String> PROCEDIMENTOS_SIGTAP = [];
|
||||||
List<String> ATENDS_DOM_PROC = [];
|
List<String> ATENDS_DOM_PROC = [];
|
||||||
List<String> listConduct = [];
|
List<String> listConduct = [];
|
||||||
List listProc = [];
|
List listProc = [];
|
||||||
|
List CBOS_PROFISSIONAL=[];
|
||||||
|
List condicoes = [];
|
||||||
|
List procedimentos = [];
|
||||||
|
|
||||||
bool CNS_VALIDO = false;
|
bool CNS_VALIDO = false;
|
||||||
bool mandatory = false;
|
bool mandatory = false;
|
||||||
@@ -129,45 +139,45 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
|
|
||||||
getUser()async{
|
getUser()async{
|
||||||
final PrefService _prefService = PrefService();
|
final PrefService _prefService = PrefService();
|
||||||
_prefService.readCacheIdUsuario('idUsuario').then((value){
|
_prefService.readCacheIDUser().then((value){
|
||||||
if(value != null){
|
if(value != 0){
|
||||||
idUsuario = value;
|
idUsuario = int.parse(value);
|
||||||
|
// print('idUsuario get');
|
||||||
|
// print(idUsuario);
|
||||||
loadData();
|
loadData();
|
||||||
|
getPro();
|
||||||
|
// getProcedimentos();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
_prefService.readCacheUnidade('idUnidade').then((value){
|
_prefService.readCacheUnidade().then((value){
|
||||||
if(value!=null){
|
if(value!=null){
|
||||||
idUnidade = value[0];
|
idUnidade = value[0].toString();
|
||||||
CNES_UNIDADE.text = value[1];
|
CNES_UNIDADE.text = value[1];
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
await DbSqliteLoad().intialDB().then((db)async{
|
|
||||||
List list = await db.query('ARGS');
|
|
||||||
urlAPI = list[0]['URLAPI'];
|
|
||||||
mode = list[0]['MODE'];
|
|
||||||
nameCityApi = list[0]['NAME_CITY_API'];
|
|
||||||
}).then((value)async{
|
|
||||||
await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((value)async{
|
|
||||||
await DbSqliteSigtap().saveProceduresSigtapDB(value).then((db)async{
|
|
||||||
List list = await db.query('PROCEDIMENTOS_SIGTAP');
|
|
||||||
for(int i = 0; list.length>i;i++){
|
|
||||||
if(list[i]['COD_PROC_SIGTAP']!=null && list[i]['DESC_PROC_SIGTAP']!=null){
|
|
||||||
PROCEDIMENTOS_SIGTAP.add(list[i]['COD_PROC_SIGTAP']+' - ' + list[i]['DESC_PROC_SIGTAP']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setState(() {});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
await DBQuerys().buscaCIAP().then((list){
|
await DBQuerys().buscaCIAP().then((list){
|
||||||
listCIAP.add(DropDownDataModel(cod: int.parse(list['CODIGO_CIAP']), title: list['DESC_CIAP']));
|
for(int i = 0 ; list.length > i ; i++){
|
||||||
|
listCIAP.add(DropDownDataStringModel(cod: list[i]['CODIGO_CIAP'], title: list[i]['DESC_CIAP']));
|
||||||
|
}
|
||||||
});
|
});
|
||||||
await DBQuerys().buscaCID().then((list){
|
await DBQuerys().buscaCID().then((list){
|
||||||
listCID.add(DropDownDataStringModel(cod: list['CODIGO_CID'], title: list['DESCRICAO_CID']));
|
for(int i = 0 ; list.length > i ; i++){
|
||||||
|
listCID.add(DropDownDataStringModel(cod: list[i]['CODIGO_CID'], title: list[i]['DESCRICAO_CID']));
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
loadData()async{
|
loadData()async{
|
||||||
|
// print('idUsuario');
|
||||||
|
// print(idUsuario);
|
||||||
|
await DBQuerys().buscaAtendDomProc().then((value){
|
||||||
|
|
||||||
|
for(int i = 0 ; value.length > i ; i++){
|
||||||
|
PROCEDIMENTOS_SIGTAP.add('${value[i]['COD_PROC_SIGTAP']} - ${value[i]['DESC_PROC_SIGTAP']}');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
|
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
|
||||||
ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
|
ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
|
||||||
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
|
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
|
||||||
@@ -175,30 +185,75 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){
|
||||||
CNS_VALIDO = true;
|
CNS_VALIDO = true;
|
||||||
}
|
}
|
||||||
setState(() {});
|
|
||||||
});
|
|
||||||
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
|
|
||||||
if(list.length!=0){
|
|
||||||
for(int i = 0; list.length>i;i++){
|
|
||||||
listCBO.add(list[i]['CODIGO_CBO'].toString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
|
|
||||||
setState(() {});
|
|
||||||
});
|
});
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
for(int i=0; list.length > i;i++){
|
for(int i=0; list.length > i;i++){
|
||||||
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
|
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}';
|
||||||
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
|
listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}');
|
||||||
}
|
}
|
||||||
setState(() {});
|
setState(() {});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getPro()async{
|
||||||
|
Database dbcbo = await DbSqliteLoad().intialDB();
|
||||||
|
var query = 'SELECT * FROM PROFISSIONAIS_CBOS WHERE ID_PROFISSIONAL = $idUsuario';
|
||||||
|
List listcbo = await dbcbo.rawQuery(query);
|
||||||
|
|
||||||
|
if(listcbo.length!=0){
|
||||||
|
for(int i = 0; listcbo.length>i;i++){
|
||||||
|
await DBQuerys().buscaCBOSProfissional(listcbo[i]['CODIGO_CBO']).then((cbo)async{
|
||||||
|
if(cbo.length!=0){
|
||||||
|
listCBO.add(cbo[0]['DESCRICAO_CBO']+' - '+listcbo[i]['CODIGO_CBO'].toString());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if(widget.dados!=null){
|
||||||
|
editarAtendimento();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getProcedimentos()async{
|
||||||
|
List CBOS = [];
|
||||||
|
await DBQuerys().buscaCBOProfissional(idUsuario).then((cbosProfissional){
|
||||||
|
if(cbosProfissional.length!=0){
|
||||||
|
for(int i = 0; cbosProfissional.length>i;i++){
|
||||||
|
CBOS.add(cbosProfissional[i]['CODIGO_CBO'].toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CBO_RESP_CADASTRO = cbosProfissional.length == 0?null:cbosProfissional[0]['CODIGO_CBO'].toString();
|
||||||
|
|
||||||
|
}).then((value)async{
|
||||||
|
|
||||||
|
print('CBOS.length');
|
||||||
|
print(CBOS.length);
|
||||||
|
print(CBOS);
|
||||||
|
|
||||||
|
for(int i = 0; CBOS.length>i;i++){
|
||||||
|
await DBQuerys().buscaPROCEDIMENTOS_SIGTAP_CBO(CBOS[i]).then((dadosCBOS)async{
|
||||||
|
print('dadosCBOS.length');
|
||||||
|
print(dadosCBOS.length);
|
||||||
|
print(dadosCBOS[0]);
|
||||||
|
for(int i = 0; dadosCBOS.length>i;i++){
|
||||||
|
await DBQuerys().buscaPROCEDIMENTOS_SIGTAP(dadosCBOS[i]['COD_PROC_SIGTAP']).then((dadosSIGTAP){
|
||||||
|
PROCEDIMENTOS_SIGTAP.add('${dadosSIGTAP[i]['COD_PROC_SIGTAP']} - ${dadosSIGTAP[i]['DESC_PROC_SIGTAP']}');
|
||||||
|
// print('dadosSIGTAP');
|
||||||
|
// print(dadosSIGTAP[0]);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
print('PROCEDIMENTOS_SIGTAP');
|
||||||
|
print(PROCEDIMENTOS_SIGTAP.length);
|
||||||
|
print(PROCEDIMENTOS_SIGTAP);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
checkSave()async{
|
checkSave()async{
|
||||||
// adicionar depois e usar um usuário real
|
// adicionar depois e usar um usuário real
|
||||||
// CBO_RESP_CADASTRO
|
// CBO_RESP_CADASTRO
|
||||||
//ok
|
//ok
|
||||||
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0
|
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null || CONDUTA == null
|
||||||
){
|
){
|
||||||
print('erro');
|
print('erro');
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -206,7 +261,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
mandatory = true;
|
mandatory = true;
|
||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
print('passou');
|
print('teste');
|
||||||
setState(() {
|
setState(() {
|
||||||
mandatory = false;
|
mandatory = false;
|
||||||
showCheckError = false;
|
showCheckError = false;
|
||||||
@@ -215,12 +270,113 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
editarAtendimento()async{
|
||||||
|
|
||||||
|
Map map = widget.dados;
|
||||||
|
|
||||||
|
map.forEach((chave,valor){
|
||||||
|
print('$chave: $valor' );
|
||||||
|
});
|
||||||
|
|
||||||
|
ID_ATENDIMENTO_DOMICILIAR = map['ID_ATENDIMENTO_DOMICILIAR'];
|
||||||
|
dateDB = map['DATA'];
|
||||||
|
List splited = dateDB.split('-');
|
||||||
|
date = '${splited[2]}/${splited[1]}/${splited[0]}';
|
||||||
|
LOCAL_ATENDIMENTO_COD = map['LOCAL_ATENDIMENTO'];
|
||||||
|
for(int i = 0;ConstVariable().listServicePlace.length >i;i++){
|
||||||
|
if(ConstVariable().listServicePlace[i].cod == LOCAL_ATENDIMENTO_COD){
|
||||||
|
LOCAL_ATENDIMENTO = ConstVariable().listServicePlace[i].title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
TIPO_ATENDIMENTO_COD = map['TIPO_ATENDIMENTO'];
|
||||||
|
for(int i = 0;ConstVariable().typeService.length >i;i++){
|
||||||
|
if(ConstVariable().typeService[i].cod == TIPO_ATENDIMENTO_COD){
|
||||||
|
TIPO_ATENDIMENTO = ConstVariable().typeService[i].title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CBO_PROFISSIONAL_DB = map['CBO_PROFISSIONAL'];
|
||||||
|
for(int i = 0;listCBO.length > i; i++){
|
||||||
|
String splited = listCBO[i].split(' - ').last;
|
||||||
|
if(splited == CBO_PROFISSIONAL_DB){
|
||||||
|
CBO_PROFISSIONAL = listCBO[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ID_EQUIPE = map['ID_EQUIPE'];
|
||||||
|
List listINE = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
|
int AREA_DESCRICAO = 0;
|
||||||
|
int MICROAREA_DESCRICAO = 0;
|
||||||
|
for(int i = 0;listINE.length >i;i++){
|
||||||
|
if(listINE[i]['ID_EQUIPE']==ID_EQUIPE){
|
||||||
|
INE_PROFISSIONAL = listINE[i]['INE']??'';
|
||||||
|
AREA_DESCRICAO = listINE[i]['AREA'];
|
||||||
|
MICROAREA_DESCRICAO = listINE[i]['MICROAREA'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for(int i = 0;listINEPROF.length >i;i++){
|
||||||
|
RegExp ineRegExp = RegExp(r"INE:\s(\d+)");
|
||||||
|
RegExp areaRegExp = RegExp(r"Área:\s(\d+)");
|
||||||
|
RegExp microareaRegExp = RegExp(r"Microárea\s:\s(\d+)");
|
||||||
|
|
||||||
|
String ine = ineRegExp.firstMatch(listINEPROF[i])?.group(1) ?? '';
|
||||||
|
String area = areaRegExp.firstMatch(listINEPROF[i])?.group(1) ?? '';
|
||||||
|
String microarea = microareaRegExp.firstMatch(listINEPROF[i])?.group(1) ?? '';
|
||||||
|
|
||||||
|
if(INE_PROFISSIONAL==ine && AREA_DESCRICAO.toString() == area && MICROAREA_DESCRICAO.toString() == microarea){
|
||||||
|
INE_RESP_CADASTRO = listINEPROF[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MODALIDADE_COD = map['MODALIDADE'];
|
||||||
|
for(int i = 0;ConstVariable().typeModelService.length >i;i++){
|
||||||
|
if(ConstVariable().typeModelService[i].cod == MODALIDADE_COD){
|
||||||
|
MODALIDADE = ConstVariable().typeModelService[i].title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
TURNO_COD = map['TURNO'];
|
||||||
|
for(int i = 0;ConstVariable().typeTurnService.length >i;i++){
|
||||||
|
if(ConstVariable().typeTurnService[i].cod == TURNO_COD){
|
||||||
|
TURNO = ConstVariable().typeTurnService[i].title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
condicoes = await db.query('ATENDS_DOM_COMPL WHERE ID_ATENDIMENTO_DOMICILIAR = $ID_ATENDIMENTO_DOMICILIAR');
|
||||||
|
procedimentos = await db.query('ATENDS_DOM_PROC WHERE ID_ATENDIMENTO_DOMICILIAR = $ID_ATENDIMENTO_DOMICILIAR');
|
||||||
|
// print(condicoes);
|
||||||
|
print(procedimentos);
|
||||||
|
for (int index = 0; index < ConstVariable().serviceHomeCheckConditionlist.length; index++) {
|
||||||
|
bool checkValue = condicoes.any((cond) =>cond['COND_AVAL_ATEND_DOM'] == index + 1);
|
||||||
|
serviceHomeModel.add(
|
||||||
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
|
subtitle: ConstVariable().serviceHomeCheckConditionlist[index],
|
||||||
|
check: checkValue,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
for (int index = 0; index < ConstVariable().serviceHomeCheckProclist.length; index++) {
|
||||||
|
bool checkValue = procedimentos.any((cond) =>cond['PROC_ATEND_DOM'] == ConstVariable().serviceHomeCheckProclist[index].COD_SIA);
|
||||||
|
serviceProcModel.add(
|
||||||
|
CheckProcedSiaModel(
|
||||||
|
COD_SIA: ConstVariable().serviceHomeCheckProclist[index].COD_SIA,
|
||||||
|
DESCRICAO_PROCEDIMENTO: ConstVariable().serviceHomeCheckProclist[index].DESCRICAO_PROCEDIMENTO,
|
||||||
|
check: checkValue
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
CONDUTA_COD = map['CONDUTA'];
|
||||||
|
for(int i = 0;ConstVariable().listConduct.length >i;i++){
|
||||||
|
if(ConstVariable().listConduct[i].cod == CONDUTA_COD){
|
||||||
|
CONDUTA = ConstVariable().listConduct[i].title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
|
||||||
saveServiceHome()async{
|
saveServiceHome()async{
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_CIDADAO' : ID_CIDADAO,
|
'ID_CIDADAO' : ID_CIDADAO,
|
||||||
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
|
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
|
||||||
'ID_PROFISSIONAL' : int.parse(idUsuario),
|
'ID_PROFISSIONAL' : idUsuario,
|
||||||
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
|
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL_DB,
|
||||||
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
|
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
|
||||||
'CNES_UNIDADE' : CNES_UNIDADE.text,
|
'CNES_UNIDADE' : CNES_UNIDADE.text,
|
||||||
'ID_UNIDADE' : int.parse(idUnidade),
|
'ID_UNIDADE' : int.parse(idUnidade),
|
||||||
@@ -235,15 +391,26 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
'CONDUTA' : CONDUTA_COD,
|
'CONDUTA' : CONDUTA_COD,
|
||||||
'SINCRONIZADO' : 'N',
|
'SINCRONIZADO' : 'N',
|
||||||
};
|
};
|
||||||
await DbSqliteSync().insertAtendimentoDomiciliar(row).then((value){
|
await DbSqliteSync().insertAtendimentoDomiciliar(row,widget.dados==null,ID_ATENDIMENTO_DOMICILIAR).then((value)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
await db.delete(
|
||||||
|
'ATENDS_DOM_COMPL', // Substitua pelo nome da sua tabela
|
||||||
|
where: 'ID_ATENDIMENTO_DOMICILIAR = ?',
|
||||||
|
whereArgs: [ID_ATENDIMENTO_DOMICILIAR],
|
||||||
|
);
|
||||||
for(int i = 0;serviceHomeModel.length>i;i++){
|
for(int i = 0;serviceHomeModel.length>i;i++){
|
||||||
if(serviceHomeModel[i].check){
|
if(serviceHomeModel[i].check){
|
||||||
DbSqliteSync().insertCondicoesAvaliadas(value,i+1);
|
DbSqliteSync().insertCondicoesAvaliadas(value,i+1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
await db.delete(
|
||||||
|
'ATENDS_DOM_PROC', // Substitua pelo nome da sua tabela
|
||||||
|
where: 'ID_ATENDIMENTO_DOMICILIAR = ?',
|
||||||
|
whereArgs: [ID_ATENDIMENTO_DOMICILIAR],
|
||||||
|
);
|
||||||
for(int i = 0;serviceProcModel.length>i;i++){
|
for(int i = 0;serviceProcModel.length>i;i++){
|
||||||
if(serviceProcModel[i].check){
|
if(serviceProcModel[i].check){
|
||||||
DbSqliteSync().insertProcedimentosDomiciliares(value,i+1);
|
DbSqliteSync().insertProcedimentosDomiciliares(value,serviceProcModel[i].COD_SIA);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
@@ -252,6 +419,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
'Atendimento Domiciliar salvo com sucesso!',
|
'Atendimento Domiciliar salvo com sucesso!',
|
||||||
'OK'
|
'OK'
|
||||||
);
|
);
|
||||||
|
Navigator.pushAndRemoveUntil(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: widget.username)), (route) => false);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -260,16 +428,18 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
ID_CIDADAO = list[0]['ID_CIDADAO'];
|
ID_CIDADAO = list[0]['ID_CIDADAO'];
|
||||||
CD_USUARIO_SUS = list[0]['CD_USUARIO_SUS'];
|
CD_USUARIO_SUS = list[0]['CD_USUARIO_SUS'];
|
||||||
});
|
});
|
||||||
|
if(widget.dados==null){
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
INE_PROFISSIONAL = list[0]['INE'];
|
INE_PROFISSIONAL = list[0]['INE']??'';
|
||||||
ID_EQUIPE = list[0]['ID_EQUIPE'];
|
ID_EQUIPE = list[0]['ID_EQUIPE']??0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
dadosCidadao();
|
|
||||||
getUser();
|
getUser();
|
||||||
|
dadosCidadao();
|
||||||
loadLists();
|
loadLists();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -280,9 +450,9 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: ()async=> await OnBackButton().onBackButton(context),
|
onWillPop: ()async=> await OnBackButton().onBackButton(context, widget.username),
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Domiciliar'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Domiciliar',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
@@ -338,6 +508,9 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
onChanged: (value){
|
onChanged: (value){
|
||||||
setState(() {
|
setState(() {
|
||||||
CBO_PROFISSIONAL = value!;
|
CBO_PROFISSIONAL = value!;
|
||||||
|
List list = CBO_PROFISSIONAL.toString().split(' - ');
|
||||||
|
CBO_PROFISSIONAL_DB = list.last;
|
||||||
|
print(CBO_PROFISSIONAL_DB);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
@@ -494,19 +667,22 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
children: [
|
children: [
|
||||||
SizedBox(height: 10,),
|
SizedBox(height: 10,),
|
||||||
TitleContainers(title: 'Condição Avaliada',width: width * 0.73),
|
TitleContainers(title: 'Condição Avaliada',width: width * 0.73),
|
||||||
Container(
|
widget.dados!=null && serviceHomeModel.length !=ConstVariable().serviceHomeCheckConditionlist.length?Container():Container(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
height: heigth*1.3,
|
height: 1160,
|
||||||
child: ListView.builder(
|
child: ListView.builder(
|
||||||
physics: const NeverScrollableScrollPhysics(),
|
physics: const NeverScrollableScrollPhysics(),
|
||||||
itemCount: ConstVariable().serviceHomeCheckConditionlist.length,
|
itemCount: ConstVariable().serviceHomeCheckConditionlist.length,
|
||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
|
if(widget.dados==null){
|
||||||
serviceHomeModel.add(
|
serviceHomeModel.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().serviceHomeCheckConditionlist[index],
|
subtitle: ConstVariable().serviceHomeCheckConditionlist[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
}
|
||||||
return CheckBoxSubtitle(
|
return CheckBoxSubtitle(
|
||||||
subtitle: serviceHomeModel[index].subtitle,
|
subtitle: serviceHomeModel[index].subtitle,
|
||||||
checkbox:serviceHomeModel[index].check,
|
checkbox:serviceHomeModel[index].check,
|
||||||
@@ -568,7 +744,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
padding: EdgeInsets.symmetric(vertical: 10),
|
padding: EdgeInsets.symmetric(vertical: 10),
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
child: TextDefault(
|
child: TextDefault(
|
||||||
text: CID!=null?'CID $CIAP':'CID',
|
text: CID!=null?'CID $CID':'CID',
|
||||||
color:Colors.black,
|
color:Colors.black,
|
||||||
fontSize: 15,
|
fontSize: 15,
|
||||||
)
|
)
|
||||||
@@ -598,22 +774,31 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
padding: const EdgeInsets.symmetric(horizontal: 10.0),
|
padding: const EdgeInsets.symmetric(horizontal: 10.0),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
height: heigth*1.2,
|
height: 970,
|
||||||
child: ListView.builder(
|
child: ListView.builder(
|
||||||
physics: const NeverScrollableScrollPhysics(),
|
physics: const NeverScrollableScrollPhysics(),
|
||||||
itemCount: ConstVariable().serviceHomeCheckProclist.length,
|
itemCount: ConstVariable().serviceHomeCheckProclist.length,
|
||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
|
|
||||||
|
if(widget.dados==null){
|
||||||
serviceProcModel.add(
|
serviceProcModel.add(
|
||||||
CheckModel(
|
CheckProcedSiaModel(
|
||||||
subtitle: ConstVariable().serviceHomeCheckProclist[index],
|
COD_SIA: ConstVariable().serviceHomeCheckProclist[index].COD_SIA,
|
||||||
check: false
|
DESCRICAO_PROCEDIMENTO: ConstVariable().serviceHomeCheckProclist[index].DESCRICAO_PROCEDIMENTO,
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
|
||||||
return CheckBoxSubtitle(
|
return CheckBoxSubtitle(
|
||||||
subtitle: serviceProcModel[index].subtitle,
|
subtitle: serviceProcModel[index].DESCRICAO_PROCEDIMENTO,
|
||||||
checkbox:serviceProcModel[index].check,
|
checkbox:serviceProcModel[index].check,
|
||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
onChanged: (value)=>setState(()=>serviceProcModel[index].check=value),
|
onChanged: (value)=>setState((){
|
||||||
|
serviceProcModel[index].check=value;
|
||||||
|
print(serviceProcModel[index].COD_SIA);
|
||||||
|
print(serviceProcModel[index].DESCRICAO_PROCEDIMENTO);
|
||||||
|
print(serviceProcModel[index].check);
|
||||||
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
@@ -675,7 +860,9 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 5.0),
|
padding: const EdgeInsets.symmetric(horizontal: 5.0),
|
||||||
child: Container(
|
child: Column(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
@@ -702,10 +889,13 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
|
|||||||
)
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
),
|
||||||
|
CONDUTA_COD ==0 && mandatory?ErrorDefault():Container(),
|
||||||
|
],
|
||||||
)
|
)
|
||||||
)
|
),
|
||||||
]
|
]
|
||||||
)
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
@@ -1,7 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/config/const_variable.dart';
|
||||||
|
import 'package:rkm/widgets/appbar_default.dart';
|
||||||
|
import 'package:rkm/widgets/screen_dev.dart';
|
||||||
|
|
||||||
class ComplementarySheetScreen extends StatefulWidget {
|
class ComplementarySheetScreen extends StatefulWidget {
|
||||||
const ComplementarySheetScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
ComplementarySheetScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ComplementarySheetScreen> createState() => _ComplementarySheetScreenState();
|
State<ComplementarySheetScreen> createState() => _ComplementarySheetScreenState();
|
||||||
@@ -10,6 +14,10 @@ class ComplementarySheetScreen extends StatefulWidget {
|
|||||||
class _ComplementarySheetScreenState extends State<ComplementarySheetScreen> {
|
class _ComplementarySheetScreenState extends State<ComplementarySheetScreen> {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Center(child: Text('Ficha Complementar'),);
|
|
||||||
|
return Scaffold(
|
||||||
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Ficha Complemetar',widget.username),
|
||||||
|
body: ScreenDev(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
import '../../widgets/appbar_default.dart';
|
||||||
|
import '../../widgets/screen_dev.dart';
|
||||||
|
|
||||||
class ConsumptionMarkersScreen extends StatefulWidget {
|
class ConsumptionMarkersScreen extends StatefulWidget {
|
||||||
const ConsumptionMarkersScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
ConsumptionMarkersScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ConsumptionMarkersScreen> createState() => _ConsumptionMarkersScreenState();
|
State<ConsumptionMarkersScreen> createState() => _ConsumptionMarkersScreenState();
|
||||||
@@ -10,6 +14,9 @@ class ConsumptionMarkersScreen extends StatefulWidget {
|
|||||||
class _ConsumptionMarkersScreenState extends State<ConsumptionMarkersScreen> {
|
class _ConsumptionMarkersScreenState extends State<ConsumptionMarkersScreen> {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Center(child: Text('Marcadores de Consumo'),);
|
return Scaffold(
|
||||||
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Marcadores de Consumo',widget.username),
|
||||||
|
body: ScreenDev(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import '../../widgets/appbar_default.dart';
|
||||||
|
import '../../widgets/screen_dev.dart';
|
||||||
|
|
||||||
class EligibilityAssessmentScreen extends StatefulWidget {
|
class EligibilityAssessmentScreen extends StatefulWidget {
|
||||||
const EligibilityAssessmentScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
|
||||||
|
EligibilityAssessmentScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<EligibilityAssessmentScreen> createState() => _EligibilityAssessmentScreenState();
|
State<EligibilityAssessmentScreen> createState() => _EligibilityAssessmentScreenState();
|
||||||
@@ -10,6 +14,9 @@ class EligibilityAssessmentScreen extends StatefulWidget {
|
|||||||
class _EligibilityAssessmentScreenState extends State<EligibilityAssessmentScreen> {
|
class _EligibilityAssessmentScreenState extends State<EligibilityAssessmentScreen> {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Center(child: Text('Avaliação de Elegibilidade'),);
|
return Scaffold(
|
||||||
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Avaliação de Elegibilidade',widget.username),
|
||||||
|
body: ScreenDev(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,13 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
import '../../widgets/appbar_default.dart';
|
||||||
|
import '../../widgets/screen_dev.dart';
|
||||||
|
|
||||||
class ProceduresScreen extends StatefulWidget {
|
class ProceduresScreen extends StatefulWidget {
|
||||||
const ProceduresScreen({Key? key}) : super(key: key);
|
|
||||||
|
String username;
|
||||||
|
|
||||||
|
ProceduresScreen({required this.username});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ProceduresScreen> createState() => _ProceduresScreenState();
|
State<ProceduresScreen> createState() => _ProceduresScreenState();
|
||||||
@@ -10,6 +16,9 @@ class ProceduresScreen extends StatefulWidget {
|
|||||||
class _ProceduresScreenState extends State<ProceduresScreen> {
|
class _ProceduresScreenState extends State<ProceduresScreen> {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Center(child: Text('Procedimentos'),);
|
return Scaffold(
|
||||||
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos',widget.username),
|
||||||
|
body: ScreenDev(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import '../../widgets/appbar_default.dart';
|
||||||
|
import '../../widgets/screen_dev.dart';
|
||||||
|
|
||||||
class ServiceDentalScreen extends StatefulWidget {
|
class ServiceDentalScreen extends StatefulWidget {
|
||||||
const ServiceDentalScreen({Key? key}) : super(key: key);
|
String username;
|
||||||
|
ServiceDentalScreen({Key? key,required this.username}) : super(key: key);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ServiceDentalScreen> createState() => _ServiceDentalScreenState();
|
State<ServiceDentalScreen> createState() => _ServiceDentalScreenState();
|
||||||
@@ -10,6 +13,9 @@ class ServiceDentalScreen extends StatefulWidget {
|
|||||||
class _ServiceDentalScreenState extends State<ServiceDentalScreen> {
|
class _ServiceDentalScreenState extends State<ServiceDentalScreen> {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Center(child: Text('Atendimento Odontológico'),);
|
return Scaffold(
|
||||||
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Odontológico',widget.username),
|
||||||
|
body: ScreenDev(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,11 +2,13 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:line_icons/line_icons.dart';
|
import 'package:line_icons/line_icons.dart';
|
||||||
import 'package:rkm/widgets/input_text.dart';
|
import 'package:rkm/widgets/input_text.dart';
|
||||||
|
import 'package:sqflite/sqflite.dart';
|
||||||
import '../../models/check_model.dart';
|
import '../../models/check_model.dart';
|
||||||
import '../../config/color_palette.dart';
|
import '../../config/color_palette.dart';
|
||||||
import '../../config/const_variable.dart';
|
import '../../config/const_variable.dart';
|
||||||
import '../../models/drop_down_data_model.dart';
|
import '../../models/drop_down_data_model.dart';
|
||||||
import '../../service/db/db_querys.dart';
|
import '../../service/db/db_querys.dart';
|
||||||
|
import '../../service/db/db_sqlite_load.dart';
|
||||||
import '../../widgets/alert_dialog_default.dart';
|
import '../../widgets/alert_dialog_default.dart';
|
||||||
import '../../widgets/appbar_default.dart';
|
import '../../widgets/appbar_default.dart';
|
||||||
import '../../widgets/button_default.dart';
|
import '../../widgets/button_default.dart';
|
||||||
@@ -19,7 +21,11 @@ import '../../widgets/text_default.dart';
|
|||||||
import '../../widgets/title_containers.dart';
|
import '../../widgets/title_containers.dart';
|
||||||
|
|
||||||
class ServiceIndividualScreen extends StatefulWidget {
|
class ServiceIndividualScreen extends StatefulWidget {
|
||||||
const ServiceIndividualScreen({Key? key}) : super(key: key);
|
|
||||||
|
String username;
|
||||||
|
var dataPatient;
|
||||||
|
|
||||||
|
ServiceIndividualScreen({required this.username, required this.dataPatient});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<ServiceIndividualScreen> createState() => _ServiceIndividualScreenState();
|
State<ServiceIndividualScreen> createState() => _ServiceIndividualScreenState();
|
||||||
@@ -66,8 +72,9 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
bool switchUnderObservation = false;
|
bool switchUnderObservation = false;
|
||||||
bool selectExamsRequested = false;
|
bool selectExamsRequested = false;
|
||||||
bool selectExamsAvalible = false;
|
bool selectExamsAvalible = false;
|
||||||
var userResponsibleRegisterController = TextEditingController(text: 'ADMINISTRADOR');
|
bool mandatory = false;
|
||||||
var userUnitController = TextEditingController(text: 'USF PINHAL - EMILIA STEPHANI SIMIONATO');
|
var userResponsibleRegisterController = TextEditingController();
|
||||||
|
var userUnitController = TextEditingController();
|
||||||
var weigthController = TextEditingController();
|
var weigthController = TextEditingController();
|
||||||
var heightController = TextEditingController();
|
var heightController = TextEditingController();
|
||||||
var cephalicPerimeterController = TextEditingController();
|
var cephalicPerimeterController = TextEditingController();
|
||||||
@@ -104,9 +111,20 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
loadUnidade()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
List list = await db.rawQuery("SELECT * FROM CONTROLE_INTERNO");
|
||||||
|
List listArg = await db.rawQuery("SELECT * FROM PROFISSIONAIS WHERE USERNAME = '${widget.username}'");
|
||||||
|
// print(listArg);
|
||||||
|
userUnitController.text = list[0]['NOME_UNIDADE'];
|
||||||
|
userResponsibleRegisterController.text =listArg[0]['NOME_PROFISSIONAL'];
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
|
loadUnidade();
|
||||||
loadLists();
|
loadLists();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -117,9 +135,9 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
onWillPop: ()async=> await OnBackButton().onBackButton(context),
|
onWillPop: ()async=> await OnBackButton().onBackButton(context, widget.username),
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Individual'),
|
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Individual',widget.username),
|
||||||
body: Container(
|
body: Container(
|
||||||
height: double.infinity,
|
height: double.infinity,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
@@ -234,6 +252,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
controller: weigthController,
|
controller: weigthController,
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
mandatory: mandatory,
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
subtitle: 'Altura (em metros - 0,00)',
|
subtitle: 'Altura (em metros - 0,00)',
|
||||||
@@ -245,6 +264,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
controller: heightController,
|
controller: heightController,
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
mandatory: mandatory,
|
||||||
),
|
),
|
||||||
InputWithSubtitle(
|
InputWithSubtitle(
|
||||||
subtitle: 'Perímetro cefálico (em centímetros - 000,00)',
|
subtitle: 'Perímetro cefálico (em centímetros - 000,00)',
|
||||||
@@ -256,6 +276,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
controller: cephalicPerimeterController,
|
controller: cephalicPerimeterController,
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
|
mandatory: mandatory,
|
||||||
),
|
),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
@@ -271,7 +292,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
select: selectBreastfeeding,
|
select: selectBreastfeeding,
|
||||||
widthDropdown: width*0.7,
|
widthDropdown: width*0.7,
|
||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
onChanged: (value)=>setState(()=>selectBreastfeeding = value!),
|
onChanged:widget.dataPatient['SEXO']=='M'?null: (value)=>setState(()=>selectBreastfeeding = value!),
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@@ -464,6 +485,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
serviceConditionModel.add(
|
serviceConditionModel.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().serviceIndividualCheckBoxList[index],
|
subtitle: ConstVariable().serviceIndividualCheckBoxList[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
@@ -494,6 +516,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
communicableDiseasesModel.add(
|
communicableDiseasesModel.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().communicableDiseasesList[index],
|
subtitle: ConstVariable().communicableDiseasesList[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
@@ -518,6 +541,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
trackingModel.add(
|
trackingModel.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().trackingModelList[index],
|
subtitle: ConstVariable().trackingModelList[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
@@ -710,6 +734,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
nasfPoloModelList.add(
|
nasfPoloModelList.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().nasfPoloModelList[index],
|
subtitle: ConstVariable().nasfPoloModelList[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
@@ -734,6 +759,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
conductList.add(
|
conductList.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().conductModelList[index],
|
subtitle: ConstVariable().conductModelList[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
@@ -758,6 +784,7 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
forwardingList.add(
|
forwardingList.add(
|
||||||
CheckModel(
|
CheckModel(
|
||||||
|
cod: 0,
|
||||||
subtitle: ConstVariable().forwardingModelList[index],
|
subtitle: ConstVariable().forwardingModelList[index],
|
||||||
check: false
|
check: false
|
||||||
)
|
)
|
||||||
@@ -865,7 +892,12 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
ButtonDefault(
|
ButtonDefault(
|
||||||
onPressed: (){},
|
onPressed: (){
|
||||||
|
if(heightController.text.isEmpty || heightController.text.isEmpty || cephalicPerimeterController.text.isEmpty){
|
||||||
|
mandatory = true;
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
},
|
||||||
title: 'Salvar',
|
title: 'Salvar',
|
||||||
borderColor: ColorPalette.appBar,
|
borderColor: ColorPalette.appBar,
|
||||||
background: ColorPalette.appBar,
|
background: ColorPalette.appBar,
|
||||||
@@ -879,11 +911,24 @@ class _ServiceIndividualScreenState extends State<ServiceIndividualScreen> {
|
|||||||
background: ColorPalette.blackButton,
|
background: ColorPalette.blackButton,
|
||||||
textColor: ColorPalette.white,
|
textColor: ColorPalette.white,
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
)
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
mandatory?Card(
|
||||||
|
margin: EdgeInsets.all(10),
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(10),
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Icon(Icons.warning,color: Colors.red,),
|
||||||
|
TextDefault(text: 'Existem campos obrigatórios não preenchidos.',color: ColorPalette.red,fontSize: 15,)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
color: ColorPalette.white,
|
||||||
|
):Container(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ class _SplashScreenState extends State<SplashScreen> {
|
|||||||
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(dataControl);
|
||||||
String? url;
|
String? url;
|
||||||
if(list[3]=='desenvolvimento'){
|
if(list[3]=='desenvolvimento'){
|
||||||
url = UrlApiConst.ApiUrlDesenvolvimento;
|
url = UrlApiConst.ApiUrlDesenvolvimento;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/screens/login/sync_login_screen.dart';
|
import 'package:rkm/screens/login/sync_login_screen.dart';
|
||||||
import 'package:rkm/service/api/api_data_sync.dart';
|
import 'package:rkm/service/api/api_data_sync.dart';
|
||||||
import 'package:rkm/service/db/db_sqlite_sync.dart';
|
import 'package:rkm/service/db/db_sqlite_sync.dart';
|
||||||
@@ -6,6 +7,8 @@ import 'package:rkm/config/color_palette.dart';
|
|||||||
import 'package:rkm/widgets/alert_dialog_default.dart';
|
import 'package:rkm/widgets/alert_dialog_default.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import '../service/api/api_data_import_sigtap.dart';
|
||||||
|
import '../service/db/db_sqlite_Sigtap.dart';
|
||||||
import '../service/db/db_sqlite_load.dart';
|
import '../service/db/db_sqlite_load.dart';
|
||||||
import '../service/shared_preferences/shared_preferences_service.dart';
|
import '../service/shared_preferences/shared_preferences_service.dart';
|
||||||
|
|
||||||
@@ -23,9 +26,12 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
String idUsuario = '';
|
String idUsuario = '';
|
||||||
String idUnidade = '';
|
String idUnidade = '';
|
||||||
String nomeUnidade = '';
|
String nomeUnidade = '';
|
||||||
String area = '';
|
int AREA_ID = 0;
|
||||||
String microarea = '';
|
int AREA_DESCRICAO = 0;
|
||||||
|
int MICROAREA_ID = 0;
|
||||||
|
int MICROAREA_DESCRICAO = 0;
|
||||||
bool foraArea = false;
|
bool foraArea = false;
|
||||||
|
int foraAreaInt = 0;
|
||||||
String urlAPI='';
|
String urlAPI='';
|
||||||
String mode = '';
|
String mode = '';
|
||||||
String nameCityApi = '';
|
String nameCityApi = '';
|
||||||
@@ -54,19 +60,26 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
codState = list[0]['COD_STATE'];
|
codState = list[0]['COD_STATE'];
|
||||||
codCityIbge = list[0]['COD_IBGE'];
|
codCityIbge = list[0]['COD_IBGE'];
|
||||||
if(urlAPI!=''){
|
if(urlAPI!=''){
|
||||||
|
print('chegou');
|
||||||
dataUser();
|
dataUser();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
dataUser()async{
|
dataUser()async{
|
||||||
_prefService.readCacheUnidade('idUnidade').then((listUnidade)async{
|
_prefService.readCacheUnidade().then((listUnidade)async{
|
||||||
_prefService.readCacheSync('area', false).then((list){
|
print('listUnidade');
|
||||||
foraArea = list[1];
|
print(listUnidade);
|
||||||
List splited = list[0].split(': ');
|
_prefService.readCacheSync().then((list){
|
||||||
area = splited[2].toString().substring(0,1);
|
print('datauser');
|
||||||
microarea = splited[3];
|
print(list);
|
||||||
idUnidade = listUnidade[0];
|
AREA_ID = list[0];
|
||||||
|
AREA_DESCRICAO = list[1];
|
||||||
|
MICROAREA_ID = list[2];
|
||||||
|
MICROAREA_DESCRICAO = list[3];
|
||||||
|
foraArea = list[9];
|
||||||
|
foraAreaInt = foraArea?1:0;
|
||||||
|
idUnidade = list[5].toString();
|
||||||
nomeUnidade = listUnidade[1];
|
nomeUnidade = listUnidade[1];
|
||||||
initSync();
|
initSync();
|
||||||
});
|
});
|
||||||
@@ -76,144 +89,92 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
initSync()async{
|
initSync()async{
|
||||||
await DbSqliteSync().deleteSync().then((_)async{
|
await DbSqliteSync().deleteSync().then((_)async{
|
||||||
await ApiDataSync().syncPerm(urlAPI,mode,nameCityApi,user).then((response)async{
|
await ApiDataSync().syncPerm(urlAPI,mode,nameCityApi,user).then((response)async{
|
||||||
if(response['status'] == 0 || response['sync_perm'] != "S"){
|
countProg = 0.1;
|
||||||
AlertDialogDefault().alert(context, 'Erro', 'Usuário sem permissão para Sincronização de Unidade!', 'Voltar');
|
|
||||||
}else{
|
|
||||||
setState(()=> messageSteps = "Etapa 1 de 10 - Importando informações do CONECTASUS");
|
setState(()=> messageSteps = "Etapa 1 de 10 - Importando informações do CONECTASUS");
|
||||||
await ApiDataSync().syncBairros(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataSync().syncBairros(urlAPI,mode,nameCityApi,user).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Bairros - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Bairros - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 2 de 10 - Gravando os Bairros no Aplicativo");
|
setState(()=> messageSteps = "Etapa 2 de 10 - Gravando os Bairros no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertBairros(value).then((value)async{
|
||||||
List list = value;
|
countProg = 0.2;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertBairros(value,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
|
||||||
}
|
|
||||||
await ApiDataSync().syncTiposLogradouros(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataSync().syncTiposLogradouros(urlAPI,mode,nameCityApi,user).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Tipos de Logradouros - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Tipos de Logradouros - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 3 de 10 - Gravando os Tipos de Logradouros no Aplicativo");
|
setState(()=> messageSteps = "Etapa 3 de 10 - Gravando os Tipos de Logradouros no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertTiposLogradouros(value).then((value)async{
|
||||||
List list = value;
|
countProg =0.3;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertTiposLogradouros(value,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
|
||||||
}
|
|
||||||
await ApiDataSync().syncLogradouros(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataSync().syncLogradouros(urlAPI,mode,nameCityApi,user).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Logradouros - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Logradouros - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 4 de 10 - Gravando os Logradouros no Aplicativo");
|
setState(()=> messageSteps = "Etapa 4 de 10 - Gravando os Logradouros no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertLogradouros(value).then((value)async{
|
||||||
List list = value;
|
countProg = 0.4;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertLogradouros(value,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
|
||||||
}
|
|
||||||
await ApiDataSync().syncLoteamentos(urlAPI,mode,nameCityApi,user).then((value)async{
|
await ApiDataSync().syncLoteamentos(urlAPI,mode,nameCityApi,user).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Loteamentos - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Loteamentos - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 5 de 10 - Gravando os Loteamentos no Aplicativo");
|
setState(()=> messageSteps = "Etapa 5 de 10 - Gravando os Loteamentos no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertLoteamentos(value).then((value)async{
|
||||||
List list = value;
|
countProg = 0.5;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertLoteamentos(value,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
|
||||||
}
|
|
||||||
await ApiDataSync().syncProfissionais(urlAPI,mode,nameCityApi,user,idUnidade).then((value)async{
|
await ApiDataSync().syncProfissionais(urlAPI,mode,nameCityApi,user,idUnidade).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Profissionais - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Profissionais - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 6 de 10 - Gravando os Profissionais no Aplicativo");
|
setState(()=> messageSteps = "Etapa 6 de 10 - Gravando os Profissionais no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertProfissionais(value).then((value)async{
|
||||||
List list = value;
|
countProg = 0.6;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertProfissionais(value,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
|
||||||
}
|
|
||||||
await ApiDataSync().syncProfissionaisCBOs(urlAPI,mode,nameCityApi,user,idUnidade).then((value)async{
|
await ApiDataSync().syncProfissionaisCBOs(urlAPI,mode,nameCityApi,user,idUnidade).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os CBOs dos Profissionais - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os CBOs dos Profissionais - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 7 de 10 - Gravando os CBO´s dos Profissionais no Aplicativo");
|
setState(()=> messageSteps = "Etapa 7 de 10 - Gravando os CBO´s dos Profissionais no Aplicativo");
|
||||||
}
|
}
|
||||||
List list = value;
|
await DbSqliteSync().insertProfissionaisCBOs(value).then((value)async{
|
||||||
for(int i=0;list.length > i;i++){
|
countProg = 0.7;
|
||||||
await DbSqliteSync().insertProfissionaisCBOs(value,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
await ApiDataSync().syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,AREA_ID,MICROAREA_ID,foraAreaInt).then((value)async{
|
||||||
}
|
|
||||||
await ApiDataSync().syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea).then((value)async{
|
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros dos Cidadãos - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros dos Cidadãos - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 8 de 10 - Gravando os Cidadãos no Aplicativo");
|
setState(()=> messageSteps = "Etapa 8 de 10 - Gravando os Cidadãos no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertCidadaos(value,'sync','').then((value)async{
|
||||||
List list = value;
|
countProg = 0.8;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertCidadaos(value,'sync','',i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
await ApiDataSync().syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,AREA_ID,MICROAREA_ID,foraAreaInt).then((value)async{
|
||||||
}
|
|
||||||
await ApiDataSync().syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea).then((value)async{
|
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Domiciliares - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Domiciliares - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 9 de 10 - Gravando os Cadastros Domiciliares no Aplicativo");
|
setState(()=> messageSteps = "Etapa 9 de 10 - Gravando os Cadastros Domiciliares no Aplicativo");
|
||||||
}
|
await DbSqliteSync().insertCadastrosDomiciliares(value,'sync',0,0,'').then((value)async{
|
||||||
List list = value;
|
countProg = 0.9;
|
||||||
for(int i=0;list.length > i;i++){
|
|
||||||
await DbSqliteSync().insertCadastrosDomiciliares(value,'sync',0,0,'',i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
});
|
await ApiDataSync().syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,AREA_ID,MICROAREA_ID,foraAreaInt).then((value)async{
|
||||||
}
|
|
||||||
await ApiDataSync().syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea).then((value)async{
|
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Individuais - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Individuais - Por favor, tente novamente!");
|
||||||
}else{
|
}else{
|
||||||
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,'sync',0).then((value)async{
|
||||||
List list = value;
|
await DbSqliteSync().saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,AREA_ID,AREA_DESCRICAO,MICROAREA_ID,MICROAREA_DESCRICAO).then((value)async{
|
||||||
for(int i=0;list.length > i;i++){
|
countProg = 1;
|
||||||
await DbSqliteSync().insertCadastrosIndividuais(value,'sync',0,i).then((value)async{
|
|
||||||
int cont = list.length!=0?list.length:0;
|
|
||||||
countProg = i/cont;
|
|
||||||
setState(() {});
|
setState(() {});
|
||||||
|
Navigator.pushReplacement(context, MaterialPageRoute(builder: (context)=>HomeScreen(username: user)));
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
await DbSqliteSync().saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,area,microarea).then((value)async{
|
|
||||||
Navigator.pushNamed(context, '/home');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -222,6 +183,19 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@@ -232,7 +206,7 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
return Scaffold(
|
return Scaffold(
|
||||||
bottomSheet: Container(
|
bottomSheet: Container(
|
||||||
width: width,
|
width: width,
|
||||||
height: height*0.05,
|
height: 70,
|
||||||
color: ColorPalette.appBar,
|
color: ColorPalette.appBar,
|
||||||
child: finish
|
child: finish
|
||||||
?Row(
|
?Row(
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ class ApiDataImportSigtap{
|
|||||||
Future loadSIGTAP(urlAPI,mode,nameCityApi)async{
|
Future loadSIGTAP(urlAPI,mode,nameCityApi)async{
|
||||||
//http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/ADMIN/sigtap
|
//http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/ADMIN/sigtap
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/ADMIN/sigtap';
|
final url = '${urlAPI}${mode}/${nameCityApi}/ADMIN/sigtap';
|
||||||
|
print(url);
|
||||||
final response = await http.get(Uri.parse(url));
|
final response = await http.get(Uri.parse(url));
|
||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
// print(map);
|
// print(map);
|
||||||
|
|||||||
@@ -25,6 +25,16 @@ class ApiDataLoad{
|
|||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
Future loadEtniasIndigenas(urlAPI,mode,nameCityApi,user)async{
|
||||||
|
//https://app0.rkmsistemas.com.br/api/atb/homologacao/cabreuva/admin/load/unidades
|
||||||
|
// http://192.168.0.42:8061/api/atb/desenvolvimento/portoferreira/admin/load/etnias_indigenas
|
||||||
|
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/load/etnias_indigenas';
|
||||||
|
// print(url);
|
||||||
|
final response = await http.get(Uri.parse(url));
|
||||||
|
final map = json.decode(response.body);
|
||||||
|
// print(map);
|
||||||
|
return map;
|
||||||
|
}
|
||||||
Future loadUnidades(urlAPI,mode,nameCityApi,user)async{
|
Future loadUnidades(urlAPI,mode,nameCityApi,user)async{
|
||||||
//https://app0.rkmsistemas.com.br/api/atb/homologacao/cabreuva/admin/load/unidades
|
//https://app0.rkmsistemas.com.br/api/atb/homologacao/cabreuva/admin/load/unidades
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/load/unidades
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/load/unidades
|
||||||
@@ -100,6 +110,7 @@ class ApiDataLoad{
|
|||||||
Future loadEquipeComponentes(urlAPI,mode,nameCityApi,user)async{
|
Future loadEquipeComponentes(urlAPI,mode,nameCityApi,user)async{
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/load/equipeComponentes
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/load/equipeComponentes
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/load/equipeComponentes';
|
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/load/equipeComponentes';
|
||||||
|
// print(url);
|
||||||
final response = await http.get(Uri.parse(url));
|
final response = await http.get(Uri.parse(url));
|
||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
return map;
|
return map;
|
||||||
|
|||||||
@@ -9,13 +9,15 @@ class ApiDataPost{
|
|||||||
// print('sinc');
|
// print('sinc');
|
||||||
// print(map);
|
// print(map);
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/sincronizacao';
|
final url = '${urlAPI}${mode}/${nameCityApi}/sincronizacao';
|
||||||
|
print(url);
|
||||||
var response = await http.post(
|
var response = await http.post(
|
||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
body: jsonEncode(map),
|
body: jsonEncode(map),
|
||||||
);
|
);
|
||||||
|
|
||||||
print(response.body);
|
print(response.body);
|
||||||
print(response.statusCode);
|
|
||||||
if(response.statusCode == 200) {
|
if(response.body == '{"status":1}') {
|
||||||
await DBQuerys().updateCidadao();
|
await DBQuerys().updateCidadao();
|
||||||
await DBQuerys().updateCadastroIndividuais();
|
await DBQuerys().updateCadastroIndividuais();
|
||||||
await DBQuerys().updateCadastroDomiciliar();
|
await DBQuerys().updateCadastroDomiciliar();
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ class ApiDataSync{
|
|||||||
Future syncProfissionais(urlAPI,mode,nameCityApi,user,idUnidade)async{
|
Future syncProfissionais(urlAPI,mode,nameCityApi,user,idUnidade)async{
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/profissionais
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/profissionais
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/profissionais';
|
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/profissionais';
|
||||||
|
print(url);
|
||||||
final response = await http.get(Uri.parse(url));
|
final response = await http.get(Uri.parse(url));
|
||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
return map;
|
return map;
|
||||||
@@ -55,21 +56,25 @@ class ApiDataSync{
|
|||||||
}
|
}
|
||||||
Future syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{
|
Future syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cidadaos/1/1/true
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cidadaos/1/1/true
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cidadaos/$area/$microarea/$foraArea';
|
// http://192.168.0.42:8061/api/atb/desenvolvimento/portoferreira/admin/sync/47/cidadaos/1/1/true
|
||||||
|
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cidadaos/$area/$microarea/${foraArea==1?1:0}';
|
||||||
|
print(url);
|
||||||
final response = await http.get(Uri.parse(url));
|
final response = await http.get(Uri.parse(url));
|
||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
Future syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{
|
Future syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cadastrosDomiciliares/1/1/true
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cadastrosDomiciliares/1/1/true
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosDomiciliares/$area/$microarea/$foraArea';
|
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosDomiciliares/$area/$microarea/${foraArea==1?1:0}';
|
||||||
|
print(url);
|
||||||
final response = await http.get(Uri.parse(url));
|
final response = await http.get(Uri.parse(url));
|
||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
Future syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{
|
Future syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cadastrosIndividuais/1/1/true
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cadastrosIndividuais/1/1/true
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosIndividuais/$area/$microarea/$foraArea';
|
final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosIndividuais/$area/$microarea/${foraArea==1?1:0}';
|
||||||
|
print(url);
|
||||||
final response = await http.get(Uri.parse(url));
|
final response = await http.get(Uri.parse(url));
|
||||||
final map = json.decode(response.body);
|
final map = json.decode(response.body);
|
||||||
return map;
|
return map;
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
class UrlApiConst{
|
class UrlApiConst{
|
||||||
static const String ApiUrlOnline = 'https://saude.rkmsistemas.com.br/api/atb/';
|
static const String ApiUrlOnline = 'https://saude.rkmsistemas.com.br/api/atb/';
|
||||||
static const String ApiUrlHomologacao = 'https://app0.rkmsistemas.com.br/api/atb/';
|
static const String ApiUrlHomologacao = 'https://app0.rkmsistemas.com.br/api/atb/';
|
||||||
static const String ApiUrlDesenvolvimento = 'http://192.168.0.42:8010/api/atb/';
|
// static const String ApiUrlDesenvolvimento = 'http://192.168.0.42:8010/api/atb/';
|
||||||
|
static const String ApiUrlDesenvolvimento = 'http://192.168.0.42:8061/api/atb/';
|
||||||
static const String ModeDesenvolvimento = 'desenvolvimento';
|
static const String ModeDesenvolvimento = 'desenvolvimento';
|
||||||
static const String ModeHomologacao = 'homologacao';
|
static const String ModeHomologacao = 'homologacao';
|
||||||
static const String ModeOnline = 'online';
|
static const String ModeOnline = 'online';
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:flutter/cupertino.dart';
|
||||||
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';
|
||||||
|
|
||||||
@@ -24,56 +25,100 @@ class DBQuerys{
|
|||||||
var query = "SELECT * FROM CIAPS";
|
var query = "SELECT * FROM CIAPS";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list);
|
||||||
return list[0];
|
return list;
|
||||||
}
|
}
|
||||||
Future buscaCID()async{
|
Future buscaCID()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM CIDS";
|
var query = "SELECT * FROM CIDS";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list);
|
||||||
return list[0];
|
return list;
|
||||||
}
|
}
|
||||||
Future buscaAtendDomProc()async{
|
Future buscaAtendDomProc()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM ATENDS_DOM_SIGTAP";
|
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
return list;
|
||||||
return list[0];
|
|
||||||
}
|
}
|
||||||
buscaDadosProfissional(String idUnidade, String idUsuario)async{
|
buscaDadosProfissional(String idUnidade, int idUsuario)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $idUsuario";
|
var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $idUsuario";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
Future buscaProfissionalCadInd(String ID_PROFISSIONAL)async{
|
Future buscaProfissionalCadInd(int ID_PROFISSIONAL)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
// print('ID_PROFISSIONAL');
|
||||||
|
// print(ID_PROFISSIONAL);
|
||||||
var query = "SELECT * FROM PROFISSIONAIS WHERE ID_PROFISSIONAL = $ID_PROFISSIONAL";
|
var query = "SELECT * FROM PROFISSIONAIS WHERE ID_PROFISSIONAL = $ID_PROFISSIONAL";
|
||||||
|
// var query = "SELECT * FROM PROFISSIONAIS";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
// print(list);
|
// print(list);
|
||||||
return list[0];
|
return list[0];
|
||||||
}
|
}
|
||||||
buscaNomeUnidade(String ID_UNIDADE)async{
|
}
|
||||||
|
buscaNomeUnidade(int ID_UNIDADE)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM UNIDADES WHERE ID_UNIDADE = $ID_UNIDADE";
|
var query = "SELECT * FROM UNIDADES WHERE ID_UNIDADE = $ID_UNIDADE";
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
// print(list);
|
// print(list);
|
||||||
return list[0]['NOME_UNIDADE'];
|
return list[0]['NOME_UNIDADE'];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
cnesUnidade(int ID_UNIDADE)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM UNIDADES WHERE ID_UNIDADE = $ID_UNIDADE";
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
|
// print(list);
|
||||||
|
return list[0]['CNES_UNIDADE'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
buscarCodProced(String PROCEDIMENTO)async{
|
||||||
|
print('PROCEDIMENTO');
|
||||||
|
print(PROCEDIMENTO);
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP WHERE DESC_PROC_SIGTAP = '$PROCEDIMENTO'";
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
|
return list[0]['COD_PROC_SIGTAP'].toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
buscaBairro(nomeBairro)async{
|
buscaBairro(nomeBairro)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
List list = await db.rawQuery("SELECT * FROM BAIRROS WHERE NO_BAIRRO = '$nomeBairro'");
|
List list = await db.rawQuery("SELECT * FROM BAIRROS WHERE NO_BAIRRO = '$nomeBairro'");
|
||||||
// print(await db.rawQuery('SELECT NO_BAIRRO FROM BAIRROS'));
|
// print(await db.rawQuery('SELECT NO_BAIRRO FROM BAIRROS'));
|
||||||
// print(list[0]['ID_BAIRRO']);
|
// print(list[0]['ID_BAIRRO']);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
|
// print(list);
|
||||||
return list[0]['ID_BAIRRO'].toString();
|
return list[0]['ID_BAIRRO'].toString();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
buscaTipoLogradouro(tipo)async{
|
buscaTipoLogradouro(tipo)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
List list = await db.rawQuery("SELECT * FROM LOGRADOUROS_TIPOS WHERE NO_LOGR_TIPO = '$tipo'");
|
List list = await db.rawQuery("SELECT * FROM LOGRADOUROS_TIPOS WHERE NO_LOGR_TIPO = '$tipo'");
|
||||||
// print(list[0]['ID_LOGR_TIPO']);
|
// print(list[0]['ID_LOGR_TIPO']);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
|
// print(list);
|
||||||
return list[0]['ID_LOGR_TIPO'];
|
return list[0]['ID_LOGR_TIPO'];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
buscaprocedimento()async{
|
buscaprocedimento()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP";
|
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP";
|
||||||
@@ -81,6 +126,22 @@ class DBQuerys{
|
|||||||
// print(list);
|
// print(list);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
Future buscaPROCEDIMENTOS_SIGTAP_CBO(String CBO)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP_CBO WHERE CODIGO_CBO = $CBO";
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
Future buscaPROCEDIMENTOS_SIGTAP(String SIGTAP)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP WHERE COD_PROC_SIGTAP = '$SIGTAP'";
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
buscaCBOS()async{
|
buscaCBOS()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM CBOS ORDER BY DESCRICAO_CBO";
|
var query = "SELECT * FROM CBOS ORDER BY DESCRICAO_CBO";
|
||||||
@@ -122,12 +183,19 @@ class DBQuerys{
|
|||||||
// print(list);
|
// print(list);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
buscaEtniaIndigina(String COD_ETNIA)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = 'SELECT * FROM ETNIAS_INDIGENAS WHERE ID_ETNIA_INDIGENA = "$COD_ETNIA"';
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
buscaLoteamentoPorDesc(String DESC_LOGR_LOTEAMENTO)async{
|
buscaLoteamentoPorDesc(String DESC_LOGR_LOTEAMENTO)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = 'SELECT * FROM LOGRADOUROS_LOTEAMENTOS WHERE DESC_LOGR_LOTEAMENTO = "$DESC_LOGR_LOTEAMENTO"';
|
var query = 'SELECT * FROM LOGRADOUROS_LOTEAMENTOS WHERE DESC_LOGR_LOTEAMENTO = "$DESC_LOGR_LOTEAMENTO"';
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list);
|
||||||
int result = list[0]['ID_LOGR_LOTEAMENTO'];
|
int result = list.length==0?0:list[0]['ID_LOGR_LOTEAMENTO'];
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
buscaLoteamentoPorID(int ID_LOGR_LOTEAMENTO)async{
|
buscaLoteamentoPorID(int ID_LOGR_LOTEAMENTO)async{
|
||||||
@@ -135,7 +203,7 @@ class DBQuerys{
|
|||||||
var query = 'SELECT * FROM LOGRADOUROS_LOTEAMENTOS WHERE ID_LOGR_LOTEAMENTO = $ID_LOGR_LOTEAMENTO';
|
var query = 'SELECT * FROM LOGRADOUROS_LOTEAMENTOS WHERE ID_LOGR_LOTEAMENTO = $ID_LOGR_LOTEAMENTO';
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list);
|
||||||
String result = list[0]['DESC_LOGR_LOTEAMENTO'];
|
String result = list.length==0?'':list[0]['DESC_LOGR_LOTEAMENTO'];
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
buscaTodosMunicipios()async{
|
buscaTodosMunicipios()async{
|
||||||
@@ -164,12 +232,21 @@ class DBQuerys{
|
|||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = 'SELECT * FROM CIDADAOS WHERE NOME_CIDADAO = "$NOME_CIDADAO"';
|
var query = 'SELECT * FROM CIDADAOS WHERE NOME_CIDADAO = "$NOME_CIDADAO"';
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list[0]['ID_USUARIO_CADASTRO']);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
Future buscaCBOProfissional(ID_PROFISSIONAL)async{
|
Future buscaCBOProfissional(ID_PROFISSIONAL)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = 'SELECT * FROM PROFISSIONAIS_CBOS WHERE CODIGO_CBO = "$ID_PROFISSIONAL"';
|
var query = 'SELECT * FROM PROFISSIONAIS_CBOS WHERE ID_PROFISSIONAL = $ID_PROFISSIONAL';
|
||||||
|
// var query = 'SELECT * FROM PROFISSIONAIS_CBOS';
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
Future buscaCBOSProfissional(CBOS)async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM CBOS WHERE CODIGO_CBO = $CBOS";
|
||||||
|
// var query = 'SELECT * FROM CBOS';
|
||||||
List list = await db.rawQuery(query);
|
List list = await db.rawQuery(query);
|
||||||
// print(list);
|
// print(list);
|
||||||
return list;
|
return list;
|
||||||
@@ -186,7 +263,6 @@ class DBQuerys{
|
|||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM CIDADAOS WHERE ORIGEM = 'A' AND SINCRONIZADO = 'N'";
|
var query = "SELECT * FROM CIDADAOS WHERE ORIGEM = 'A' AND SINCRONIZADO = 'N'";
|
||||||
List<Map<String, dynamic>> maps = await db.rawQuery(query);
|
List<Map<String, dynamic>> maps = await db.rawQuery(query);
|
||||||
// print(list);
|
|
||||||
return List.generate(maps.length, (i) {
|
return List.generate(maps.length, (i) {
|
||||||
return maps[i];
|
return maps[i];
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -16,101 +16,76 @@ class DbSqliteSigtap{
|
|||||||
db.execute(querys[i]);
|
db.execute(querys[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Future saveProceduresSigtapDB(var value)async{
|
Future saveProceduresSigtapDB(var rows)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
Batch batch = db.batch();
|
||||||
// {"codProcedimento":"0701020580","nome":"MANUTEN\u00c7\u00c3O DE OPM ORTOP\u00c9DICA","codGrupo":"07","qtdeMax":2,"idadeMin":833,"idadeMax":833,"sexo":"N"}
|
rows.forEach((row) {
|
||||||
for(int i=0;value.length > i;i++){
|
batch.insert('PROCEDIMENTOS_SIGTAP', row);
|
||||||
Map<String, dynamic> row = {
|
});
|
||||||
'COD_PROC_SIGTAP' : value[i]['codProcedimento'],
|
List<Object?> result = await batch.commit();
|
||||||
'DESC_PROC_SIGTAP' : value[i]['nome'],
|
print('Linhas inseridas: ${result.length}');
|
||||||
'GRUPO_PROC_SIGTAP' : value[i]['codGrupo'],
|
List<Map<String, dynamic>> PROCEDIMENTOS_SIGTAP = await db.query('PROCEDIMENTOS_SIGTAP');
|
||||||
'QTDE_MAXIMA' : value[i]['qtdeMax'],
|
print('Total de PROCEDIMENTOS_SIGTAP : ${PROCEDIMENTOS_SIGTAP.length}');
|
||||||
'IDADE_MIN' : value[i]['idadeMin'],
|
|
||||||
'IDADE_MAX' : value[i]['idadeMax'],
|
|
||||||
'SEXO' : value[i]['sexo'],
|
|
||||||
};
|
|
||||||
int id = await db.insert('PROCEDIMENTOS_SIGTAP', row);
|
|
||||||
}
|
|
||||||
// print('id increment $id');
|
|
||||||
// print(await db.query('PROCEDIMENTOS_SIGTAP'));
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveProceduresRegisterSigtapDB(var value)async{
|
Future saveProceduresRegisterSigtapDB(var rows)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
Batch batch = db.batch();
|
||||||
// {"codProcedimento":"0701020580","nome":"MANUTEN\u00c7\u00c3O DE OPM ORTOP\u00c9DICA","codGrupo":"07","qtdeMax":2,"idadeMin":833,"idadeMax":833,"sexo":"N"}
|
rows.forEach((row) {
|
||||||
for(int i=0;value.length > i;i++){
|
batch.insert('PROCEDIMENTOS_SIGTAP_REGISTRO', row);
|
||||||
Map<String, dynamic> row = {
|
});
|
||||||
'COD_PROC_SIGTAP' : value[i]['codProcedimento'],
|
List<Object?> result = await batch.commit();
|
||||||
'CODIGO_REGISTRO' : value[i]['codRegistro'],
|
print('Linhas inseridas: ${result.length}');
|
||||||
};
|
List<Map<String, dynamic>> PROCEDIMENTOS_SIGTAP_REGISTRO = await db.query('PROCEDIMENTOS_SIGTAP_REGISTRO');
|
||||||
int id = await db.insert('PROCEDIMENTOS_SIGTAP_REGISTRO', row);
|
print('Total de PROCEDIMENTOS_SIGTAP_REGISTRO : ${PROCEDIMENTOS_SIGTAP_REGISTRO.length}');
|
||||||
// print('id increment $id');
|
|
||||||
}
|
|
||||||
|
|
||||||
// print(await db.query('PROCEDIMENTOS_SIGTAP_REGISTRO'));
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveSigtapCID(var value)async{
|
Future saveSigtapCID(var rows)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// "INSERT OR REPLACE INTO CIDS (CODIGO_CID, DESCRICAO_CID, RESTRICAO_SEXO) VALUES (?,?,?)"
|
Batch batch = db.batch();
|
||||||
// {"codCID":"A000","descCID":"A00.0 Colera dev Vibrio cholerae 01 biot cholerae","restSexo":"5"},
|
rows.forEach((row) {
|
||||||
for(int i=0;value.length > i;i++){
|
batch.insert('CIDS', row);
|
||||||
Map<String, dynamic> row = {
|
});
|
||||||
'CODIGO_CID' : value[i]['codCID'],
|
List<Object?> result = await batch.commit();
|
||||||
'DESCRICAO_CID' : value[i]['descCID'],
|
print('Linhas inseridas: ${result.length}');
|
||||||
'RESTRICAO_SEXO' : value[i]['restSexo'],
|
List<Map<String, dynamic>> CIDS = await db.query('CIDS');
|
||||||
};
|
print('Total de CIDS : ${CIDS.length}');
|
||||||
int id = await db.insert('CIDS', row);
|
|
||||||
// print('id increment $id CIDS');
|
|
||||||
}
|
|
||||||
// print(await db.query('CIDS'));
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveProceduresSigtapCID(var value)async{
|
Future saveProceduresSigtapCID(var rows)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// "INSERT OR REPLACE INTO PROCEDIMENTOS_SIGTAP_CID (COD_PROC_SIGTAP, CODIGO_CID) VALUES (?,?)"
|
Batch batch = db.batch();
|
||||||
// {"codProcedimento":"0201010046","codCID":"C211"}
|
rows.forEach((row) {
|
||||||
for(int i=0;value.length > i;i++){
|
batch.insert('PROCEDIMENTOS_SIGTAP_CID', row);
|
||||||
Map<String, dynamic> row = {
|
});
|
||||||
'COD_PROC_SIGTAP' : value[i]['codProcedimento'],
|
List<Object?> result = await batch.commit();
|
||||||
'CODIGO_CID' : value[i]['codCID'],
|
print('Linhas inseridas: ${result.length}');
|
||||||
};
|
List<Map<String, dynamic>> PROCEDIMENTOS_SIGTAP_CID = await db.query('PROCEDIMENTOS_SIGTAP_CID');
|
||||||
int id = await db.insert('PROCEDIMENTOS_SIGTAP_CID', row);
|
print('Total de PROCEDIMENTOS_SIGTAP_CID : ${PROCEDIMENTOS_SIGTAP_CID.length}');
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_CID');
|
|
||||||
}
|
|
||||||
// print(await db.query('PROCEDIMENTOS_SIGTAP_CID'));
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveCBOSigtap(var value)async{
|
Future saveCBOSigtap(var rows)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// "INSERT OR REPLACE INTO CBOS (CODIGO_CBO, DESCRICAO_CBO) VALUES (?,?)"
|
Batch batch = db.batch();
|
||||||
// "codCBO":"223208","descCBO":"Cirurgi\u00e3o dentista - cl\u00ednico geral"
|
rows.forEach((row) {
|
||||||
for(int i=0;value.length > i;i++){
|
batch.insert('CBOS', row);
|
||||||
Map<String, dynamic> row = {
|
});
|
||||||
'CODIGO_CBO' : value[i]['codCBO'],
|
List<Object?> result = await batch.commit();
|
||||||
'DESCRICAO_CBO' : value[i]['descCBO'],
|
print('Linhas inseridas: ${result.length}');
|
||||||
};
|
List<Map<String, dynamic>> CBOS = await db.query('CBOS');
|
||||||
int id = await db.insert('CBOS', row);
|
print('Total de CBOS : ${CBOS.length}');
|
||||||
// print('id increment $id CBOS');
|
|
||||||
}
|
|
||||||
// print(await db.query('CBOS'));
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveProceduresCBOSigtap(var value)async{
|
Future saveProceduresCBOSigtap(var rows)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// "INSERT OR REPLACE INTO PROCEDIMENTOS_SIGTAP_CBO (COD_PROC_SIGTAP, CODIGO_CBO) VALUES (?,?)";
|
Batch batch = db.batch();
|
||||||
// "codProcedimento":"0101010010","codCBO":"223208"
|
rows.forEach((row) {
|
||||||
for(int i=0;value.length > i;i++){
|
batch.insert('PROCEDIMENTOS_SIGTAP_CBO', row);
|
||||||
Map<String, dynamic> row = {
|
});
|
||||||
'COD_PROC_SIGTAP' : value[i]['codProcedimento'],
|
List<Object?> result = await batch.commit();
|
||||||
'CODIGO_CBO' : value[i]['codCBO'],
|
print('Linhas inseridas: ${result.length}');
|
||||||
};
|
List<Map<String, dynamic>> PROCEDIMENTOS_SIGTAP_CBO = await db.query('PROCEDIMENTOS_SIGTAP_CBO');
|
||||||
int id = await db.insert('PROCEDIMENTOS_SIGTAP_CBO', row);
|
print('Total de PROCEDIMENTOS_SIGTAP_CBO : ${PROCEDIMENTOS_SIGTAP_CBO.length}');
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_CBO');
|
|
||||||
}
|
|
||||||
// print(await db.query('PROCEDIMENTOS_SIGTAP_CBO'));
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveSyncSigtap(competencia)async{
|
Future saveSyncSigtap(competencia)async{
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
import 'package:rkm/config/const_variable.dart';
|
|
||||||
import 'package:rkm/controllers/main_controllers.dart';
|
|
||||||
import 'package:sqflite/sqflite.dart';
|
import 'package:sqflite/sqflite.dart';
|
||||||
import 'package:path/path.dart';
|
import 'package:path/path.dart';
|
||||||
|
|
||||||
@@ -30,13 +28,13 @@ class DbSqliteLoad{
|
|||||||
db.execute('CREATE TABLE IF NOT EXISTS AVAL_ELEG_CONCL_INE (ID_AVALIACAO_ELEGIBILIDADE INTEGER, AVALIACAO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS AVAL_ELEG_CONCL_INE (ID_AVALIACAO_ELEGIBILIDADE INTEGER, AVALIACAO INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS AVAL_ELEG_COND_AVAL (ID_AVALIACAO_ELEGIBILIDADE INTEGER, AVALIACAO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS AVAL_ELEG_COND_AVAL (ID_AVALIACAO_ELEGIBILIDADE INTEGER, AVALIACAO INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS BAIRROS (ID_BAIRRO INTEGER PRIMARY KEY AUTOINCREMENT, NO_BAIRRO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS BAIRROS (ID_BAIRRO INTEGER PRIMARY KEY AUTOINCREMENT, NO_BAIRRO TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS CADASTROS_INDIVIDUAIS (ID_CAD_INDIVIDUAL INTEGER PRIMARY KEY AUTOINCREMENT, STATUS_CADASTRO INTEGER, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, ID_AREA_CIDADAO INTEGER, ID_MICROAREA_CIDADAO INTEGER, FORA_AREA INTEGER, RESPONSAVEL_FAMILIAR INTEGER, ID_RESPONSAVEL_FAMILIAR TEXT, NOME_RESPONSAVEL_FAMILIAR TEXT, PARENTESCO INTEGER, ESCOLARIDADE INTEGER, FREQ_ESCOLA_CRECHE INTEGER, SITUACAO_MERCADO INTEGER, CUIDADOR_TRADICIONAL INTEGER, GRUPO_COMUNITARIO INTEGER, PLANO_PRIVADO INTEGER, COMUNIDADE_TRADICIONAL INTEGER, COM_TRADI_QUAL TEXT, ORIENT_SEXUAL INTEGER, TEM_DEFICIENCIA INTEGER, DEF_AUDITIVA INTEGER, DEF_INTELECTUAL INTEGER, DEF_VISUAL INTEGER, DEF_FISICA INTEGER, DEF_OUTRAS INTEGER, SAIDA_CADASTRO INTEGER, DATA_SAIDA_CADASTRO TEXT, CADASTRO_RECUSADO INTEGER, GESTANTE INTEGER, MATERNIDADE_REFERENCIA TEXT, PESO INTEGER, FUMANTE INTEGER, USA_ALCOOL INTEGER, USA_DROGAS INTEGER, HIPERTENSAO INTEGER, DIABETES INTEGER, AVC_DERRAME INTEGER, INFARTO INTEGER, HANSENIASE INTEGER, TUBERCULOSE INTEGER, CANCER INTEGER, INTERNACAO INTEGER, MOTIVO TEXT, DOENCA_CARDIACA INTEGER, PROBLEMA_RINS INTEGER, DOENCA_PULMAO INTEGER, SAUDE_MENTAL INTEGER, ACAMADO INTEGER, DOMICILIADO INTEGER, PLANTAS_MED INTEGER, PLANTAS_MED_QUAIS TEXT, PIC INTEGER, OUTRAS_CONDICOES TEXT, TEMPO_SITUACAO_RUA INTEGER, ACOMP_INTITUICAO INTEGER, ACOMP_INTITUICAO_QUAL TEXT, BENEFICIO INTEGER, REF_FAMILIAR INTEGER, VISITA_FAMILIAR INTEGER, PARENTESCO_VISITA TEXT, ALIMENTACAO_DIARIA INTEGER, REST_POPULAR INTEGER, DOACAO_REST INTEGER, DOACAO_RELIGIOSO INTEGER, DOACAO_POPULAR INTEGER, OUTROS_ALIM INTEGER, ACESSO_HIGIENE INTEGER, BANHO INTEGER, SANITARIO INTEGER, HIGIENE_BUCAL INTEGER, OUTROS_HIGIENE INTEGER, FICHA_ALTERACAO INTEGER, ID_RESP_CADASTRO INTEGER, CNES_RESP_CADASTRO TEXT, CBO_RESP_CADASTRO TEXT, INE_RESP_CADASTRO TEXT, DT_CADASTRO TEXT, ID_EQUIPE INTEGER, ORIGEM TEXT, SINCRONIZADO TEXT, DT_ENTRADA_BRASIL TEXT, DT_NATURALIZACAO TEXT, PORTARIA_NATURALIZACAO TEXT, CRIANCAS_ADULTO INTEGER, CRIANCAS_OUTRAS_CRIANCAS INTEGER, CRIANCAS_ADOLESCENTE INTEGER, CRIANCAS_SOZINHA INTEGER, CRIANCAS_CRECHE INTEGER, CRIANCAS_OUTRO INTEGER, IDENTIDADE_GENERO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS CADASTROS_INDIVIDUAIS (ID_CAD_INDIVIDUAL INTEGER PRIMARY KEY AUTOINCREMENT, STATUS_CADASTRO INTEGER, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, ID_AREA_CIDADAO INTEGER, ID_MICROAREA_CIDADAO INTEGER, FORA_AREA INTEGER, RESPONSAVEL_FAMILIAR INTEGER, ID_RESPONSAVEL_FAMILIAR TEXT, NOME_RESPONSAVEL_FAMILIAR TEXT, PARENTESCO INTEGER, ESCOLARIDADE INTEGER, FREQ_ESCOLA_CRECHE INTEGER, SITUACAO_MERCADO INTEGER, CUIDADOR_TRADICIONAL INTEGER, GRUPO_COMUNITARIO INTEGER, PLANO_PRIVADO INTEGER, COMUNIDADE_TRADICIONAL INTEGER, COM_TRADI_QUAL TEXT, ORIENT_SEXUAL INTEGER, TEM_DEFICIENCIA INTEGER, DEF_AUDITIVA INTEGER, DEF_INTELECTUAL INTEGER, DEF_VISUAL INTEGER, DEF_FISICA INTEGER, DEF_OUTRAS INTEGER, SAIDA_CADASTRO INTEGER, DATA_SAIDA_CADASTRO TEXT, CADASTRO_RECUSADO INTEGER, GESTANTE INTEGER, MATERNIDADE_REFERENCIA TEXT, PESO INTEGER, FUMANTE INTEGER, USA_ALCOOL INTEGER, USA_DROGAS INTEGER, HIPERTENSAO INTEGER, DIABETES INTEGER, AVC_DERRAME INTEGER, INFARTO INTEGER, HANSENIASE INTEGER, TUBERCULOSE INTEGER, CANCER INTEGER, INTERNACAO INTEGER, MOTIVO TEXT, DOENCA_CARDIACA INTEGER, PROBLEMA_RINS INTEGER, DOENCA_PULMAO INTEGER, SAUDE_MENTAL INTEGER, ACAMADO INTEGER, DOMICILIADO INTEGER, PLANTAS_MED INTEGER, PLANTAS_MED_QUAIS TEXT, PIC INTEGER, OUTRAS_CONDICOES TEXT, TEMPO_SITUACAO_RUA INTEGER, ACOMP_INTITUICAO INTEGER, ACOMP_INTITUICAO_QUAL TEXT, BENEFICIO INTEGER, REF_FAMILIAR INTEGER, VISITA_FAMILIAR INTEGER, PARENTESCO_VISITA TEXT, ALIMENTACAO_DIARIA INTEGER, REST_POPULAR INTEGER, DOACAO_REST INTEGER, DOACAO_RELIGIOSO INTEGER, DOACAO_POPULAR INTEGER, OUTROS_ALIM INTEGER, ACESSO_HIGIENE INTEGER, BANHO INTEGER, SANITARIO INTEGER, HIGIENE_BUCAL INTEGER, OUTROS_HIGIENE INTEGER, FICHA_ALTERACAO INTEGER, ID_RESP_CADASTRO INTEGER, CNES_RESP_CADASTRO TEXT, CBO_RESP_CADASTRO TEXT, INE_RESP_CADASTRO TEXT, DT_CADASTRO TEXT, ID_EQUIPE INTEGER, ORIGEM TEXT, SINCRONIZADO TEXT, DT_ENTRADA_BRASIL TEXT, DT_NATURALIZACAO TEXT, PORTARIA_NATURALIZACAO TEXT, CRIANCAS_ADULTO INTEGER, CRIANCAS_OUTRAS_CRIANCAS INTEGER, CRIANCAS_ADOLESCENTE INTEGER, CRIANCAS_SOZINHA INTEGER, CRIANCAS_CRECHE INTEGER, CRIANCAS_OUTRO INTEGER, IDENTIDADE_GENERO INTEGER, FIBROMIALGIA INTEGER, TRANSTORNO_ESPECTRO_AUTISTA INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS CBOS (CODIGO_CBO TEXT, DESCRICAO_CBO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS CBOS (CODIGO_CBO TEXT, DESCRICAO_CBO TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS CIAPS (CODIGO_CIAP TEXT, DESC_CIAP TEXT, TIPO_CIAP TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS CIAPS (CODIGO_CIAP TEXT, DESC_CIAP TEXT, TIPO_CIAP TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS CIDADAOS (ID_CIDADAO INTEGER PRIMARY KEY AUTOINCREMENT, CD_USUARIO_SUS TEXT, NOME_CIDADAO TEXT, NOME_SOCIAL TEXT, SEXO TEXT, DT_NASCIMENTO TEXT, ID_ESTADO_CIVIL INTEGER, NOME_CONJUGE TEXT, NACIONALIDADE INTEGER, ID_MUNICIPIO_NASC INTEGER, NO_MUNICIPIO_NASC TEXT, ESTADO_UF_NASC TEXT, ID_ETNIA INTEGER, ID_ESCOLARIDADE INTEGER, ID_DEFICIENCIA INTEGER, NOME_MAE TEXT, DESCONHECE_MAE INTEGER, NOME_PAI TEXT, DESCONHECE_PAI INTEGER, ID_UNIDADE INTEGER, NUM_PRONTUARIO TEXT, NUM_PRONTUARIO_PROV TEXT, CLASSIFICACAO INTEGER, CLASSIFICACAO_SUB INTEGER, NUM_FAMILIA INTEGER, ID_PAIS_RESID INTEGER, ID_MUNICIPIO_RESID INTEGER, NO_MUNICIPIO_RESID TEXT, ESTADO_UF_RESID TEXT, CODIGO_IBGE_RESID INTEGER, NO_BAIRRO_LOGR TEXT, ID_LOGR_TIPO INTEGER, NOME_LOGR TEXT, CEP_LOGR INTEGER, NUMERO_LOGR INTEGER, LOTEAMENTO_LOGR INTEGER, COMPL_LOGR TEXT, PONTO_REFERENCIA TEXT, ZONA_LOGR INTEGER, DDD_TELEFONE INTEGER, NUM_TELEFONE INTEGER, DDD_CELULAR INTEGER, NUM_CELULAR INTEGER, DDD_RECADO INTEGER, NUM_RECADO INTEGER, EMAIL TEXT, OBSERVACOES TEXT, CPF INTEGER, CNS TEXT, TITULO_ELEITOR INTEGER, RG_NUMERO INTEGER, RG_COMPLEMENTO TEXT, RG_UF TEXT, RG_ORGAO TEXT, RG_DATA_EMISSAO TEXT, TIPO_CERTIDAO INTEGER, NUM_CERTIDAO TEXT, CARTORIO_CERTIDAO TEXT, LIVRO_CERTIDAO TEXT, FOLHA_CERTIDAO TEXT, TERMO_CERTIDAO TEXT, DT_EMISSAO_CERTIDAO TEXT, NUM_CTPS TEXT, NUM_SERIE_CTPS TEXT, ESTADO_UF_CTPS TEXT, NUM_PIS_PASEP TEXT, FL_RETIROU_CARTAO INTEGER, NUM_NIS TEXT, NUM_PROT_CROSS TEXT, RENDA_MENSAL REAL, PROFISSAO TEXT, DT_OBITO TEXT, DECLARACAO_OBITO TEXT, BLOQUEIO INTEGER, ORIGEM INTEGER, DT_HORA_CADASTRO TEXT, ID_USUARIO_CADASTRO INTEGER, ID_DOMICILIO INTEGER, ATENDIMENTOS INTEGER, SINCRONIZADO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS CIDADAOS (ID_CIDADAO INTEGER PRIMARY KEY AUTOINCREMENT, CD_USUARIO_SUS TEXT, NOME_CIDADAO TEXT, NOME_SOCIAL TEXT, SEXO TEXT, DT_NASCIMENTO TEXT, ID_ESTADO_CIVIL INTEGER, NOME_CONJUGE TEXT, NACIONALIDADE INTEGER, ID_MUNICIPIO_NASC INTEGER, NO_MUNICIPIO_NASC TEXT, ESTADO_UF_NASC TEXT, ID_ETNIA INTEGER, ID_ETNIA_INDIGENA TEXT, ID_ESCOLARIDADE INTEGER, ID_DEFICIENCIA INTEGER, NOME_MAE TEXT, DESCONHECE_MAE INTEGER, NOME_PAI TEXT, DESCONHECE_PAI INTEGER, ID_UNIDADE INTEGER, NUM_PRONTUARIO TEXT, NUM_PRONTUARIO_PROV TEXT, CLASSIFICACAO INTEGER, CLASSIFICACAO_SUB INTEGER, NUM_FAMILIA INTEGER, ID_PAIS_RESID INTEGER, ID_MUNICIPIO_RESID INTEGER, NO_MUNICIPIO_RESID TEXT, ESTADO_UF_RESID TEXT, CODIGO_IBGE_RESID INTEGER, NO_BAIRRO_LOGR TEXT, ID_LOGR_TIPO INTEGER, NOME_LOGR TEXT, CEP_LOGR INTEGER, NUMERO_LOGR INTEGER, LOTEAMENTO_LOGR INTEGER, COMPL_LOGR TEXT, PONTO_REFERENCIA TEXT, ZONA_LOGR INTEGER, DDD_TELEFONE INTEGER, NUM_TELEFONE INTEGER, DDD_CELULAR INTEGER, NUM_CELULAR INTEGER, DDD_RECADO INTEGER, NUM_RECADO INTEGER, EMAIL TEXT, OBSERVACOES TEXT, CPF INTEGER, CNS TEXT, TITULO_ELEITOR INTEGER, RG_NUMERO INTEGER, RG_COMPLEMENTO TEXT, RG_UF TEXT, RG_ORGAO TEXT, RG_DATA_EMISSAO TEXT, TIPO_CERTIDAO INTEGER, NUM_CERTIDAO TEXT, CARTORIO_CERTIDAO TEXT, LIVRO_CERTIDAO TEXT, FOLHA_CERTIDAO TEXT, TERMO_CERTIDAO TEXT, DT_EMISSAO_CERTIDAO TEXT, NUM_CTPS TEXT, NUM_SERIE_CTPS TEXT, ESTADO_UF_CTPS TEXT, NUM_PIS_PASEP TEXT, FL_RETIROU_CARTAO INTEGER, NUM_NIS TEXT, NUM_PROT_CROSS TEXT, RENDA_MENSAL REAL, PROFISSAO TEXT, DT_OBITO TEXT, DECLARACAO_OBITO TEXT, BLOQUEIO INTEGER, ORIGEM INTEGER, DT_HORA_CADASTRO TEXT, ID_USUARIO_CADASTRO INTEGER, ID_DOMICILIO INTEGER, ATENDIMENTOS INTEGER, SINCRONIZADO TEXT, RENDA_TOTAL_FAMILIAR REAL , POSSUI_VEICULO TEXT , MODELO_VEICULO TEXT , ANO_VEICULO INTEGER , POSSUI_FINANCIAMENTO TEXT , VALOR_PARCELA_FINANCIAMENTO REAL , POSSUI_EMPRESTIMO TEXT , VALOR_PARCELA_EMPRESTIMO REAL);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS CIDADAO_DOMICILIO (ID_DOMICILIO INTEGER PRIMARY KEY AUTOINCREMENT, TIPO_IMOVEL INTEGER, ID_AREA_DOMICILIO INTEGER, ID_MICROAREA_DOMICILIO INTEGER, FORA_AREA INTEGER, SITUACAO_MORADIA INTEGER, TIPO_LOCALIDADE INTEGER, TIPO_DOMICILIO INTEGER, NUM_MORADORES INTEGER, NUM_COMODOS INTEGER, SITUACAO_RURAL INTEGER, TIPO_ACESSO INTEGER, MAT_PREDOMINANTE INTEGER, DISPONIBILIDADE_ENERGIA INTEGER, TIPO_ABASTECIMENTO INTEGER, TRATAMENTO_AGUA INTEGER, DESTINO_LIXO INTEGER, ESCOAMENTO INTEGER, FL_ANIMAIS INTEGER, ANIMAIS_GATO INTEGER, ANIMAIS_CACHORRO INTEGER, ANIMAIS_PASSARO INTEGER, ANIMAIS_OUTROS INTEGER, QTDE_ANIMAIS INTEGER, CBO_RESP_CADASTRO TEXT, ID_RESP_CADASTRO INTEGER, CNES_RESP_CADASTRO TEXT, INE_RESP_CADASTRO TEXT, DT_CADASTRO TEXT, ID_EQUIPE INTEGER, ORIGEM TEXT, SINCRONIZADO TEXT, NOME_INSTITUICAO_PERMANENCIA TEXT, PROFISSIONAIS_VINCULADOS_INST INTEGER, RESPONSAVEL_TECNICO_INST TEXT, CNS_RESP_TECNICO_INST TEXT, CARGO_RESP_TECNICO_INST TEXT, TEL_RESP_TECNICO_INST TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS CIDADAO_DOMICILIO (ID_DOMICILIO INTEGER PRIMARY KEY AUTOINCREMENT, TIPO_IMOVEL INTEGER, ID_AREA_DOMICILIO INTEGER, ID_MICROAREA_DOMICILIO INTEGER, FORA_AREA INTEGER, SITUACAO_MORADIA INTEGER, TIPO_LOCALIDADE INTEGER, TIPO_DOMICILIO INTEGER, NUM_MORADORES INTEGER, NUM_COMODOS INTEGER, SITUACAO_RURAL INTEGER, TIPO_ACESSO INTEGER, MAT_PREDOMINANTE INTEGER, DISPONIBILIDADE_ENERGIA INTEGER, TIPO_ABASTECIMENTO INTEGER, TRATAMENTO_AGUA INTEGER, DESTINO_LIXO INTEGER, ESCOAMENTO INTEGER, FL_ANIMAIS INTEGER, ANIMAIS_GATO INTEGER, ANIMAIS_CACHORRO INTEGER, ANIMAIS_PASSARO INTEGER, ANIMAIS_OUTROS INTEGER, QTDE_ANIMAIS INTEGER, CBO_RESP_CADASTRO TEXT, ID_RESP_CADASTRO INTEGER, CNES_RESP_CADASTRO TEXT, INE_RESP_CADASTRO TEXT, DT_CADASTRO TEXT, ID_EQUIPE INTEGER, ORIGEM TEXT, SINCRONIZADO TEXT, NOME_INSTITUICAO_PERMANENCIA TEXT, PROFISSIONAIS_VINCULADOS_INST INTEGER, RESPONSAVEL_TECNICO_INST TEXT, CNS_RESP_TECNICO_INST TEXT, CARGO_RESP_TECNICO_INST TEXT, TEL_RESP_TECNICO_INST TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS CIDS (CODIGO_CID TEXT, DESCRICAO_CID TEXT, RESTRICAO_SEXO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS CIDS (CODIGO_CID TEXT, DESCRICAO_CID TEXT, RESTRICAO_SEXO INTEGER);');
|
||||||
db.execute( 'CREATE TABLE IF NOT EXISTS CONTROLE_INTERNO (CARGA_INICIAL INTEGER, SYNC_UNIDADE INTEGER, CIDADE_LOAD TEXT, NOME_CIDADE TEXT, ID_MUNICIPIO INTEGER, UF_ESTADO TEXT, UNIDADE_SYNC TEXT, CODIGO_IBGE INTEGER, NOME_UNIDADE TEXT, AMBIENTE TEXT, ULTIMA_SINCRONIZACAO TEXT, COMPETENCIA TEXT, AREA INTEGER, MICROAREA INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS CONTROLE_INTERNO (CARGA_INICIAL INTEGER, SYNC_UNIDADE INTEGER, CIDADE_LOAD TEXT, NOME_CIDADE TEXT, ID_MUNICIPIO INTEGER, UF_ESTADO TEXT, UNIDADE_SYNC TEXT, CODIGO_IBGE INTEGER, NOME_UNIDADE TEXT, AMBIENTE TEXT, ULTIMA_SINCRONIZACAO TEXT, COMPETENCIA TEXT, AREA_ID INTEGER, AREA_DESCRICAO INTEGER, MICROAREA_ID INTEGER, MICROAREA_DESCRICAO INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS DOMICILIOS_CIDADAOS (ID_DOMICILIO INTEGER, CD_USUARIO_SUS TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS DOMICILIOS_CIDADAOS (ID_DOMICILIO INTEGER, CD_USUARIO_SUS TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS EQUIPES (ID_EQUIPE INTEGER PRIMARY KEY AUTOINCREMENT, ID_UNIDADE INTEGER, INE TEXT, ID_ATB_AREA INTEGER, AREA INTEGER, ID_ATB_MICROAREA INTEGER, MICROAREA INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS EQUIPES (ID_EQUIPE INTEGER PRIMARY KEY AUTOINCREMENT, ID_UNIDADE INTEGER, INE TEXT, ID_ATB_AREA INTEGER, AREA INTEGER, ID_ATB_MICROAREA INTEGER, MICROAREA INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS FICHAS_COMPLEMENTARES (ID_FICHA_COMPLEMENTAR INTEGER PRIMARY KEY AUTOINCREMENT, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, ID_PROFISSIONAL INTEGER, CBO_PROFISSIONAL TEXT, INE_PROFISSIONAL TEXT, CNES_UNIDADE TEXT, ID_UNIDADE INTEGER, ID_EQUIPE INTEGER, DATA_ATENDIMENTO TEXT, TURNO INTEGER, DATA_OLHINHO TEXT, RESULTADO_OLHINHO INTEGER, DATA_FUNDO_OLHO TEXT, RESULTADO_FUNDO_OLHO INTEGER, DATA_ORELHINHA TEXT, RESULTADO_ORELHINHA INTEGER, DATA_TRANSFONTANELA TEXT, RESULTADO_TRANSFONTANELA INTEGER, DATA_TOMOGRAFIA TEXT, RESULTADO_TOMOGRAFIA INTEGER, DATA_RESSONANCIA TEXT, RESULTADO_RESSONANCIA INTEGER, SINCRONIZADO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS FICHAS_COMPLEMENTARES (ID_FICHA_COMPLEMENTAR INTEGER PRIMARY KEY AUTOINCREMENT, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, ID_PROFISSIONAL INTEGER, CBO_PROFISSIONAL TEXT, INE_PROFISSIONAL TEXT, CNES_UNIDADE TEXT, ID_UNIDADE INTEGER, ID_EQUIPE INTEGER, DATA_ATENDIMENTO TEXT, TURNO INTEGER, DATA_OLHINHO TEXT, RESULTADO_OLHINHO INTEGER, DATA_FUNDO_OLHO TEXT, RESULTADO_FUNDO_OLHO INTEGER, DATA_ORELHINHA TEXT, RESULTADO_ORELHINHA INTEGER, DATA_TRANSFONTANELA TEXT, RESULTADO_TRANSFONTANELA INTEGER, DATA_TOMOGRAFIA TEXT, RESULTADO_TOMOGRAFIA INTEGER, DATA_RESSONANCIA TEXT, RESULTADO_RESSONANCIA INTEGER, SINCRONIZADO TEXT);');
|
||||||
@@ -55,9 +53,10 @@ class DbSqliteLoad{
|
|||||||
db.execute('CREATE TABLE IF NOT EXISTS PROCEDIMENTOS_SIGTAP_CBO (COD_PROC_SIGTAP TEXT, CODIGO_CBO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS PROCEDIMENTOS_SIGTAP_CBO (COD_PROC_SIGTAP TEXT, CODIGO_CBO TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS PROCEDIMENTOS_SIGTAP_CID (COD_PROC_SIGTAP TEXT, CODIGO_CID TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS PROCEDIMENTOS_SIGTAP_CID (COD_PROC_SIGTAP TEXT, CODIGO_CID TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS PROCEDIMENTOS_SIGTAP_REGISTRO (COD_PROC_SIGTAP TEXT, CODIGO_REGISTRO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS PROCEDIMENTOS_SIGTAP_REGISTRO (COD_PROC_SIGTAP TEXT, CODIGO_REGISTRO INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS PROFISSIONAIS (ID_PROFISSIONAL INTEGER PRIMARY KEY AUTOINCREMENT, NOME_PROFISSIONAL TEXT, CNS_PROFISSIONAL TEXT, USERNAME TEXT, SENHA TEXT, BLOQUEIO_ACESSO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS PROFISSIONAIS (ID_PROFISSIONAL INTEGER PRIMARY KEY AUTOINCREMENT, NOME_PROFISSIONAL TEXT, CNS_PROFISSIONAL TEXT, USERNAME TEXT, SENHA TEXT, BLOQUEIO_ACESSO INTEGER, ID_UNIDADE INTEGER);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS PROFISSIONAIS_CBOS (ID_PROFISSIONAL INTEGER, CODIGO_CBO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS PROFISSIONAIS_CBOS (ID_PROFISSIONAL INTEGER, CODIGO_CBO TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS PROFISSIONAIS_EQUIPE (ID_EQUIPE INTEGER, ID_PROFISSIONAL INTEGER, ATIVO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS PROFISSIONAIS_EQUIPE (ID_EQUIPE INTEGER, ID_PROFISSIONAL INTEGER, ATIVO INTEGER);');
|
||||||
|
db.execute('CREATE TABLE IF NOT EXISTS ETNIAS_INDIGENAS (ID_ETNIA_INDIGENA TEXT, DESC_ETNIA_INDIGENA TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS UNIDADES (ID_UNIDADE INTEGER PRIMARY KEY AUTOINCREMENT, NOME_UNIDADE TEXT, CNES_UNIDADE TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS UNIDADES (ID_UNIDADE INTEGER PRIMARY KEY AUTOINCREMENT, NOME_UNIDADE TEXT, CNES_UNIDADE TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS VISITAS_DOMICILIARES (ID_VISITA_DOMICILIAR INTEGER PRIMARY KEY AUTOINCREMENT, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, DT_ATENDIMENTO TEXT, TURNO INTEGER, TIPO_IMOVEL INTEGER, VISITA_ACOMPANHADA INTEGER, DESFECHO INTEGER, PESO TEXT, ALTURA TEXT, ID_PROFISSIONAL INTEGER, CBO_PROFISSIONAL TEXT, INE_PROFISSIONAL TEXT, CNES_UNIDADE TEXT, ID_UNIDADE INTEGER, ID_EQUIPE INTEGER, COMPLEMENTO TEXT, SINCRONIZADO TEXT);');
|
db.execute('CREATE TABLE IF NOT EXISTS VISITAS_DOMICILIARES (ID_VISITA_DOMICILIAR INTEGER PRIMARY KEY AUTOINCREMENT, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, DT_ATENDIMENTO TEXT, TURNO INTEGER, TIPO_IMOVEL INTEGER, VISITA_ACOMPANHADA INTEGER, DESFECHO INTEGER, PESO TEXT, ALTURA TEXT, ID_PROFISSIONAL INTEGER, CBO_PROFISSIONAL TEXT, INE_PROFISSIONAL TEXT, CNES_UNIDADE TEXT, ID_UNIDADE INTEGER, ID_EQUIPE INTEGER, COMPLEMENTO TEXT, SINCRONIZADO TEXT);');
|
||||||
db.execute('CREATE TABLE IF NOT EXISTS VISITAS_DOMICILIARES_COMPL (ID_VISITA_DOMICILIAR INTEGER, ID_VISITA_DOM_TIPO INTEGER, ID_VISITA_COMPLEMENTO INTEGER);');
|
db.execute('CREATE TABLE IF NOT EXISTS VISITAS_DOMICILIARES_COMPL (ID_VISITA_DOMICILIAR INTEGER, ID_VISITA_DOM_TIPO INTEGER, ID_VISITA_COMPLEMENTO INTEGER);');
|
||||||
@@ -103,6 +102,7 @@ class DbSqliteLoad{
|
|||||||
'DELETE FROM PROFISSIONAIS;',
|
'DELETE FROM PROFISSIONAIS;',
|
||||||
'DELETE FROM PROFISSIONAIS_CBOS;',
|
'DELETE FROM PROFISSIONAIS_CBOS;',
|
||||||
'DELETE FROM PROFISSIONAIS_EQUIPE;',
|
'DELETE FROM PROFISSIONAIS_EQUIPE;',
|
||||||
|
'DELETE FROM ETNIAS_INDIGENAS;',
|
||||||
'DELETE FROM UNIDADES;',
|
'DELETE FROM UNIDADES;',
|
||||||
'DELETE FROM VISITAS_DOMICILIARES;',
|
'DELETE FROM VISITAS_DOMICILIARES;',
|
||||||
'DELETE FROM VISITAS_DOMICILIARES_COMPL;',
|
'DELETE FROM VISITAS_DOMICILIARES_COMPL;',
|
||||||
@@ -143,6 +143,20 @@ class DbSqliteLoad{
|
|||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future saveEtniasIndigenasDB(List rows)async{
|
||||||
|
Database db = await intialDB();
|
||||||
|
Batch batch = db.batch();
|
||||||
|
rows.forEach((row) {
|
||||||
|
batch.insert('ETNIAS_INDIGENAS', row);
|
||||||
|
});
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> ETNIAS_INDIGENAS = await db.query('ETNIAS_INDIGENAS');
|
||||||
|
print('Total de Etnias Indigenas no banco de dados: ${ETNIAS_INDIGENAS.length}');
|
||||||
|
return db;
|
||||||
|
}
|
||||||
|
|
||||||
Future saveUnidadesDB(List rows)async{
|
Future saveUnidadesDB(List rows)async{
|
||||||
Database db = await intialDB();
|
Database db = await intialDB();
|
||||||
Batch batch = db.batch();
|
Batch batch = db.batch();
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
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';
|
||||||
|
|
||||||
@@ -22,67 +23,107 @@ class DbSqliteSync{
|
|||||||
db.execute(querys[i]);
|
db.execute(querys[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Future insertBairros(var value,int i)async{
|
Future insertBairros(var value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
//"idBairro":2,"nomeBairro":"RURAL"
|
Batch batch = db.batch();
|
||||||
// BAIRROS (ID_BAIRRO INTEGER PRIMARY KEY AUTOINCREMENT, NO_BAIRRO TEXT);');
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_BAIRRO' : value[i]['idBairro'],
|
'ID_BAIRRO' : list[i]['idBairro'],
|
||||||
'NO_BAIRRO' : value[i]['nomeBairro'],
|
'NO_BAIRRO' : list[i]['nomeBairro'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('BAIRROS', row);
|
rows.add(row);
|
||||||
// print('id increment $id');
|
}
|
||||||
// print(await db.query('BAIRROS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('BAIRROS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> BAIRROS = await db.query('BAIRROS');
|
||||||
|
print('Total de BAIRROS : ${BAIRROS.length}');
|
||||||
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertTiposLogradouros(var value,int i)async{
|
Future insertTiposLogradouros(var value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
Batch batch = db.batch();
|
||||||
// LOGRADOUROS_TIPOS (ID_LOGR_TIPO INTEGER PRIMARY KEY AUTOINCREMENT, NO_LOGR_TIPO TEXT);
|
for (int i = 0; i < list.length; i++) {
|
||||||
// {"idTipoLogradouro":0,"nomeTipoLogradouro":"NAO DEFINIDO"}
|
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_LOGR_TIPO' : value[i]['idTipoLogradouro'],
|
'ID_LOGR_TIPO' : value[i]['idTipoLogradouro'],
|
||||||
'NO_LOGR_TIPO' : value[i]['nomeTipoLogradouro'],
|
'NO_LOGR_TIPO' : value[i]['nomeTipoLogradouro'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('LOGRADOUROS_TIPOS', row);
|
rows.add(row);
|
||||||
// print('id increment $id');
|
}
|
||||||
// print(await db.query('LOGRADOUROS_TIPOS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('LOGRADOUROS_TIPOS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> LOGRADOUROS_TIPOS = await db.query('LOGRADOUROS_TIPOS');
|
||||||
|
print('Total de LOGRADOUROS_TIPOS : ${LOGRADOUROS_TIPOS.length}');
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertLogradouros(var value,int i)async{
|
Future insertLogradouros(var value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// LOGRADOUROS_ENDERECOS (ID_LOGR_ENDERECO INTEGER, ID_LOGR_TIPO INTEGER, DESC_LOGR_ENDERECO TEXT, ID_BAIRRO INTEGER);
|
Batch batch = db.batch();
|
||||||
// "idLogradouro":7,"descLogradouro":"1A","idTipoLogradouro":6,"idBairro":65
|
for (int i = 0; i < list.length; i++) {
|
||||||
|
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_LOGR_ENDERECO' : value[i]['idLogradouro'],
|
'ID_LOGR_ENDERECO' : value[i]['idLogradouro'],
|
||||||
'ID_LOGR_TIPO' : value[i]['idTipoLogradouro'],
|
'ID_LOGR_TIPO' : value[i]['idTipoLogradouro'],
|
||||||
'DESC_LOGR_ENDERECO' : value[i]['descLogradouro'],
|
'DESC_LOGR_ENDERECO' : value[i]['descLogradouro'],
|
||||||
'ID_BAIRRO' : value[i]['idBairro'],
|
'ID_BAIRRO' : value[i]['idBairro'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('LOGRADOUROS_ENDERECOS', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('LOGRADOUROS_ENDERECOS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('LOGRADOUROS_ENDERECOS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> LOGRADOUROS_ENDERECOS = await db.query('LOGRADOUROS_ENDERECOS');
|
||||||
|
print('Total de LOGRADOUROS_ENDERECOS : ${LOGRADOUROS_ENDERECOS.length}');
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertLoteamentos(var value,int i)async{
|
Future insertLoteamentos(var value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// LOGRADOUROS_LOTEAMENTOS (ID_LOGR_LOTEAMENTO INTEGER PRIMARY KEY AUTOINCREMENT, DESC_LOGR_LOTEAMENTO TEXT);
|
Batch batch = db.batch();
|
||||||
// "idLoteamento":1,"descLoteamento":"ASSENTAMENTO MARINEL"
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_LOGR_LOTEAMENTO' : value[i]['idLoteamento'],
|
'ID_LOGR_LOTEAMENTO' : value[i]['idLoteamento'],
|
||||||
'DESC_LOGR_LOTEAMENTO' : value[i]['descLoteamento'],
|
'DESC_LOGR_LOTEAMENTO' : value[i]['descLoteamento'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('LOGRADOUROS_LOTEAMENTOS', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('LOGRADOUROS_LOTEAMENTOS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('LOGRADOUROS_LOTEAMENTOS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> LOGRADOUROS_LOTEAMENTOS = await db.query('LOGRADOUROS_LOTEAMENTOS');
|
||||||
|
print('Total de LOGRADOUROS_LOTEAMENTOS : ${LOGRADOUROS_LOTEAMENTOS.length}');
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertProfissionais(var value,int i)async{
|
Future insertProfissionais(var value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// PROFISSIONAIS (ID_PROFISSIONAL INTEGER PRIMARY KEY AUTOINCREMENT, NOME_PROFISSIONAL TEXT, CNS_PROFISSIONAL TEXT, USERNAME TEXT, SENHA TEXT, BLOQUEIO_ACESSO INTEGER);');
|
Batch batch = db.batch();
|
||||||
// "idProfissional":1,"nomeProfissional":"ADMINISTRADOR","CNSProfissional":"999999999999999","username":"ADMIN","senha":"1$c124af0fb0b0941b907a9ddf3d5fb3c921d64e7d","bloqueioAcesso":0
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_PROFISSIONAL' : value[i]['idProfissional'],
|
'ID_PROFISSIONAL' : value[i]['idProfissional'],
|
||||||
'NOME_PROFISSIONAL': value[i]['nomeProfissional'],
|
'NOME_PROFISSIONAL': value[i]['nomeProfissional'],
|
||||||
@@ -90,47 +131,58 @@ class DbSqliteSync{
|
|||||||
'USERNAME' : value[i]['username'],
|
'USERNAME' : value[i]['username'],
|
||||||
'SENHA' : value[i]['senha'],
|
'SENHA' : value[i]['senha'],
|
||||||
'BLOQUEIO_ACESSO' : value[i]['bloqueioAcesso'],
|
'BLOQUEIO_ACESSO' : value[i]['bloqueioAcesso'],
|
||||||
|
'ID_UNIDADE' : value[i]['idUnidade'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('PROFISSIONAIS', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('PROFISSIONAIS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('PROFISSIONAIS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> PROFISSIONAIS = await db.query('PROFISSIONAIS');
|
||||||
|
print('Total de PROFISSIONAIS : ${PROFISSIONAIS.length}');
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertProfissionaisCBOs(var value,int i)async{
|
Future insertProfissionaisCBOs(var value)async{
|
||||||
|
List list = value;
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// PROFISSIONAIS_CBOS (ID_PROFISSIONAL INTEGER, CODIGO_CBO TEXT);');
|
Batch batch = db.batch();
|
||||||
// "idProfissional":1,"codCBO":"225125"
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_PROFISSIONAL' : value[i]['idProfissional'],
|
'ID_PROFISSIONAL' : value[i]['idProfissional'],
|
||||||
'CODIGO_CBO' : value[i]['codCBO'],
|
'CODIGO_CBO' : value[i]['codCBO'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('PROFISSIONAIS_CBOS', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('PROFISSIONAIS_CBOS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('PROFISSIONAIS_CBOS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> PROFISSIONAIS_CBOS = await db.query('PROFISSIONAIS_CBOS');
|
||||||
|
print('Total de PROFISSIONAIS_CBOS : ${PROFISSIONAIS_CBOS.length}');
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertCidadaos(var value,String type,String CD_USUARIO_SUS,int i)async{
|
Future insertCidadaos(var value,String type,String CD_USUARIO_SUS)async{
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> rows = [];
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// CIDADAOS (ID_CIDADAO,CD_USUARIO_SUS,NOME_CIDADAO,NOME_SOCIAL,SEXO,DT_NASCIMENTO,ID_ESTADO_CIVIL,NOME_CONJUGE,NACIONALIDADE,ID_MUNICIPIO_NASC,NO_MUNICIPIO_NASC,ESTADO_UF_NASC
|
Batch batch = db.batch();
|
||||||
// ID_ETNIA,ID_ESCOLARIDADE,ID_DEFICIENCIA,NOME_MAE,DESCONHECE_MAE,NOME_PAI,DESCONHECE_PAI,ID_UNIDADE,NUM_PRONTUARIO,NUM_PRONTUARIO_PROV,CLASSIFICACAO,CLASSIFICACAO_SUB,
|
|
||||||
// NUM_FAMILIA,ID_PAIS_RESID,ID_MUNICIPIO_RESID,NO_MUNICIPIO_RESID,ESTADO_UF_RESID,CODIGO_IBGE_RESID,NO_BAIRRO_LOGR,ID_LOGR_TIPO,NOME_LOGR,CEP_LOGR,NUMERO_LOGR,LOTEAMENTO_LOGR
|
if(value.toString() == '[Erro para carregar os Cidadaos - Sync -> syncCidadaos()]'){
|
||||||
// COMPL_LOGR,PONTO_REFERENCIA,ZONA_LOGR,DDD_TELEFONE,NUM_TELEFONE,DDD_CELULAR,NUM_CELULAR,DDD_RECADO,NUM_RECADO,EMAIL,OBSERVACOES,CPF,CNS,TITULO_ELEITOR,RG_NUMERO,
|
return db;
|
||||||
// RG_COMPLEMENTO,RG_UF,RG_ORGAO,RG_DATA_EMISSAO,TIPO_CERTIDAO,NUM_CERTIDAO,CARTORIO_CERTIDAO,LIVRO_CERTIDAO,FOLHA_CERTIDAO,TERMO_CERTIDAO,DT_EMISSAO_CERTIDAO,NUM_CTPS,
|
}
|
||||||
// NUM_SERIE_CTPS,ESTADO_UF_CTPS,NUM_PIS_PASEP,FL_RETIROU_CARTAO,NUM_NIS,NUM_PROT_CROSS,RENDA_MENSAL,PROFISSAO,DT_OBITO,DECLARACAO_OBITO,BLOQUEIO,ORIGEM,DT_HORA_CADASTRO,
|
|
||||||
// ID_USUARIO_CADASTRO,ID_DOMICILIO,ATENDIMENTOS,SINCRONIZADO);');
|
|
||||||
'"idCidadao":3,"cdUsuarioSus":"571A22D79C24526537C7E4CE8C0D4046","noUsuario":"REBECA MARIA DE MELO RIBEIRO DOS SANTOS","nomeSocial":"","inSexo":"F",'
|
|
||||||
'"dtNascimento":"2007-01-20","inSituacaoConjugal":null,"noConjugue":"","nacionalidade":1,"cdMunicipioNasc":1523,"noMunicipioNasc":"CORUMBATAI","cdEstado":"SP","cdEtnia":1,'
|
|
||||||
'"cdUsuarioEscolaridade":4,"nrDeficiencia":null,"noMae":"JOELMA MARIA DE MELO","desconheceMae":0,"noPai":"AILTON JOSE RIBEIRO DOS SANTOS","desconhecePai":0,"nrUnidade":3,'
|
|
||||||
'"nrProntuario":"000004","nrProntuarioProvisorio":null,"classificacao":1,"nrFamilia":"","idPaisResid":33,"cdMunicipioResid":3427,"noMunicipioResid":"CORUMBATAI",'
|
|
||||||
'"cdEstadoResid":"SP","muniCdCodIbgeResid":"351270","noBairro":"RURAL","idTipoLogradouro":6,"noLogradouro":"NAO INFORMADO","cdCep":"13540000","nrLogradouro":"0",'
|
|
||||||
'"loteamento":"","noComplLogradouro":"WASHIGNTON LUIZ","pontoReferencia":"","zona":2,"nrDddTelefone":"","nrTelefone":"","nrDddCelular":"11","nrCelular":"976399671",'
|
|
||||||
'"nrDddRecado":"","nrRecado":"","email":"","observacao":"","nrCpf":"57459957852","nrCns":"702309150758010","tituloEleitor":null,"nrIdentidade":"","noComplIdentidade":"",'
|
|
||||||
'"cdSiglaUfIdentidade":"--","cdOrgaoEmissorIdentidade":null,"dtEmissaoIdentidade":null,"cdTipoCertidao":null,"nrCertidaoNova":"","noCartorioCertidao":"",'
|
|
||||||
'"nrLivroCertidao":null,"nrFolhaCertidao":null,"noTermoCertidao":"","dtEmissaoCertidao":null,"nrCtps":null,"nrSerieCtps":null,"cdSiglaUfCtps":"--","nrPispasep":"",'
|
|
||||||
'"cartaoMunicipalRetirado":"N","nrNis":"","rendaMensal":null,"profissao":"","dtObito":null,"bloqueio":"0","origem":"S","cdDomicilio":1838,"atendimentos":0,'
|
|
||||||
'"idUsuarioCadastro":null';
|
|
||||||
|
|
||||||
if(type=='sync'){
|
if(type=='sync'){
|
||||||
|
//para a carga inicial o datalista funciona
|
||||||
|
List dataList = value;
|
||||||
|
for (int i = 0; i < dataList.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_CIDADAO' : value[i]['idCidadao'],
|
'ID_CIDADAO' : value[i]['idCidadao'],
|
||||||
'CD_USUARIO_SUS' : value[i]['cdUsuarioSus'],
|
'CD_USUARIO_SUS' : value[i]['cdUsuarioSus'],
|
||||||
@@ -146,6 +198,7 @@ class DbSqliteSync{
|
|||||||
'NO_MUNICIPIO_NASC' : value[i]['noMunicipioNasc'],
|
'NO_MUNICIPIO_NASC' : value[i]['noMunicipioNasc'],
|
||||||
'ESTADO_UF_NASC' : value[i]['cdEstado'],
|
'ESTADO_UF_NASC' : value[i]['cdEstado'],
|
||||||
'ID_ETNIA' : value[i]['cdEtnia'],
|
'ID_ETNIA' : value[i]['cdEtnia'],
|
||||||
|
'ID_ETNIA_INDIGENA' : value[i]['cdEtniaIndigena'],
|
||||||
'ID_ESCOLARIDADE' : value[i]['cdUsuarioEscolaridade'],
|
'ID_ESCOLARIDADE' : value[i]['cdUsuarioEscolaridade'],
|
||||||
'ID_DEFICIENCIA' : value[i]['nrDeficiencia'],
|
'ID_DEFICIENCIA' : value[i]['nrDeficiencia'],
|
||||||
'NOME_MAE' : value[i]['noMae'],
|
'NOME_MAE' : value[i]['noMae'],
|
||||||
@@ -212,33 +265,48 @@ class DbSqliteSync{
|
|||||||
'ID_USUARIO_CADASTRO' : value[i]['idUsuarioCadastro'],
|
'ID_USUARIO_CADASTRO' : value[i]['idUsuarioCadastro'],
|
||||||
'ID_DOMICILIO' : value[i]['cdDomicilio'],
|
'ID_DOMICILIO' : value[i]['cdDomicilio'],
|
||||||
'ATENDIMENTOS' : value[i]['atendimentos'],
|
'ATENDIMENTOS' : value[i]['atendimentos'],
|
||||||
|
'RENDA_TOTAL_FAMILIAR': value[i]['rendaTotalFamiliar'],
|
||||||
|
'POSSUI_VEICULO': value[i]['possuiVeiculo'],
|
||||||
|
'MODELO_VEICULO': value[i]['modeloVeiculo'] ,
|
||||||
|
'ANO_VEICULO': value[i]['anoVeiculo'],
|
||||||
|
'POSSUI_FINANCIAMENTO': value[i]['possuiFinanciamento'] ,
|
||||||
|
'VALOR_PARCELA_FINANCIAMENTO': value[i]['valorParcelaFinanciamento'] ,
|
||||||
|
'POSSUI_EMPRESTIMO': value[i]['possuiEmprestimo'] ,
|
||||||
|
'VALOR_PARCELA_EMPRESTIMO': value[i]['valorParcelaEmprestimo'],
|
||||||
'SINCRONIZADO' : '',
|
'SINCRONIZADO' : '',
|
||||||
};
|
};
|
||||||
int id = await db.insert('CIDADAOS', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('CIDADAOS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('CIDADAOS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> CIDADAOS = await db.query('CIDADAOS');
|
||||||
|
print('Total de CIDADAOS : ${CIDADAOS.length}');
|
||||||
}else if(type=='new'){
|
}else if(type=='new'){
|
||||||
int id = await db.insert('CIDADAOS', value);
|
//testar depois ao incluir um novo cidadao se precisara do map data
|
||||||
|
Map<String, dynamic> dataMap = value;
|
||||||
|
int id = await db.insert('CIDADAOS', dataMap);
|
||||||
// print('novo id $id');
|
// print('novo id $id');
|
||||||
}else if(type=='update'){
|
}else if(type=='update'){
|
||||||
await db.update('CIDADAOS', value,where: "CD_USUARIO_SUS = '$CD_USUARIO_SUS'");
|
//testar depois ao incluir um novo cidadao se precisara do map data
|
||||||
|
Map<String, dynamic> dataMap = value;
|
||||||
|
await db.update('CIDADAOS', dataMap,where: "CD_USUARIO_SUS = '$CD_USUARIO_SUS'");
|
||||||
}
|
}
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertCadastrosDomiciliares(var value,String type,int ID_DOMICILIO,int ID_CIDADAO,String CD_USUARIO_SUS,int i)async{
|
Future insertCadastrosDomiciliares(var value,String type,int ID_DOMICILIO,int ID_CIDADAO,String CD_USUARIO_SUS)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
|
||||||
// CIDADAO_DOMICILIO (ID_DOMICILIO,TIPO_IMOVEL,ID_AREA_DOMICILIO,ID_MICROAREA_DOMICILIO,FORA_AREA,SITUACAO_MORADIA,TIPO_LOCALIDADE,TIPO_DOMICILIO,NUM_MORADORES,
|
List<Map<String, dynamic>> rows = [];
|
||||||
// NUM_COMODOS,SITUACAO_RURAL,TIPO_ACESSO,MAT_PREDOMINANTE,DISPONIBILIDADE_ENERGIA,TIPO_ABASTECIMENTO,TRATAMENTO_AGUA,DESTINO_LIXO,ESCOAMENTO,FL_ANIMAIS,
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// ANIMAIS_GATO,ANIMAIS_CACHORRO,ANIMAIS_PASSARO,ANIMAIS_OUTROS,QTDE_ANIMAIS,CBO_RESP_CADASTRO,ID_RESP_CADASTRO,CNES_RESP_CADASTRO,INE_RESP_CADASTRO,DT_CADASTRO,
|
Batch batch = db.batch();
|
||||||
// ID_EQUIPE,ORIGEM,SINCRONIZADO,NOME_INSTITUICAO_PERMANENCIA,PROFISSIONAIS_VINCULADOS_INST,RESPONSAVEL_TECNICO_INST,CNS_RESP_TECNICO_INST,CARGO_RESP_TECNICO_INST,
|
|
||||||
// TEL_RESP_TECNICO_INST)
|
|
||||||
|
|
||||||
// "cdDomicilio":16,"cdTipoImovel":1,"cdAreaDomicilio":null,"cdMicroareaDomicilio":null,"foraArea":1,"cdSituacao":2,"cdTipoLocalidade":1,"cdTipoDomicilio":1,
|
|
||||||
// "nrMoradores":6,"nrComodo":7,"situacaoProducaoRural":0,"tipoAcesso":1,"materialParedesExternas":1,"dispEnergiaEletrica":1,"cdTipoAbastecimento":1,"cdTratamentoAgua":4,
|
|
||||||
// "cdDestinoLixo":1,"cdEscoamento":1,"animais":0,"animaisGato":0,"animaisCachorro":0,"animaisPassaro":0,"animaisOutros":0,"animaisQtde":null,"respCadastro":68,
|
|
||||||
// "cnesUnidade":"9372253","cboRespCadastro":"515105","ine":"0001485628","dtCadastro":"2021-11-10","cdEquipe":5,"noInstPermanencia":null,"outrosProfissionaisInst":null,
|
|
||||||
// "noResponsavelInst":null,"cnsResponsavelInst":null,"gargoResponsavelInst":null,"telefoneResponsavelInst":null
|
|
||||||
if(type=='sync'){
|
if(type=='sync'){
|
||||||
|
List list = value;
|
||||||
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_DOMICILIO': value[i]['cdDomicilio'],
|
'ID_DOMICILIO': value[i]['cdDomicilio'],
|
||||||
'TIPO_IMOVEL': value[i]['cdTipoImovel'],
|
'TIPO_IMOVEL': value[i]['cdTipoImovel'],
|
||||||
@@ -278,9 +346,17 @@ class DbSqliteSync{
|
|||||||
'CARGO_RESP_TECNICO_INST': value[i]['gargoResponsavelInst'],
|
'CARGO_RESP_TECNICO_INST': value[i]['gargoResponsavelInst'],
|
||||||
'TEL_RESP_TECNICO_INST': value[i]['telefoneResponsavelInst'],
|
'TEL_RESP_TECNICO_INST': value[i]['telefoneResponsavelInst'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('CIDADAO_DOMICILIO', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('CIDADAO_DOMICILIO'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('CIDADAO_DOMICILIO', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> CIDADAO_DOMICILIO = await db.query('CIDADAO_DOMICILIO');
|
||||||
|
print('Total de CIDADAO_DOMICILIO : ${CIDADAO_DOMICILIO.length}');
|
||||||
}else if(type=='new'){
|
}else if(type=='new'){
|
||||||
int id = await db.insert('CIDADAO_DOMICILIO', value);
|
int id = await db.insert('CIDADAO_DOMICILIO', value);
|
||||||
print('novo id $id');
|
print('novo id $id');
|
||||||
@@ -311,32 +387,15 @@ class DbSqliteSync{
|
|||||||
|
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertCadastrosIndividuais(var value,String type,int ID_CIDADAO,int i)async{
|
Future insertCadastrosIndividuais(var value,String type,int ID_CIDADAO)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
|
||||||
// CADASTROS_INDIVIDUAIS (ID_CAD_INDIVIDUAL,STATUS_CADASTRO,ID_CIDADAO,CD_USUARIO_SUS,ID_AREA_CIDADAO,ID_MICROAREA_CIDADAO,FORA_AREA,RESPONSAVEL_FAMILIAR,
|
|
||||||
// ID_RESPONSAVEL_FAMILIAR,NOME_RESPONSAVEL_FAMILIAR,PARENTESCO,ESCOLARIDADE,FREQ_ESCOLA_CRECHE,SITUACAO_MERCADO,CUIDADOR_TRADICIONAL,GRUPO_COMUNITARIO,PLANO_PRIVADO,
|
|
||||||
// COMUNIDADE_TRADICIONAL,COM_TRADI_QUAL,ORIENT_SEXUAL,TEM_DEFICIENCIA,DEF_AUDITIVA,DEF_INTELECTUAL,DEF_VISUAL,DEF_FISICA,DEF_OUTRAS,SAIDA_CADASTRO,DATA_SAIDA_CADASTRO,
|
|
||||||
// CADASTRO_RECUSADO,GESTANTE,MATERNIDADE_REFERENCIA,PESO,FUMANTE,USA_ALCOOL,USA_DROGAS,HIPERTENSAO,DIABETES,AVC_DERRAME,INFARTO,HANSENIASE,TUBERCULOSE,CANCER,
|
|
||||||
// INTERNACAO,MOTIVO,DOENCA_CARDIACA,PROBLEMA_RINS,DOENCA_PULMAO,SAUDE_MENTAL,ACAMADO,DOMICILIADO,PLANTAS_MED,PLANTAS_MED_QUAIS,PIC,OUTRAS_CONDICOES,TEMPO_SITUACAO_RUA
|
|
||||||
// ACOMP_INTITUICAO,ACOMP_INTITUICAO_QUAL,BENEFICIO,REF_FAMILIAR,VISITA_FAMILIAR,PARENTESCO_VISITA,ALIMENTACAO_DIARIA,REST_POPULAR,DOACAO_REST,DOACAO_RELIGIOSO,
|
|
||||||
// DOACAO_POPULAR,OUTROS_ALIM,ACESSO_HIGIENE,BANHO,SANITARIO,HIGIENE_BUCAL,OUTROS_HIGIENE,FICHA_ALTERACAO,ID_RESP_CADASTRO,CNES_RESP_CADASTRO,CBO_RESP_CADASTRO,
|
|
||||||
// INE_RESP_CADASTRO,DT_CADASTRO,ID_EQUIPE,ORIGEM,SINCRONIZADO,DT_ENTRADA_BRASIL,DT_NATURALIZACAO,PORTARIA_NATURALIZACAO,CRIANCAS_ADULTO,CRIANCAS_OUTRAS_CRIANCAS,
|
|
||||||
// CRIANCAS_ADOLESCENTE,CRIANCAS_SOZINHA,CRIANCAS_CRECHE,CRIANCAS_OUTRO,IDENTIDADE_GENERO)
|
|
||||||
|
|
||||||
// "idCadIndividual":5,"idCidadao":6,"cdUsuarioSUS":"4576021578C044ACF57CF5582356B697","idAreaCidadao":null,"idMicroAreaCidadao":null,"foraArea":1,"flResponsavelFamiliar":1,
|
List<Map<String, dynamic>> rows = [];
|
||||||
// "cdResponsavelFamiliar":"4576021578C044ACF57CF5582356B697","nomeResponsavelFamiliar":"MARIA CLEIDIANA DE OLIVEIRA CRUZ","parentesco":null,"curso":11,"frequentaEscola":null,
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// "situacaoMercado":2,"cuidadorTrad":2,"grupoComunitario":2,"plSaudePrivado":2,"comunidadeTradicional":2,"comunidadeTradicionalEspec":"","orientacaoSexual":2,
|
Batch batch = db.batch();
|
||||||
// "temDeficiencia":2,"defAuditiva":2,"defIntelectual":2,"defVisual":2,"defFisica":2,"defOutros":2,"saidaMotivo":null,"saidaData":null,"recusado":null,"gestante":null,
|
|
||||||
// "maternidadeReferencia":"","peso":2,"fumante":null,"usaAlcool":1,"outrasDrogas":2,"hipertensao":2,"diabetes":2,"avcDerrame":2,"infarto":2,"hanseniase":2,"tuberculose":2,
|
|
||||||
// "cancer":2,"internacao12Meses":2,"motivo":"","doencaCardiaca":1,"problemasRins":1,"doencaRespiratoriaPulmao":1,"tratamInternacaoPsiquiatrica":2,"acamado":2,
|
|
||||||
// "domiciliado":2,"plantasMedicinais":2,"plantasQuais":"","praticasIntegrativasComplem":null,"outrasCondSaude":"","tempoSituacaoRua":1,"acompanhadoInstituicao":null,
|
|
||||||
// "instituicaoQual":"","recebeBeneficio":null,"referenciaFamiliar":null,"visitaFamiliarFrequente":null,"visitaFamiliarParentesco":"","alimentacaoDiaria":null,
|
|
||||||
// "alimentecaoRestaurantePop":2,"alimentacaoDoacaoRestaurante":2,"alimentacaoDoacaoGrupoRel":2,"alimentacaoDoacaoPop":2,"alimentacaoOutros":2,"higienePessoal":2,
|
|
||||||
// "higieneBanho":2,"higieneSanitario":2,"higieneBucal":2,"higieneOutros":2,"fichaAlteracao":null,"idProfissionalResponsavel":68,"cnesUnidade":"9372253",
|
|
||||||
// "cboProfissional":"515105", "ine":"0001485628","dtCadastro":"2022-04-05","cdEquipe":5,"dtEntradaBrasil":null,"dtNaturalizado":null,"portariaNaturalizacao":"",
|
|
||||||
// "criancasAdulto":2,"criancasOutrasCriancas":2,"criancasAdolescente":2,"criancasSozinha":2,"criancasCresce":2,"criancasOutro":2,"identidadeGenero":null,"statusCadastro":null}
|
|
||||||
|
|
||||||
if(type=='sync'){
|
if(type=='sync'){
|
||||||
|
List list = value;
|
||||||
|
for (int i = 0; i < list.length; i++) {
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_CAD_INDIVIDUAL': value[i]['idCadIndividual'],
|
'ID_CAD_INDIVIDUAL': value[i]['idCadIndividual'],
|
||||||
'STATUS_CADASTRO': value[i]['statusCadastro'],
|
'STATUS_CADASTRO': value[i]['statusCadastro'],
|
||||||
@@ -428,23 +487,39 @@ class DbSqliteSync{
|
|||||||
'CRIANCAS_CRECHE': value[i]['criancasCresce'],
|
'CRIANCAS_CRECHE': value[i]['criancasCresce'],
|
||||||
'CRIANCAS_OUTRO': value[i]['criancasOutro'],
|
'CRIANCAS_OUTRO': value[i]['criancasOutro'],
|
||||||
'IDENTIDADE_GENERO': value[i]['identidadeGenero'],
|
'IDENTIDADE_GENERO': value[i]['identidadeGenero'],
|
||||||
|
'FIBROMIALGIA': value[i]['fibromialgia'],
|
||||||
|
'TRANSTORNO_ESPECTRO_AUTISTA': value[i]['transtornoEspectroAutista'],
|
||||||
};
|
};
|
||||||
int id = await db.insert('CADASTROS_INDIVIDUAIS', row);
|
rows.add(row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
}
|
||||||
// print(await db.query('CADASTROS_INDIVIDUAIS'));
|
rows.forEach((row) {
|
||||||
|
batch.insert('CADASTROS_INDIVIDUAIS', row);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<Object?> result = await batch.commit();
|
||||||
|
print('Linhas inseridas: ${result.length}');
|
||||||
|
|
||||||
|
List<Map<String, dynamic>> CADASTROS_INDIVIDUAIS = await db.query('CADASTROS_INDIVIDUAIS');
|
||||||
|
print('Total de CADASTROS_INDIVIDUAIS : ${CADASTROS_INDIVIDUAIS.length}');
|
||||||
}else if(type=='new'){
|
}else if(type=='new'){
|
||||||
int id = await db.insert('CADASTROS_INDIVIDUAIS', value);
|
Map<String, dynamic> dataMap = value;
|
||||||
|
int id = await db.insert('CADASTROS_INDIVIDUAIS', dataMap);
|
||||||
// print('novo id $id');
|
// print('novo id $id');
|
||||||
}else if(type=='update'){
|
}else if(type=='update'){
|
||||||
await db.update('CADASTROS_INDIVIDUAIS', value,where: "ID_CIDADAO = $ID_CIDADAO");
|
Map<String, dynamic> dataMap = value;
|
||||||
|
await db.update('CADASTROS_INDIVIDUAIS', dataMap ,where: "ID_CIDADAO = $ID_CIDADAO");
|
||||||
}
|
}
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertAtendimentoDomiciliar(var value)async{
|
Future insertAtendimentoDomiciliar(var value, bool novo, int ID_ATENDIMENTO_DOMICILIAR)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
if(novo){
|
||||||
int id = await db.insert('ATENDIMENTOS_DOMICILIARES', value);
|
int id = await db.insert('ATENDIMENTOS_DOMICILIARES', value);
|
||||||
// print(await db.query('ATENDIMENTOS_DOMICILIARES'));
|
|
||||||
return id;
|
return id;
|
||||||
|
}else{
|
||||||
|
await db.update('ATENDIMENTOS_DOMICILIARES', value ,where: "ID_ATENDIMENTO_DOMICILIAR = $ID_ATENDIMENTO_DOMICILIAR");
|
||||||
|
return ID_ATENDIMENTO_DOMICILIAR;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Future insertCondicoesAvaliadas(int ID_ATENDIMENTO_DOMICILIAR,int COND_AVAL_ATEND_DOM)async{
|
Future insertCondicoesAvaliadas(int ID_ATENDIMENTO_DOMICILIAR,int COND_AVAL_ATEND_DOM)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
@@ -457,11 +532,15 @@ class DbSqliteSync{
|
|||||||
// print(await db.query('ATENDS_DOM_COMPL'));
|
// print(await db.query('ATENDS_DOM_COMPL'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertVisitaDomiciliar(var value)async{
|
Future insertVisitaDomiciliar(var value, int ID_VISITA_DOMICILIAR, bool novo)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
if(novo){
|
||||||
int id = await db.insert('VISITAS_DOMICILIARES', value);
|
int id = await db.insert('VISITAS_DOMICILIARES', value);
|
||||||
print(await db.query('VISITAS_DOMICILIARES'));
|
|
||||||
return id;
|
return id;
|
||||||
|
}else{
|
||||||
|
await db.update('VISITAS_DOMICILIARES', value ,where: "ID_VISITA_DOMICILIAR = $ID_VISITA_DOMICILIAR");
|
||||||
|
return ID_VISITA_DOMICILIAR;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Future insertVisitaDomiciliarCOMPL(int ID_VISITA_DOMICILIAR,int ID_VISITA_DOM_TIPO, int ID_VISITA_COMPLEMENTO)async{
|
Future insertVisitaDomiciliarCOMPL(int ID_VISITA_DOMICILIAR,int ID_VISITA_DOM_TIPO, int ID_VISITA_COMPLEMENTO)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
@@ -475,15 +554,18 @@ class DbSqliteSync{
|
|||||||
print(await db.query('VISITAS_DOMICILIARES_COMPL'));
|
print(await db.query('VISITAS_DOMICILIARES_COMPL'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertProcedimentosDomiciliares(int ID_ATENDIMENTO_DOMICILIAR,int PROC_ATEND_DOM)async{
|
Future insertProcedimentosDomiciliares(int ID_ATENDIMENTO_DOMICILIAR,int PROCEDIMENTO_SELECIONADO)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
|
||||||
// ATENDS_DOM_COMPL (ID_ATENDIMENTO_DOMICILIAR INTEGER, COND_AVAL_ATEND_DOM INTEGER)
|
// ATENDS_DOM_COMPL (ID_ATENDIMENTO_DOMICILIAR INTEGER, COND_AVAL_ATEND_DOM INTEGER)
|
||||||
|
|
||||||
|
// String procedimento = await DBQuerys().buscarCodProced(PROCEDIMENTO_SELECIONADO);
|
||||||
Map<String,dynamic> row = {
|
Map<String,dynamic> row = {
|
||||||
'ID_ATENDIMENTO_DOMICILIAR' :ID_ATENDIMENTO_DOMICILIAR,
|
'ID_ATENDIMENTO_DOMICILIAR' :ID_ATENDIMENTO_DOMICILIAR,
|
||||||
'PROC_ATEND_DOM' :PROC_ATEND_DOM,
|
'PROC_ATEND_DOM' :PROCEDIMENTO_SELECIONADO,
|
||||||
};
|
};
|
||||||
int id = await db.insert('ATENDS_DOM_PROC', row);
|
int id = await db.insert('ATENDS_DOM_PROC', row);
|
||||||
print(await db.query('ATENDS_DOM_PROC'));
|
// print(await db.query('ATENDS_DOM_PROC'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertVISITAS_DOMICILIARES_PROC(int ID_VISITA_DOMICILIAR,String COD_PROC_SIGTAP)async{
|
Future insertVISITAS_DOMICILIARES_PROC(int ID_VISITA_DOMICILIAR,String COD_PROC_SIGTAP)async{
|
||||||
@@ -497,7 +579,7 @@ class DbSqliteSync{
|
|||||||
print(await db.query('VISITAS_DOMICILIARES_PROC'));
|
print(await db.query('VISITAS_DOMICILIARES_PROC'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,area,microarea)async{
|
Future saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,AREA_ID,AREA_DESCRICAO,MICROAREA_ID,MICROAREA_DESCRICAO)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
//refatorar cidade_load e nome_cidade
|
//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, '')}]';
|
'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, '')}]';
|
||||||
@@ -513,8 +595,10 @@ class DbSqliteSync{
|
|||||||
'AMBIENTE' : mode,
|
'AMBIENTE' : mode,
|
||||||
'SYNC_UNIDADE' : idUnidade,
|
'SYNC_UNIDADE' : idUnidade,
|
||||||
'NOME_UNIDADE' : nomeUnidade,
|
'NOME_UNIDADE' : nomeUnidade,
|
||||||
'AREA' : area,
|
'AREA_ID' : AREA_ID,
|
||||||
'MICROAREA' : microarea,
|
'AREA_DESCRICAO' : AREA_DESCRICAO,
|
||||||
|
'MICROAREA_ID' : MICROAREA_ID,
|
||||||
|
'MICROAREA_DESCRICAO' : MICROAREA_DESCRICAO,
|
||||||
'ULTIMA_SINCRONIZACAO' : DateTime.now().toString(),
|
'ULTIMA_SINCRONIZACAO' : DateTime.now().toString(),
|
||||||
'COMPETENCIA' : '${DateTime.now().year}${DateTime.now().month<10?'0':''}${DateTime.now().month-1}',
|
'COMPETENCIA' : '${DateTime.now().year}${DateTime.now().month<10?'0':''}${DateTime.now().month-1}',
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
||||||
|
|
||||||
|
import '../../models/equipe_modelo.dart';
|
||||||
|
|
||||||
class PrefService{
|
class PrefService{
|
||||||
|
|
||||||
Future createCacheidUsuario(String idUsuario)async{
|
Future createCacheidUsuario(String idUsuario)async{
|
||||||
@@ -7,46 +9,57 @@ class PrefService{
|
|||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
_preferences.setString('idUsuario', idUsuario);
|
_preferences.setString('idUsuario', idUsuario);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future readCacheIDUser() async{
|
||||||
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
|
String idUsuario = _preferences.getString('idUsuario')!;
|
||||||
|
return idUsuario;
|
||||||
|
}
|
||||||
|
|
||||||
Future createCacheUnidade(String idUnidade, String nomeUnidade)async{
|
Future createCacheUnidade(String idUnidade, String nomeUnidade)async{
|
||||||
|
|
||||||
|
print('idUnidade $idUnidade');
|
||||||
|
print('nomeUnidade $nomeUnidade');
|
||||||
|
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
_preferences.setString('idUnidade', idUnidade);
|
_preferences.setString('idUnidade', idUnidade);
|
||||||
_preferences.setString('nomeUnidade', nomeUnidade);
|
_preferences.setString('nomeUnidade', nomeUnidade);
|
||||||
|
return [_preferences.getString('idUnidade'),_preferences.getString('nomeUnidade')];
|
||||||
}
|
}
|
||||||
Future createCacheSync(String area,bool foraArea)async{
|
Future readCacheUnidade() async{
|
||||||
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
|
return [_preferences.getInt('idUnidade'),_preferences.getString('nomeUnidade')];
|
||||||
|
}
|
||||||
|
Future createCacheSync(EquipeModelo equipe,bool foraArea)async{
|
||||||
|
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
_preferences.setString('area', area);
|
_preferences.setInt('idAtbArea',equipe.ID_ATB_AREA);
|
||||||
|
_preferences.setInt('area',equipe.AREA);
|
||||||
|
_preferences.setInt('idAtbMicroarea',equipe.ID_ATB_MICROAREA==null?0:equipe.ID_ATB_MICROAREA);
|
||||||
|
_preferences.setInt('microarea',equipe.MICROAREA==null?0:equipe.MICROAREA);
|
||||||
|
_preferences.setInt('idEquipe',equipe.ID_EQUIPE);
|
||||||
|
_preferences.setInt('idUnidade',equipe.ID_UNIDADE);
|
||||||
|
_preferences.setString('ine',equipe.INE);
|
||||||
|
_preferences.setInt('idProfissional',equipe.ID_PROFISSIONAL);
|
||||||
|
_preferences.setInt('ativo',equipe.ATIVO);
|
||||||
_preferences.setBool('foraArea', foraArea);
|
_preferences.setBool('foraArea', foraArea);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future createCacheModel(String user,String password,String city,String mode)async{
|
Future createCacheModel(String user,String password,String city,String mode)async{
|
||||||
|
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
_preferences.setString('user', user);
|
_preferences.setString('username', user);
|
||||||
_preferences.setString('password', password);
|
_preferences.setString('password', password);
|
||||||
_preferences.setString('city', city);
|
_preferences.setString('city', city);
|
||||||
_preferences.setString('mode', mode);
|
_preferences.setString('mode', mode);
|
||||||
}
|
}
|
||||||
|
Future readCacheIdUsername(String username) async{
|
||||||
Future readCacheIdUsuario(String idUsuario) async{
|
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
var idUsuario = _preferences.getString('idUsuario');
|
var username = _preferences.getString('username');
|
||||||
return idUsuario;
|
return username;
|
||||||
}
|
|
||||||
Future readCacheUnidade(String idUnidade) async{
|
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
|
||||||
var idUnidade = _preferences.getString('idUnidade');
|
|
||||||
var nomeUnidade = _preferences.getString('nomeUnidade');
|
|
||||||
List list =[
|
|
||||||
idUnidade,
|
|
||||||
nomeUnidade,
|
|
||||||
];
|
|
||||||
return list;
|
|
||||||
}
|
}
|
||||||
Future readCacheModel(String user,String password,String city,String mode) async{
|
Future readCacheModel(String user,String password,String city,String mode) async{
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
String? user = _preferences.getString('user');
|
String? username = _preferences.getString('username');
|
||||||
String? password = _preferences.getString('password');
|
String? password = _preferences.getString('password');
|
||||||
String? city = _preferences.getString('city');
|
String? city = _preferences.getString('city');
|
||||||
String? mode = _preferences.getString('mode');
|
String? mode = _preferences.getString('mode');
|
||||||
@@ -58,19 +71,40 @@ class PrefService{
|
|||||||
];
|
];
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
Future readCacheSync(String area,bool foraArea) async{
|
Future readCacheSync() async{
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
String? area = _preferences.getString('area');
|
int? AREA_ID = _preferences.getInt('idAtbArea');
|
||||||
|
int? AREA_DESCRICAO = _preferences.getInt('area');
|
||||||
|
int? MICROAREA_ID = _preferences.getInt('idAtbMicroarea');
|
||||||
|
int? MICROAREA_DESCRICAO = _preferences.getInt('microarea');
|
||||||
|
int? idEquipe = _preferences.getInt('idEquipe');
|
||||||
|
int? idUnidade = _preferences.getInt('idUnidade');
|
||||||
|
String? ine = _preferences.getString('ine');
|
||||||
|
int? idProfissional = _preferences.getInt('idProfissional');
|
||||||
|
int? ativo = _preferences.getInt('ativo');
|
||||||
bool? foraArea = _preferences.getBool('foraArea');
|
bool? foraArea = _preferences.getBool('foraArea');
|
||||||
List list =[
|
List list =[
|
||||||
area,
|
AREA_ID,
|
||||||
|
AREA_DESCRICAO,
|
||||||
|
MICROAREA_ID,
|
||||||
|
MICROAREA_DESCRICAO,
|
||||||
|
idEquipe,
|
||||||
|
idUnidade,
|
||||||
|
ine,
|
||||||
|
idProfissional,
|
||||||
|
ativo,
|
||||||
foraArea
|
foraArea
|
||||||
];
|
];
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
Future removeCache(String idUsuario) async{
|
Future removeCache() async{
|
||||||
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
_preferences.remove('idUsuario');
|
_preferences.remove('username');
|
||||||
|
}
|
||||||
|
Future removeUnidade() async{
|
||||||
|
SharedPreferences _preferences = await SharedPreferences.getInstance();
|
||||||
|
_preferences.remove('idUnidade');
|
||||||
|
_preferences.remove('nomeUnidade');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,12 +1,19 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
import 'package:rkm/screens/select_service/service_home_screen.dart';
|
import 'package:rkm/screens/select_service/complementary_sheet_screen.dart';
|
||||||
|
import 'package:rkm/screens/select_service/consumption_markers_screen.dart';
|
||||||
|
import 'package:rkm/screens/select_service/eligibility_assessment_screen.dart';
|
||||||
|
import 'package:rkm/screens/select_service/procedures_screen.dart';
|
||||||
|
import 'package:rkm/screens/select_service/service_dental_screen.dart';
|
||||||
|
import 'package:rkm/screens/select_service/atendimento_domiciliar_tela.dart';
|
||||||
|
import 'package:rkm/screens/select_service/service_individual_screen.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
|
import 'package:rkm/widgets/dropdown_button_com_pesquisa.dart';
|
||||||
import 'package:rkm/widgets/switch_with_subtitle.dart';
|
import 'package:rkm/widgets/switch_with_subtitle.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
import 'package:rkm/widgets/title_containers.dart';
|
import 'package:rkm/widgets/title_containers.dart';
|
||||||
import '../screens/select_service/home_visit_screen.dart';
|
import '../screens/select_service/visita_domiciliar_tela.dart';
|
||||||
import 'dropdown_button_default.dart';
|
import 'dropdown_button_default.dart';
|
||||||
import 'input_search_text.dart';
|
import 'input_search_text.dart';
|
||||||
class AlertDialogDefault {
|
class AlertDialogDefault {
|
||||||
@@ -78,29 +85,54 @@ class AlertDialogDefault {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
alertSelect(BuildContext context,String name) {
|
sucess(BuildContext context,String title,String subtitle,String textButtom, var onPressed) {
|
||||||
|
|
||||||
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
|
return showDialog(
|
||||||
|
context: context,
|
||||||
|
builder: (context){
|
||||||
|
return AlertDialog(
|
||||||
|
title: TextDefault(
|
||||||
|
text: title,
|
||||||
|
color: ColorPalette.black54,
|
||||||
|
textAlign: TextAlign.center,
|
||||||
|
fontWeigth: FontWeight.bold,
|
||||||
|
),
|
||||||
|
content: TextDefault(
|
||||||
|
text: subtitle,
|
||||||
|
color: ColorPalette.black54,
|
||||||
|
maxLines: 4,
|
||||||
|
),
|
||||||
|
actions: [
|
||||||
|
ButtonDefault(
|
||||||
|
onPressed: onPressed,
|
||||||
|
title: textButtom,
|
||||||
|
width: width*0.85,
|
||||||
|
textColor: ColorPalette.white,
|
||||||
|
borderColor: ColorPalette.appBar,
|
||||||
|
background: ColorPalette.appBar,
|
||||||
|
)
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
alertSelect(BuildContext context,String name,String username, var dataPatient) {
|
||||||
|
//Cadastro e edição do Cadastro do Cidadão, Cadastro Individual, Cadastro Domiciliar e Visita Domiciliar
|
||||||
List list = [
|
List list = [
|
||||||
'Atendimento Domiciliar',
|
'Atendimento Domiciliar',
|
||||||
'Atendimento Individual',
|
// 'Atendimento Individual',
|
||||||
'Atendimento Odontológico',
|
// 'Atendimento Odontológico',
|
||||||
'Avaliação de Elegibilidade',
|
// 'Avaliação de Elegibilidade',
|
||||||
'Ficha Complementar',
|
// 'Ficha Complementar',
|
||||||
'Marcadores de Consumo',
|
// 'Marcadores de Consumo',
|
||||||
'Procedimentos',
|
// 'Procedimentos',
|
||||||
'Visita domiciliar',
|
'Visita Domiciliar',
|
||||||
];
|
];
|
||||||
|
|
||||||
List routes = [
|
|
||||||
'/service_home',
|
|
||||||
'/service_individual',
|
|
||||||
'/service_dental',
|
|
||||||
'/eligibility_assessment',
|
|
||||||
'/complementary_sheet',
|
|
||||||
'/consumption_markers',
|
|
||||||
'/procedures',
|
|
||||||
'/home_visit',
|
|
||||||
];
|
|
||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
double height = MediaQuery.of(context).size.height;
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
@@ -125,18 +157,51 @@ class AlertDialogDefault {
|
|||||||
|
|
||||||
return ListTile(
|
return ListTile(
|
||||||
onTap: (){
|
onTap: (){
|
||||||
|
Navigator.pop(context);
|
||||||
if(index==0){
|
if(index==0){
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder:(context) => ServiceHomeScreen(name: name,)),
|
MaterialPageRoute(builder:(context) => AtendimentoDomiciliarTela(name: name,username: username,dados: null,)),
|
||||||
|
);
|
||||||
|
}else if(index == 1){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => VisitaDomiciliarTela(name: name,username: username,dados: null,)),
|
||||||
|
);
|
||||||
|
// Navigator.push(
|
||||||
|
// context,
|
||||||
|
// MaterialPageRoute(builder:(context) => ServiceIndividualScreen(username: username,dataPatient: dataPatient,)),
|
||||||
|
// );
|
||||||
|
}else if(index == 2){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => ServiceDentalScreen(username: username,)),
|
||||||
|
);
|
||||||
|
}else if(index == 3){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => EligibilityAssessmentScreen(username: username,)),
|
||||||
|
);
|
||||||
|
}else if(index == 4){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => ComplementarySheetScreen(username: username,)),
|
||||||
|
);
|
||||||
|
}else if(index == 5){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => ConsumptionMarkersScreen(username: username,)),
|
||||||
|
);
|
||||||
|
}else if(index == 6){
|
||||||
|
Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(builder:(context) => ProceduresScreen(username: username,)),
|
||||||
);
|
);
|
||||||
}else if (index==7){
|
}else if (index==7){
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder:(context) => HomeVisitScreen(name: name,)),
|
MaterialPageRoute(builder:(context) => VisitaDomiciliarTela(name: name,username: username,dados: null,)),
|
||||||
);
|
);
|
||||||
}else{
|
|
||||||
Navigator.pushNamed(context, routes[index]);
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
tileColor: rest==0?ColorPalette.white:ColorPalette.appBar,
|
tileColor: rest==0?ColorPalette.white:ColorPalette.appBar,
|
||||||
@@ -428,12 +493,11 @@ class AlertDialogDefault {
|
|||||||
String? selectProfessionals,
|
String? selectProfessionals,
|
||||||
String? selectCBO,
|
String? selectCBO,
|
||||||
String add,
|
String add,
|
||||||
List list,
|
List listProcProfissional,
|
||||||
List listProc,
|
List listProc,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
double height = MediaQuery.of(context).size.height;
|
|
||||||
|
|
||||||
return showDialog(
|
return showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
@@ -461,27 +525,30 @@ class AlertDialogDefault {
|
|||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
TitleContainers(title: subtitle),
|
TitleContainers(title: subtitle),
|
||||||
DropDownButtonDefault(
|
DropDownButtonComPesquisa(
|
||||||
onChanged: (value)=>setState((){
|
onChanged: (value)=>setState((){
|
||||||
selectProfessionals=value;
|
selectProfessionals=value;
|
||||||
}),
|
|
||||||
select: selectProfessionals,
|
|
||||||
title: 'Procedimento',
|
|
||||||
list: list,
|
|
||||||
width: width
|
|
||||||
),
|
|
||||||
ButtonDefault(
|
|
||||||
onPressed:(){
|
|
||||||
listProc.add(selectProfessionals);
|
listProc.add(selectProfessionals);
|
||||||
setState((){});
|
setState((){});
|
||||||
},
|
}),
|
||||||
title: 'Adicionar',
|
select: selectProfessionals,
|
||||||
|
title: '',
|
||||||
|
list: listProcProfissional,
|
||||||
width: width*0.8,
|
width: width*0.8,
|
||||||
textColor: ColorPalette.white,
|
widthContainer: width*0.75,
|
||||||
borderColor:ColorPalette.appBar,
|
),
|
||||||
background: ColorPalette.appBar,
|
// ButtonDefault(
|
||||||
disableColor: ColorPalette.buttonDisable,
|
// onPressed:(){
|
||||||
)
|
// listProc.add(selectProfessionals);
|
||||||
|
// setState((){});
|
||||||
|
// },
|
||||||
|
// title: 'Adicionar',
|
||||||
|
// width: width*0.8,
|
||||||
|
// textColor: ColorPalette.white,
|
||||||
|
// borderColor:ColorPalette.appBar,
|
||||||
|
// background: ColorPalette.appBar,
|
||||||
|
// disableColor: ColorPalette.buttonDisable,
|
||||||
|
// )
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -490,13 +557,14 @@ class AlertDialogDefault {
|
|||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
children: [
|
children: [
|
||||||
TitleContainers(title: 'Procedimentos'),
|
TitleContainers(title: 'Procedimentos'),
|
||||||
list.length!=0
|
listProcProfissional.length!=0
|
||||||
?Container(
|
?Container(
|
||||||
width: width*0.8,
|
width: width*0.8,
|
||||||
height: height*0.4,
|
height: listProc.length*70,
|
||||||
child: ListView.builder(
|
child: ListView.builder(
|
||||||
itemCount: listProc.length,
|
itemCount: listProc.length,
|
||||||
itemBuilder: (context,index) {
|
itemBuilder: (context,index) {
|
||||||
|
print(listProc.length);
|
||||||
return Container(
|
return Container(
|
||||||
width: width * 0.8,
|
width: width * 0.8,
|
||||||
padding: EdgeInsets.all(10),
|
padding: EdgeInsets.all(10),
|
||||||
@@ -515,6 +583,7 @@ class AlertDialogDefault {
|
|||||||
onPressed: () =>
|
onPressed: () =>
|
||||||
setState(() {
|
setState(() {
|
||||||
listProc.removeAt(index);
|
listProc.removeAt(index);
|
||||||
|
setState((){});
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1,12 +1,16 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rkm/config/const_variable.dart';
|
import 'package:rkm/config/const_variable.dart';
|
||||||
|
import 'package:rkm/screens/configurations/clear_data_screen.dart';
|
||||||
|
import 'package:rkm/screens/configurations/import_sigtap_screen.dart';
|
||||||
|
import 'package:rkm/screens/configurations/main_procedures_screen.dart';
|
||||||
|
import 'package:rkm/screens/configurations/sync_data_screen.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
import 'package:rkm/widgets/item_alert_settings.dart';
|
import 'package:rkm/widgets/item_alert_settings.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
class AlertDialogSettings {
|
class AlertDialogSettings {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
alert(BuildContext context) {
|
alert(BuildContext context, String username) {
|
||||||
return showDialog(
|
return showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
builder: (context){
|
builder: (context){
|
||||||
@@ -21,7 +25,7 @@ class AlertDialogSettings {
|
|||||||
ItemAlertSettings(
|
ItemAlertSettings(
|
||||||
onTap: (){
|
onTap: (){
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
Navigator.pushNamed(context, '/import_sigtap');
|
Navigator.push(context,MaterialPageRoute(builder: (context) => ImportSigtapScreen(username: username,)));
|
||||||
},
|
},
|
||||||
title: 'Importar SIGTAP',
|
title: 'Importar SIGTAP',
|
||||||
body: 'Atulizar as informações do SIGTAP no aplicativo\n'
|
body: 'Atulizar as informações do SIGTAP no aplicativo\n'
|
||||||
@@ -31,7 +35,7 @@ class AlertDialogSettings {
|
|||||||
ItemAlertSettings(
|
ItemAlertSettings(
|
||||||
onTap: (){
|
onTap: (){
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
Navigator.pushNamed(context, '/clear_data');
|
Navigator.push(context,MaterialPageRoute(builder:(context) => ClearDataScreen(username: username,)));
|
||||||
},
|
},
|
||||||
title: 'Limpar Dados',
|
title: 'Limpar Dados',
|
||||||
body: 'Apaga todos os dados do Aplicativo.\n'
|
body: 'Apaga todos os dados do Aplicativo.\n'
|
||||||
@@ -43,7 +47,7 @@ class AlertDialogSettings {
|
|||||||
ItemAlertSettings(
|
ItemAlertSettings(
|
||||||
onTap: (){
|
onTap: (){
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
Navigator.pushNamed(context, '/main_procedures');
|
Navigator.push(context,MaterialPageRoute(builder:(context) => MainProceduresScreen(username:username,)));
|
||||||
},
|
},
|
||||||
title: 'Definir Procedimentos Iniciais',
|
title: 'Definir Procedimentos Iniciais',
|
||||||
body: 'Define os Procedimentos iniciais que deverão ser\n'
|
body: 'Define os Procedimentos iniciais que deverão ser\n'
|
||||||
@@ -62,7 +66,7 @@ class AlertDialogSettings {
|
|||||||
ItemAlertSettings(
|
ItemAlertSettings(
|
||||||
onTap: (){
|
onTap: (){
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
Navigator.pushNamed(context, '/sinc_data');
|
Navigator.push(context,MaterialPageRoute(builder:(context) => SyncDataScreen(username: username,)));
|
||||||
},
|
},
|
||||||
title: 'Sincronia de Envio',
|
title: 'Sincronia de Envio',
|
||||||
body: 'Efetua a Sincronia de Envio levando as informações\n'
|
body: 'Efetua a Sincronia de Envio levando as informações\n'
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/config/const_variable.dart';
|
||||||
import 'package:rkm/widgets/alert_dialog_settings.dart';
|
import 'package:rkm/widgets/alert_dialog_settings.dart';
|
||||||
import '../screens/login/login_saved_screen.dart';
|
import '../screens/login/login_saved_screen.dart';
|
||||||
import '../config/color_palette.dart';
|
import '../config/color_palette.dart';
|
||||||
@@ -7,27 +8,24 @@ import 'icon_button_default.dart';
|
|||||||
class AppBarDefault{
|
class AppBarDefault{
|
||||||
|
|
||||||
@override
|
@override
|
||||||
PreferredSize appbar(BuildContext context,String title) {
|
PreferredSize appbar(BuildContext context,String title, String username) {
|
||||||
return PreferredSize(
|
return PreferredSize(
|
||||||
preferredSize: Size.fromHeight(50),
|
preferredSize: Size.fromHeight(50),
|
||||||
child: AppBar(
|
child: AppBar(
|
||||||
title: Text(title),
|
title: Text(title,style: TextStyle(color: Colors.white),),
|
||||||
|
iconTheme: ConstVariable().iconThemeDataDefault,
|
||||||
centerTitle: true,
|
centerTitle: true,
|
||||||
actions: [
|
actions: [
|
||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: Icons.settings,
|
icon: Icons.settings,
|
||||||
color: ColorPalette.white,
|
color: ColorPalette.white,
|
||||||
onPressed: ()=>AlertDialogSettings().alert(context)
|
onPressed: ()=>AlertDialogSettings().alert(context,username)
|
||||||
),
|
),
|
||||||
IconButtonDefault(
|
IconButtonDefault(
|
||||||
icon: Icons.logout,
|
icon: Icons.logout,
|
||||||
color: ColorPalette.white,
|
color: ColorPalette.white,
|
||||||
onPressed: (){
|
onPressed: ()=>Navigator.pushAndRemoveUntil(context,MaterialPageRoute(builder: (context) => LoginSavedScreen(listControl: [])),(Route<dynamic> route) => false)
|
||||||
Navigator.push(
|
),
|
||||||
context,
|
|
||||||
MaterialPageRoute(builder: (context) => LoginSavedScreen(listControl: [])),
|
|
||||||
);
|
|
||||||
}),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -9,19 +9,23 @@ class CheckBoxSubtitle extends StatelessWidget {
|
|||||||
bool checkbox;
|
bool checkbox;
|
||||||
var onChanged;
|
var onChanged;
|
||||||
double fontSize;
|
double fontSize;
|
||||||
|
var ontap;
|
||||||
|
|
||||||
CheckBoxSubtitle({
|
CheckBoxSubtitle({
|
||||||
this.width = double.infinity,
|
this.width = double.infinity,
|
||||||
required this.checkbox,
|
required this.checkbox,
|
||||||
required this.subtitle,
|
required this.subtitle,
|
||||||
required this.onChanged,
|
required this.onChanged,
|
||||||
this.fontSize = 14
|
this.fontSize = 14,
|
||||||
|
this.ontap = null
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
return Container(
|
return GestureDetector(
|
||||||
|
onTap: ontap,
|
||||||
|
child: Container(
|
||||||
width: width,
|
width: width,
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
@@ -31,10 +35,11 @@ class CheckBoxSubtitle extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
Container(
|
Container(
|
||||||
width: width,
|
width: width,
|
||||||
child: TextDefault(text: subtitle,fontSize: fontSize,color: ColorPalette.black54,)
|
child: TextDefault(text: subtitle,fontSize: fontSize,color: ColorPalette.black54,maxLines: 2,)
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,8 @@ class CheckBoxTwoSubtitle extends StatelessWidget {
|
|||||||
bool checkbox2;
|
bool checkbox2;
|
||||||
var onChanged1;
|
var onChanged1;
|
||||||
var onChanged2;
|
var onChanged2;
|
||||||
|
var ontap1;
|
||||||
|
var ontap2;
|
||||||
|
|
||||||
CheckBoxTwoSubtitle({
|
CheckBoxTwoSubtitle({
|
||||||
this.width = double.infinity,
|
this.width = double.infinity,
|
||||||
@@ -20,6 +22,8 @@ class CheckBoxTwoSubtitle extends StatelessWidget {
|
|||||||
required this.subtitle2,
|
required this.subtitle2,
|
||||||
required this.onChanged1,
|
required this.onChanged1,
|
||||||
required this.onChanged2,
|
required this.onChanged2,
|
||||||
|
this.ontap1 = null,
|
||||||
|
this.ontap2 = null,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -33,19 +37,25 @@ class CheckBoxTwoSubtitle extends StatelessWidget {
|
|||||||
value: checkbox1,
|
value: checkbox1,
|
||||||
onChanged: onChanged1
|
onChanged: onChanged1
|
||||||
),
|
),
|
||||||
Container(
|
GestureDetector(
|
||||||
|
onTap: ontap1,
|
||||||
|
child: Container(
|
||||||
width: width/2.5,
|
width: width/2.5,
|
||||||
child: TextDefault(text: subtitle1,fontSize: 14,color: ColorPalette.black54,)
|
child: TextDefault(text: subtitle1,fontSize: 14,color: ColorPalette.black54,)
|
||||||
),
|
),
|
||||||
|
),
|
||||||
Spacer(),
|
Spacer(),
|
||||||
Checkbox(
|
Checkbox(
|
||||||
value: checkbox2,
|
value: checkbox2,
|
||||||
onChanged: onChanged2
|
onChanged: onChanged2
|
||||||
),
|
),
|
||||||
Container(
|
GestureDetector(
|
||||||
|
onTap: ontap2,
|
||||||
|
child: Container(
|
||||||
width: width/3,
|
width: width/3,
|
||||||
child: TextDefault(text: subtitle2,fontSize: 14,color: ColorPalette.black54)
|
child: TextDefault(text: subtitle2,fontSize: 14,color: ColorPalette.black54)
|
||||||
),
|
),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
65
lib/widgets/dropdown_button_cidadao.dart
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/models/equipe_cidadao.dart';
|
||||||
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import '../config/color_palette.dart';
|
||||||
|
import '../config/const_variable.dart';
|
||||||
|
|
||||||
|
class DropDownButtonCidadao extends StatelessWidget {
|
||||||
|
var onChanged;
|
||||||
|
EquipeCidadao? select;
|
||||||
|
String title;
|
||||||
|
double fontSize;
|
||||||
|
List<EquipeCidadao> list;
|
||||||
|
double width;
|
||||||
|
double widthContainer;
|
||||||
|
|
||||||
|
DropDownButtonCidadao({
|
||||||
|
required this.onChanged,
|
||||||
|
required this.select,
|
||||||
|
required this.title,
|
||||||
|
required this.list,
|
||||||
|
required this.width,
|
||||||
|
this.fontSize = 15,
|
||||||
|
this.widthContainer = 300
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
return Column(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: width*0.95,
|
||||||
|
margin: ConstVariable().marginHightInput,
|
||||||
|
color: ColorPalette.white,
|
||||||
|
child: DropdownButtonHideUnderline(
|
||||||
|
child: DropdownButton(
|
||||||
|
hint: Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: TextDefault(text: title,fontSize: ConstVariable().fontSizeInput,textAlign: TextAlign.end,color: Colors.black,),
|
||||||
|
),
|
||||||
|
value: select,
|
||||||
|
items: list.map((value) => DropdownMenuItem<EquipeCidadao>(
|
||||||
|
value: value,
|
||||||
|
child: Container(
|
||||||
|
width: widthContainer,
|
||||||
|
child: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: TextDefault(
|
||||||
|
text: value.DESCRICAO,
|
||||||
|
maxLines: 2,
|
||||||
|
fontSize: fontSize,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
).toList(),
|
||||||
|
onChanged:onChanged
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
70
lib/widgets/dropdown_button_com_pesquisa.dart
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_typeahead/flutter_typeahead.dart';
|
||||||
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import '../config/color_palette.dart';
|
||||||
|
import '../config/const_variable.dart';
|
||||||
|
import 'input_search_text.dart';
|
||||||
|
|
||||||
|
class DropDownButtonComPesquisa extends StatelessWidget {
|
||||||
|
var onChanged;
|
||||||
|
String? select;
|
||||||
|
String title;
|
||||||
|
double fontSize;
|
||||||
|
List list;
|
||||||
|
double width;
|
||||||
|
double heightDinamic;
|
||||||
|
double widthContainer;
|
||||||
|
|
||||||
|
DropDownButtonComPesquisa({
|
||||||
|
required this.onChanged,
|
||||||
|
required this.select,
|
||||||
|
required this.title,
|
||||||
|
required this.list,
|
||||||
|
required this.width,
|
||||||
|
this.heightDinamic = 0.2,
|
||||||
|
this.fontSize = 15,
|
||||||
|
this.widthContainer = 300,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
|
return
|
||||||
|
Container(
|
||||||
|
width: width,
|
||||||
|
height: height*heightDinamic,
|
||||||
|
margin: ConstVariable().marginHightInput,
|
||||||
|
color: ColorPalette.white,
|
||||||
|
child: ListView(
|
||||||
|
shrinkWrap: true,
|
||||||
|
children: [
|
||||||
|
TypeAheadField(
|
||||||
|
controller: TextEditingController(),
|
||||||
|
hideOnEmpty: false,
|
||||||
|
suggestionsCallback: (pattern) {
|
||||||
|
if (list != null) {
|
||||||
|
// Use toList() para converter o resultado do where em uma lista
|
||||||
|
return list.where((value) => value.toLowerCase().contains(pattern.toLowerCase())).toList();
|
||||||
|
} else {
|
||||||
|
return Future.value([]); // Retorna uma lista vazia como um Future
|
||||||
|
}
|
||||||
|
},
|
||||||
|
emptyBuilder: (context) {
|
||||||
|
return ListTile(
|
||||||
|
title: Text('Nenhum resultado encontrado'),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
itemBuilder: (context, dynamic suggestion) {
|
||||||
|
return ListTile(
|
||||||
|
title: Text(suggestion),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
onSelected: onChanged,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
78
lib/widgets/dropdown_button_com_pesquisa_paises.dart
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_typeahead/flutter_typeahead.dart';
|
||||||
|
import 'package:rkm/models/pais_modelo.dart';
|
||||||
|
import '../config/color_palette.dart';
|
||||||
|
import '../config/const_variable.dart';
|
||||||
|
|
||||||
|
class DropDownButtonComPesquisaPaises extends StatelessWidget {
|
||||||
|
var onChanged;
|
||||||
|
PaisModelo? select;
|
||||||
|
String title;
|
||||||
|
double fontSize;
|
||||||
|
List<PaisModelo> list;
|
||||||
|
double width;
|
||||||
|
double heightDinamic;
|
||||||
|
double widthContainer;
|
||||||
|
|
||||||
|
DropDownButtonComPesquisaPaises({
|
||||||
|
required this.onChanged,
|
||||||
|
required this.select,
|
||||||
|
required this.title,
|
||||||
|
required this.list,
|
||||||
|
required this.width,
|
||||||
|
this.heightDinamic = 0.2,
|
||||||
|
this.fontSize = 15,
|
||||||
|
this.widthContainer = 300,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
|
return
|
||||||
|
Container(
|
||||||
|
width: width,
|
||||||
|
height: height*heightDinamic,
|
||||||
|
margin: ConstVariable().marginHightInput,
|
||||||
|
color: ColorPalette.white,
|
||||||
|
child: ListView(
|
||||||
|
shrinkWrap: true,
|
||||||
|
children: [
|
||||||
|
TypeAheadField(
|
||||||
|
controller: TextEditingController(),
|
||||||
|
suggestionsCallback: (pattern) {
|
||||||
|
if (list != null) {
|
||||||
|
return list.where((value) => value.PAIS.toLowerCase().contains(pattern.toLowerCase())).toList();
|
||||||
|
} else {
|
||||||
|
return Future.value([]);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
emptyBuilder: (context) {
|
||||||
|
return ListTile(
|
||||||
|
title: Text('Nenhum resultado encontrado'),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
itemBuilder: (context, suggestion) {
|
||||||
|
// Aqui, o tipo de 'suggestion' é dinâmico, pois a lista retornada
|
||||||
|
// por suggestionsCallback pode conter diferentes tipos de objetos.
|
||||||
|
// Você pode usar a notação de tipo dinâmico ou verificar o tipo do
|
||||||
|
// objeto e fazer o cast para 'PaisModelo' antes de usar.
|
||||||
|
if (suggestion is PaisModelo) {
|
||||||
|
// Faz o cast para 'PaisModelo' se necessário
|
||||||
|
final paisModelo = suggestion as PaisModelo;
|
||||||
|
return ListTile(
|
||||||
|
title: Text(paisModelo.PAIS),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
// Se o objeto não for do tipo 'PaisModelo', retorne um widget vazio
|
||||||
|
return SizedBox.shrink();
|
||||||
|
},
|
||||||
|
onSelected: onChanged,
|
||||||
|
)
|
||||||
|
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
65
lib/widgets/dropdown_equipe.dart
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import '../config/color_palette.dart';
|
||||||
|
import '../config/const_variable.dart';
|
||||||
|
import '../models/equipe_modelo.dart';
|
||||||
|
|
||||||
|
class DropDownEquipe extends StatelessWidget {
|
||||||
|
var onChanged;
|
||||||
|
EquipeModelo? select;
|
||||||
|
String title;
|
||||||
|
double fontSize;
|
||||||
|
List<EquipeModelo> list;
|
||||||
|
double width;
|
||||||
|
double widthContainer;
|
||||||
|
|
||||||
|
DropDownEquipe({
|
||||||
|
required this.onChanged,
|
||||||
|
required this.select,
|
||||||
|
required this.title,
|
||||||
|
required this.list,
|
||||||
|
required this.width,
|
||||||
|
this.fontSize = 15,
|
||||||
|
this.widthContainer = 300
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
return Column(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: width*0.95,
|
||||||
|
margin: ConstVariable().marginHightInput,
|
||||||
|
color: ColorPalette.white,
|
||||||
|
child: DropdownButtonHideUnderline(
|
||||||
|
child: DropdownButton(
|
||||||
|
hint: Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: TextDefault(text: title,fontSize: ConstVariable().fontSizeInput,textAlign: TextAlign.end,color: Colors.black,),
|
||||||
|
),
|
||||||
|
value: select,
|
||||||
|
items: list.map((value) => DropdownMenuItem<EquipeModelo>(
|
||||||
|
value: value,
|
||||||
|
child: Container(
|
||||||
|
width: widthContainer,
|
||||||
|
child: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: TextDefault(
|
||||||
|
text: 'INE: ${value.INE} / Área: ${value.AREA} ${value.MICROAREA==null?'':'- Microárea : ${value.MICROAREA}'}',
|
||||||
|
maxLines: 2,
|
||||||
|
fontSize: fontSize,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
).toList(),
|
||||||
|
onChanged:onChanged
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
87
lib/widgets/dropdown_etnia_indigena.dart
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import '../config/color_palette.dart';
|
||||||
|
import '../config/const_variable.dart';
|
||||||
|
import '../models/drop_down_data_string_model.dart';
|
||||||
|
|
||||||
|
class DropDownEtniaIndigena extends StatelessWidget {
|
||||||
|
var onChanged;
|
||||||
|
DropDownDataStringModel? select;
|
||||||
|
String title;
|
||||||
|
double fontSize;
|
||||||
|
List<DropDownDataStringModel> list;
|
||||||
|
double width;
|
||||||
|
double widthContainer;
|
||||||
|
|
||||||
|
DropDownEtniaIndigena({
|
||||||
|
required this.onChanged,
|
||||||
|
required this.select,
|
||||||
|
required this.title,
|
||||||
|
required this.list,
|
||||||
|
required this.width,
|
||||||
|
this.fontSize = 15,
|
||||||
|
this.widthContainer = 300
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
return Column(
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: width,
|
||||||
|
margin: EdgeInsets.symmetric(horizontal: 5),
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 2),
|
||||||
|
child: TextDefault(
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
text: title,
|
||||||
|
color: ColorPalette.black54,
|
||||||
|
fontSize: 12,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
width: width*0.95,
|
||||||
|
alignment: Alignment.centerLeft,
|
||||||
|
margin: EdgeInsets.symmetric(horizontal: 10),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
borderRadius: BorderRadius.circular(5),
|
||||||
|
border: Border.all(color: Colors.white)
|
||||||
|
),
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 5),
|
||||||
|
child: DropdownButtonHideUnderline(
|
||||||
|
child: DropdownButton(
|
||||||
|
dropdownColor: Colors.white,
|
||||||
|
hint: Padding(
|
||||||
|
padding: const EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: TextDefault(text: '-SELECIONE-',fontSize: ConstVariable().fontSizeInput,textAlign: TextAlign.end,color: Colors.black,),
|
||||||
|
),
|
||||||
|
value: select,
|
||||||
|
items: list.map((value) => DropdownMenuItem<DropDownDataStringModel>(
|
||||||
|
value: value,
|
||||||
|
child: Container(
|
||||||
|
alignment: Alignment.centerLeft,
|
||||||
|
color: Colors.white,
|
||||||
|
height: 50,
|
||||||
|
width: width*0.88,
|
||||||
|
child: Padding(
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 0.0),
|
||||||
|
child: TextDefault(
|
||||||
|
text: value.title,
|
||||||
|
maxLines: 2,
|
||||||
|
fontSize: fontSize,
|
||||||
|
color: Colors.black,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
).toList(),
|
||||||
|
onChanged:onChanged
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
81
lib/widgets/dropdown_with_subtitle_cidadao.dart
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/models/equipe_cidadao.dart';
|
||||||
|
import 'package:rkm/widgets/dropdown_button_cidadao.dart';
|
||||||
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
|
import '../config/color_palette.dart';
|
||||||
|
import 'dropdown_button_default.dart';
|
||||||
|
|
||||||
|
class DropdownWithSubtitleCidadao extends StatelessWidget {
|
||||||
|
String subtitle;
|
||||||
|
String hintDropdown;
|
||||||
|
EquipeCidadao? select;
|
||||||
|
double widthSubtitle;
|
||||||
|
double widthDropdown;
|
||||||
|
double widthContainerDropdown;
|
||||||
|
List<EquipeCidadao> list;
|
||||||
|
var onChanged;
|
||||||
|
var onTapDelete;
|
||||||
|
bool showDelete;
|
||||||
|
Color colorBorder;
|
||||||
|
|
||||||
|
DropdownWithSubtitleCidadao({
|
||||||
|
required this.subtitle,
|
||||||
|
required this.select,
|
||||||
|
required this.widthDropdown,
|
||||||
|
required this.widthContainerDropdown,
|
||||||
|
required this.widthSubtitle,
|
||||||
|
required this.hintDropdown,
|
||||||
|
required this.onChanged,
|
||||||
|
required this.list,
|
||||||
|
this.colorBorder = ColorPalette.white,
|
||||||
|
this.onTapDelete = null,
|
||||||
|
this.showDelete = false
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Container(
|
||||||
|
margin: EdgeInsets.symmetric(horizontal: 10),
|
||||||
|
padding: const EdgeInsets.symmetric(vertical: 5.0),
|
||||||
|
child: Column(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
width: widthDropdown,
|
||||||
|
child: TextDefault(
|
||||||
|
textAlign: TextAlign.start,
|
||||||
|
text: subtitle,
|
||||||
|
color: ColorPalette.black54,
|
||||||
|
fontSize: 12,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(5),
|
||||||
|
border: Border.all(color: colorBorder)
|
||||||
|
),
|
||||||
|
margin: EdgeInsets.symmetric(horizontal: 5),
|
||||||
|
padding: EdgeInsets.symmetric(horizontal: 2),
|
||||||
|
child: Row(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
|
children: [
|
||||||
|
DropDownButtonCidadao(
|
||||||
|
title: hintDropdown,
|
||||||
|
fontSize: 14,
|
||||||
|
width: widthDropdown,
|
||||||
|
widthContainer: widthContainerDropdown,
|
||||||
|
select: select,
|
||||||
|
list: list,
|
||||||
|
onChanged: onChanged,
|
||||||
|
),
|
||||||
|
select!=null &&showDelete?GestureDetector(
|
||||||
|
onTap: onTapDelete,
|
||||||
|
child: Icon(Icons.delete,color: ColorPalette.appBar,)
|
||||||
|
):Container(width: 23,)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -40,9 +40,9 @@ class InputSearchText extends StatelessWidget {
|
|||||||
fillColor: ColorPalette.appBar,
|
fillColor: ColorPalette.appBar,
|
||||||
prefixIcon: Icon(Icons.search),
|
prefixIcon: Icon(Icons.search),
|
||||||
border: border?OutlineInputBorder():null,
|
border: border?OutlineInputBorder():null,
|
||||||
// hintText: this.hint,
|
hintText: this.hint,
|
||||||
hintStyle: TextStyle(
|
hintStyle: TextStyle(
|
||||||
color: Colors.black,
|
color: Colors.black87,
|
||||||
fontSize: this.fontSizeHint,
|
fontSize: this.fontSizeHint,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:rkm/config/color_palette.dart';
|
import 'package:rkm/config/color_palette.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
|
||||||
import '../controllers/format_txt.dart';
|
import '../controllers/format_txt.dart';
|
||||||
|
|
||||||
class InputText extends StatelessWidget {
|
class InputText extends StatelessWidget {
|
||||||
@@ -15,6 +14,8 @@ class InputText extends StatelessWidget {
|
|||||||
int maxLines;
|
int maxLines;
|
||||||
Color colorBorder;
|
Color colorBorder;
|
||||||
var onChanged;
|
var onChanged;
|
||||||
|
int maxLength;
|
||||||
|
List<TextInputFormatter> inputFormatters;
|
||||||
|
|
||||||
InputText({
|
InputText({
|
||||||
required this.controller,
|
required this.controller,
|
||||||
@@ -27,21 +28,22 @@ class InputText extends StatelessWidget {
|
|||||||
this.maxLines = 1,
|
this.maxLines = 1,
|
||||||
this.colorBorder = ColorPalette.black54,
|
this.colorBorder = ColorPalette.black54,
|
||||||
this.onChanged = null,
|
this.onChanged = null,
|
||||||
});
|
this.maxLength = 200,
|
||||||
|
List<TextInputFormatter>? inputFormatters, // Alteração aqui
|
||||||
|
}) : inputFormatters = inputFormatters ?? [FormatText()];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Container(
|
return Container(
|
||||||
color: enabled?ColorPalette.white:ColorPalette.disable,
|
color: enabled?Colors.grey[200]:ColorPalette.disable,
|
||||||
width: width,
|
width: width,
|
||||||
margin: EdgeInsets.only(bottom: 5),
|
margin: EdgeInsets.only(bottom: 5),
|
||||||
child: TextFormField(
|
child: TextFormField(
|
||||||
keyboardType: textInputType,
|
keyboardType: textInputType,
|
||||||
maxLines: maxLines,
|
maxLines: maxLines,
|
||||||
onChanged: onChanged,
|
onChanged: onChanged,
|
||||||
inputFormatters: [
|
maxLength: maxLength,
|
||||||
FormatText()
|
inputFormatters: inputFormatters,
|
||||||
],
|
|
||||||
obscureText: this.obscure,
|
obscureText: this.obscure,
|
||||||
controller: this.controller,
|
controller: this.controller,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/services.dart';
|
||||||
import 'package:rkm/widgets/title_input.dart';
|
import 'package:rkm/widgets/title_input.dart';
|
||||||
import '../config/color_palette.dart';
|
import '../config/color_palette.dart';
|
||||||
|
import '../controllers/format_txt.dart';
|
||||||
import 'error_default.dart';
|
import 'error_default.dart';
|
||||||
import 'input_text.dart';
|
import 'input_text.dart';
|
||||||
|
|
||||||
@@ -12,7 +14,7 @@ class InputWithSubtitle extends StatelessWidget {
|
|||||||
double widthSubtitle;
|
double widthSubtitle;
|
||||||
double widthInput;
|
double widthInput;
|
||||||
double widthError;
|
double widthError;
|
||||||
var controller;
|
TextEditingController controller;
|
||||||
var onChanged;
|
var onChanged;
|
||||||
bool enabled;
|
bool enabled;
|
||||||
bool mandatory;
|
bool mandatory;
|
||||||
@@ -20,6 +22,8 @@ class InputWithSubtitle extends StatelessWidget {
|
|||||||
int maxLines;
|
int maxLines;
|
||||||
Color colorBorder;
|
Color colorBorder;
|
||||||
String typeInput;
|
String typeInput;
|
||||||
|
int maxLength;
|
||||||
|
List<TextInputFormatter> inputFormatters;
|
||||||
|
|
||||||
InputWithSubtitle({
|
InputWithSubtitle({
|
||||||
required this.subtitle,
|
required this.subtitle,
|
||||||
@@ -36,24 +40,19 @@ class InputWithSubtitle extends StatelessWidget {
|
|||||||
this.maxLines = 1,
|
this.maxLines = 1,
|
||||||
this.colorBorder = ColorPalette.white,
|
this.colorBorder = ColorPalette.white,
|
||||||
required this.onChanged,
|
required this.onChanged,
|
||||||
this.widthError = 0.7
|
this.widthError = 0.7,
|
||||||
});
|
this.maxLength = 200,
|
||||||
|
List<TextInputFormatter>? inputFormatters, // Alteração aqui
|
||||||
|
}) : inputFormatters = inputFormatters ?? [FormatText()];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
List splited = controller.text.trim().split(' ');
|
||||||
|
|
||||||
return Column(
|
return Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
// Container(
|
|
||||||
// width: widthSubtitle,
|
|
||||||
// padding: const EdgeInsets.symmetric(horizontal: 8.0,vertical: 3),
|
|
||||||
// child: TextDefault(
|
|
||||||
// text: subtitle,
|
|
||||||
// color: ColorPalette.black54,
|
|
||||||
// fontSize: 18,
|
|
||||||
// fontWeigth: FontWeight.bold,
|
|
||||||
// ),
|
|
||||||
// ),
|
|
||||||
TitleInput(title:labelInput),
|
TitleInput(title:labelInput),
|
||||||
InputText(
|
InputText(
|
||||||
controller: controller,
|
controller: controller,
|
||||||
@@ -64,8 +63,10 @@ class InputWithSubtitle extends StatelessWidget {
|
|||||||
maxLines:maxLines,
|
maxLines:maxLines,
|
||||||
colorBorder: colorBorder,
|
colorBorder: colorBorder,
|
||||||
onChanged: onChanged,
|
onChanged: onChanged,
|
||||||
|
maxLength: maxLength,
|
||||||
|
inputFormatters: inputFormatters,
|
||||||
),
|
),
|
||||||
typeInput=='normal'&& controller.text=='' &&(enabled&&mandatory)?ErrorDefault(widthDefault: widthError,error: errorInput,):Container(),
|
typeInput=='normal'&&(enabled&&mandatory) && (labelInput=='Nome' && splited.length<=1) ?ErrorDefault(widthDefault: widthError,error: errorInput,):Container(),
|
||||||
typeInput!='normal'&&(enabled&&mandatory)&& errorInput!=''?ErrorDefault(widthDefault: widthError,error: errorInput,):Container(),
|
typeInput!='normal'&&(enabled&&mandatory)&& errorInput!=''?ErrorDefault(widthDefault: widthError,error: errorInput,):Container(),
|
||||||
Divider(color: ColorPalette.black54,height: 5,endIndent: 10,)
|
Divider(color: ColorPalette.black54,height: 5,endIndent: 10,)
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ class ItemCitizen extends StatelessWidget {
|
|||||||
String numberCNS;
|
String numberCNS;
|
||||||
String numberMedicalRecord;
|
String numberMedicalRecord;
|
||||||
var onTap;
|
var onTap;
|
||||||
|
String username;
|
||||||
|
var dataPatient;
|
||||||
|
|
||||||
ItemCitizen({
|
ItemCitizen({
|
||||||
required this.name,
|
required this.name,
|
||||||
@@ -21,6 +23,8 @@ class ItemCitizen extends StatelessWidget {
|
|||||||
required this.numberCNS,
|
required this.numberCNS,
|
||||||
required this.numberMedicalRecord,
|
required this.numberMedicalRecord,
|
||||||
required this.onTap,
|
required this.onTap,
|
||||||
|
required this.username,
|
||||||
|
required this.dataPatient
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -35,7 +39,7 @@ class ItemCitizen extends StatelessWidget {
|
|||||||
subtitle: TextDefault(text: '$numberCNS - $numberMedicalRecord - $date - $mother',fontSize: 13,color: Colors.black54),
|
subtitle: TextDefault(text: '$numberCNS - $numberMedicalRecord - $date - $mother',fontSize: 13,color: Colors.black54),
|
||||||
trailing: IconButton(
|
trailing: IconButton(
|
||||||
icon: Icon(LineIcons.clipboard,size: 35,),
|
icon: Icon(LineIcons.clipboard,size: 35,),
|
||||||
onPressed: ()=>AlertDialogDefault().alertSelect(context,name),
|
onPressed: ()=>AlertDialogDefault().alertSelect(context,name,username,dataPatient),
|
||||||
),
|
),
|
||||||
onTap: onTap,
|
onTap: onTap,
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:rkm/screens/home_screen.dart';
|
||||||
import 'package:rkm/widgets/text_default.dart';
|
import 'package:rkm/widgets/text_default.dart';
|
||||||
import '../config/color_palette.dart';
|
import '../config/color_palette.dart';
|
||||||
import 'button_default.dart';
|
import 'button_default.dart';
|
||||||
|
|
||||||
class OnBackButton{
|
class OnBackButton{
|
||||||
onBackButton(context)async {
|
onBackButton(context,String username)async {
|
||||||
await showDialog(
|
await showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
builder: (context){
|
builder: (context){
|
||||||
@@ -13,7 +14,7 @@ class OnBackButton{
|
|||||||
content: TextDefault(text: 'Deseja sair e descartar as alterações?',color: ColorPalette.black54,),
|
content: TextDefault(text: 'Deseja sair e descartar as alterações?',color: ColorPalette.black54,),
|
||||||
actions: [
|
actions: [
|
||||||
ButtonDefault(
|
ButtonDefault(
|
||||||
onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/home', (route) => false),
|
onPressed: ()=>Navigator.pushAndRemoveUntil(context,MaterialPageRoute(builder:(context)=> HomeScreen(username: username,)), (route) => false),
|
||||||
title: 'Sim',
|
title: 'Sim',
|
||||||
background: ColorPalette.appBar,
|
background: ColorPalette.appBar,
|
||||||
borderColor: ColorPalette.appBar,
|
borderColor: ColorPalette.appBar,
|
||||||
|
|||||||
32
lib/widgets/screen_dev.dart
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import '../config/const_variable.dart';
|
||||||
|
|
||||||
|
class ScreenDev extends StatefulWidget {
|
||||||
|
const ScreenDev({super.key});
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<ScreenDev> createState() => _ScreenDevState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _ScreenDevState extends State<ScreenDev> {
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
double height = MediaQuery.of(context).size.height;
|
||||||
|
|
||||||
|
return Container(
|
||||||
|
alignment: Alignment.center,
|
||||||
|
width: width,
|
||||||
|
height: height,
|
||||||
|
decoration: ConstVariable().backgroundGradient,
|
||||||
|
child: Column(
|
||||||
|
mainAxisSize: MainAxisSize.min,
|
||||||
|
children: [
|
||||||
|
Image.asset('assets/images/logo.PNG',width: width*0.4),
|
||||||
|
Text('Tela em desenvolvimento...')
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -9,11 +9,13 @@ class SubtitleAppbarCitizen extends StatelessWidget {
|
|||||||
int title;
|
int title;
|
||||||
bool edit;
|
bool edit;
|
||||||
List listData;
|
List listData;
|
||||||
|
String username;
|
||||||
|
|
||||||
SubtitleAppbarCitizen({
|
SubtitleAppbarCitizen({
|
||||||
required this.title,
|
required this.title,
|
||||||
this.edit = false,
|
this.edit = false,
|
||||||
required this.listData
|
required this.listData,
|
||||||
|
required this.username
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -31,7 +33,7 @@ class SubtitleAppbarCitizen extends StatelessWidget {
|
|||||||
TextButton.icon(
|
TextButton.icon(
|
||||||
onPressed:edit? ()=> Navigator.push(
|
onPressed:edit? ()=> Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => RegisterCitizenScreen(listData: this.listData,)),
|
MaterialPageRoute(builder: (context) => RegisterCitizenScreen(listData: this.listData,username: this.username,)),
|
||||||
):null,
|
):null,
|
||||||
icon: Icon(Icons.person,color: title==1?Colors.black:ColorPalette.gray,),
|
icon: Icon(Icons.person,color: title==1?Colors.black:ColorPalette.gray,),
|
||||||
label: TextDefault(text: 'Cadastro Cidadão',fontSize: 14,color: title==1?Colors.black:ColorPalette.gray,)
|
label: TextDefault(text: 'Cadastro Cidadão',fontSize: 14,color: title==1?Colors.black:ColorPalette.gray,)
|
||||||
@@ -39,7 +41,7 @@ class SubtitleAppbarCitizen extends StatelessWidget {
|
|||||||
TextButton.icon(
|
TextButton.icon(
|
||||||
onPressed:edit? ()=> Navigator.push(
|
onPressed:edit? ()=> Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => RegisterIndividualScreen(listData: this.listData,)),
|
MaterialPageRoute(builder: (context) => RegisterIndividualScreen(listData: this.listData,username: this.username)),
|
||||||
):null,
|
):null,
|
||||||
icon: Icon(Icons.assignment_outlined,color: title==2?Colors.black:ColorPalette.gray,),
|
icon: Icon(Icons.assignment_outlined,color: title==2?Colors.black:ColorPalette.gray,),
|
||||||
label: TextDefault(text: 'Cadastro Individual',fontSize: 14,color: title==2?Colors.black:ColorPalette.gray,)
|
label: TextDefault(text: 'Cadastro Individual',fontSize: 14,color: title==2?Colors.black:ColorPalette.gray,)
|
||||||
@@ -47,7 +49,7 @@ class SubtitleAppbarCitizen extends StatelessWidget {
|
|||||||
TextButton.icon(
|
TextButton.icon(
|
||||||
onPressed:edit? ()=> Navigator.push(
|
onPressed:edit? ()=> Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(builder: (context) => RegisterHomeScreen(listData: this.listData,)),
|
MaterialPageRoute(builder: (context) => RegisterHomeScreen(listData: this.listData,username: this.username)),
|
||||||
):null,
|
):null,
|
||||||
icon: Icon(Icons.home,color: title==3?Colors.black:ColorPalette.gray,),
|
icon: Icon(Icons.home,color: title==3?Colors.black:ColorPalette.gray,),
|
||||||
label: TextDefault(text: 'Cadastro Domiciliar',fontSize: 14,color: title==3?Colors.black:ColorPalette.gray,)
|
label: TextDefault(text: 'Cadastro Domiciliar',fontSize: 14,color: title==3?Colors.black:ColorPalette.gray,)
|
||||||
|
|||||||