Merge branch 'flutter_beacon' of https://bitbucket.org/FransoletThomas/mymuseum-visitapp into flutter_beacon

This commit is contained in:
Kiwix DevTeam 2023-02-20 16:15:57 +01:00
commit ab7f476088
4 changed files with 13 additions and 5 deletions

View File

@ -143,7 +143,7 @@ class DatabaseHelper {
var test = await DatabaseHelper.instance.queryWithColumnId(type, info[columnId].toString()); var test = await DatabaseHelper.instance.queryWithColumnId(type, info[columnId].toString());
if((type == DatabaseTableType.main && test != null) || (type != DatabaseTableType.main && test.isNotEmpty)) { //test!.where((t) => info[columnId] == t.id).isNotEmpty if((type == DatabaseTableType.main && test.isNotEmpty) || (type != DatabaseTableType.main && test.isNotEmpty)) { //test!.where((t) => info[columnId] == t.id).isNotEmpty
if(type != DatabaseTableType.main) { if(type != DatabaseTableType.main) {
//print("UPDATE $type - length before ${test.length}"); //print("UPDATE $type - length before ${test.length}");
print("UPDATE $type"); print("UPDATE $type");

View File

@ -2,6 +2,7 @@ import 'package:manager_api/api.dart';
class BeaconSection { class BeaconSection {
int? minorBeaconId; int? minorBeaconId;
int? orderInConfig;
String? configurationId; String? configurationId;
String? sectionId; String? sectionId;
/*int? rssi; /*int? rssi;
@ -9,11 +10,12 @@ class BeaconSection {
String? proximityUUID;*/ String? proximityUUID;*/
bool? found = false; bool? found = false;
BeaconSection({this.minorBeaconId, this.configurationId, this.sectionId, this.found}); BeaconSection({this.minorBeaconId, this.orderInConfig, this.configurationId, this.sectionId, this.found});
Map<String, dynamic> toMap() { Map<String, dynamic> toMap() {
return { return {
'minorBeaconId': minorBeaconId, 'minorBeaconId': minorBeaconId,
'orderInConfig': orderInConfig,
'configurationId': configurationId, 'configurationId': configurationId,
'sectionId': sectionId, 'sectionId': sectionId,
/*'rssi': rssi, /*'rssi': rssi,
@ -26,6 +28,7 @@ class BeaconSection {
factory BeaconSection.fromJson(Map<String, dynamic> json) { factory BeaconSection.fromJson(Map<String, dynamic> json) {
return BeaconSection( return BeaconSection(
minorBeaconId: json['minorBeaconId'] as int, minorBeaconId: json['minorBeaconId'] as int,
orderInConfig: json['orderInConfig'] as int,
configurationId: json['configurationId'] as String, configurationId: json['configurationId'] as String,
sectionId: json['sectionId'] as String, sectionId: json['sectionId'] as String,
/*rssi: json['rssi'] as int, /*rssi: json['rssi'] as int,
@ -37,6 +40,6 @@ class BeaconSection {
@override @override
String toString() { String toString() {
return 'BeaconSection{minorBeaconId: $minorBeaconId, sectionId: $sectionId, configurationId: $configurationId, found: $found}'; return 'BeaconSection{minorBeaconId: $minorBeaconId, orderInConfig: $orderInConfig, sectionId: $sectionId, configurationId: $configurationId, found: $found}';
} }
} }

View File

@ -136,7 +136,7 @@ class _HomePageState extends State<HomePage> with WidgetsBindingObserver {
if(visitAppContext.beaconSections == null) { if(visitAppContext.beaconSections == null) {
List<SectionDTO>? sections = await ApiService.getAllBeacons(client, visitAppContext.instanceId!); List<SectionDTO>? sections = await ApiService.getAllBeacons(client, visitAppContext.instanceId!);
if(sections != null && sections.isNotEmpty) { if(sections != null && sections.isNotEmpty) {
List<BeaconSection> beaconSections = sections.map((e) => BeaconSection(minorBeaconId: e.beaconId, configurationId: e.configurationId, sectionId: e.id)).toList(); List<BeaconSection> beaconSections = sections.map((e) => BeaconSection(minorBeaconId: e.beaconId, orderInConfig: e.order, configurationId: e.configurationId, sectionId: e.id)).toList();
visitAppContext.beaconSections = beaconSections; visitAppContext.beaconSections = beaconSections;
print("Got some Beacons for you"); print("Got some Beacons for you");
print(beaconSections); print(beaconSections);

View File

@ -188,6 +188,11 @@ class _VisitPageState extends State<VisitPage> with WidgetsBindingObserver {
var checkIfMoreThanSec = (DateTime.now().millisecondsSinceEpoch - milliLastTime) > timeBetweenBeaconPopUp; var checkIfMoreThanSec = (DateTime.now().millisecondsSinceEpoch - milliLastTime) > timeBetweenBeaconPopUp;
if(!_isDialogShowing && !visitAppContext.isArticleCurrentlyShown && checkIfMoreThanSec && visitAppContext.isScanningBeacons) { if(!_isDialogShowing && !visitAppContext.isArticleCurrentlyShown && checkIfMoreThanSec && visitAppContext.isScanningBeacons) {
print("Before sorting");
print(beaconList);
beaconList.toList().sort((a, b) => a!.orderInConfig!.compareTo(b!.orderInConfig!));
print("after storting");
print(beaconList);
_onBeaconFound(visitAppContext, beaconList.first); _onBeaconFound(visitAppContext, beaconList.first);
} else { } else {
print("Non pas possible d'afficher pour le moment"); print("Non pas possible d'afficher pour le moment");
@ -389,7 +394,6 @@ class _VisitPageState extends State<VisitPage> with WidgetsBindingObserver {
if(!isCancel) { if(!isCancel) {
listeningState();
if(Platform.isIOS) { if(Platform.isIOS) {
Map<Permission, PermissionStatus> statuses0 = await [ Map<Permission, PermissionStatus> statuses0 = await [
Permission.bluetooth, Permission.bluetooth,
@ -437,6 +441,7 @@ class _VisitPageState extends State<VisitPage> with WidgetsBindingObserver {
var status = await Permission.bluetoothScan.status; var status = await Permission.bluetoothScan.status;
print(status); print(status);
} }
listeningState();
} }
} }