Protótipo Vilacorp

This commit is contained in:
2021-09-15 09:18:36 -03:00
parent c995325ba7
commit 001ee87e87
58 changed files with 502 additions and 437 deletions
+23 -21
View File
@@ -1,14 +1,14 @@
import 'dart:io' as io;
//import 'package:advance_pdf_viewer/advance_pdf_viewer.dart';
import 'package:decpisos/funcoes_gerais.dart';
import 'package:vilacorp/funcoes_gerais.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:path_provider/path_provider.dart';
import 'package:share/share.dart';
class PDFViewerScreenController extends GetxController{
class PDFViewerScreenController extends GetxController {
var loading = true.obs;
var loadPDF = false.obs;
var visibleRefresh = false.obs;
@@ -29,7 +29,7 @@ class PDFViewerScreenController extends GetxController{
// this.doc = await PDFDocument.fromFile(file);
// //this.doc = await PDFDocument.fromFile(file);
// //this.visibleRefresh.value = true;
// }
// }
// else{
// if(await FuncoesGerais.checkInternetConnection() == false){
// this.error.value = true;
@@ -37,10 +37,10 @@ class PDFViewerScreenController extends GetxController{
// else{
// this.doc = await PDFDocument.fromURL(FuncoesGerais.urlPDF);
// }
// }
if(file == null || await file.exists() == false){
// }
if (file == null || await file.exists() == false) {
this.error.value = true;
}
@@ -63,13 +63,13 @@ class PDFViewerScreenController extends GetxController{
this.loadPDF.value = true;
var file = await this._createFileOfPdfUrl();
try {
Share.shareFiles([file!.path], text: 'DecCard').then((value) => this.loadPDF.value = false);
Share.shareFiles([file!.path], text: 'Vilacorp card')
.then((value) => this.loadPDF.value = false);
} catch (e) {
this.loadPDF.value = false;
Get.rawSnackbar(message: 'Não foi possível compartilhar o PDF');
}
}
}
Future<io.File?> _createFileOfPdfUrl() async {
final url = FuncoesGerais.urlPDF;
@@ -78,24 +78,24 @@ class PDFViewerScreenController extends GetxController{
final filename = url.substring(url.lastIndexOf("/") + 1);
String dir = (await getApplicationDocumentsDirectory()).path;
file = io.File('$dir/$filename');
if(!await file.exists()){
if(await FuncoesGerais.checkInternetConnection()){
if (!await file.exists()) {
if (await FuncoesGerais.checkInternetConnection()) {
var request = await io.HttpClient().getUrl(Uri.parse(url));
var response = await request.close();
var bytes = await consolidateHttpClientResponseBytes(response);
await file.writeAsBytes(bytes);
}
else{
} else {
file = null;
}
}
}
this.filePDF = file;
if(this.filePDF != null) this.visibleRefresh.value = await this.filePDF!.exists();
if (this.filePDF != null)
this.visibleRefresh.value = await this.filePDF!.exists();
return file;
}
}
Widget buildError(){
Widget buildError() {
return Container(
width: double.maxFinite,
child: Column(
@@ -103,11 +103,13 @@ class PDFViewerScreenController extends GetxController{
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text('Não foi possível carregar o PDF'),
SizedBox(height: 10.0,),
ElevatedButton(onPressed: this.refreshPDF,child: Text('Atualizar'))
SizedBox(
height: 10.0,
),
ElevatedButton(onPressed: this.refreshPDF, child: Text('Atualizar'))
//RaisedButton(onPressed: this.refreshPDF,child: Text('Atualizar'),)
],
),
);
}
}
}