feat: Gestion des secteurs et migration v3.0.4+304

- Ajout système complet de gestion des secteurs avec contours géographiques
- Import des contours départementaux depuis GeoJSON
- API REST pour la gestion des secteurs (/api/sectors)
- Service de géolocalisation pour déterminer les secteurs
- Migration base de données avec tables x_departements_contours et sectors_adresses
- Interface Flutter pour visualisation et gestion des secteurs
- Ajout thème sombre dans l'application
- Corrections diverses et optimisations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
pierre
2025-08-07 11:01:45 +02:00
parent 6a609fb467
commit 599b9fcda0
662 changed files with 213221 additions and 174243 deletions

View File

@@ -1,2 +1,2 @@
file:///Users/pierre/.pub-cache/hosted/pub.dev/build_daemon-4.0.4/lib/fake.dart
file:///Users/pierre/.pub-cache/hosted/pub.dev/build_runner-2.4.15/lib/fake.dart
file:///home/pierre/.pub-cache/hosted/pub.dev/build_daemon-4.0.4/lib/fake.dart
file:///home/pierre/.pub-cache/hosted/pub.dev/build_runner-2.5.4/lib/fake.dart

View File

@@ -1,11 +1,13 @@
// @dart=3.6
// ignore_for_file: directives_ordering
// build_runner >=2.4.16
// ignore_for_file: no_leading_underscores_for_library_prefixes
import 'package:build_runner_core/build_runner_core.dart' as _i1;
import 'package:hive_generator/hive_generator.dart' as _i2;
import 'package:source_gen/builder.dart' as _i3;
import 'package:build_resolvers/builder.dart' as _i4;
import 'dart:isolate' as _i5;
import 'dart:isolate' as _i4;
import 'package:build_runner/src/build_script_generate/build_process_state.dart'
as _i5;
import 'package:build_runner/build_runner.dart' as _i6;
import 'dart:io' as _i7;
@@ -24,18 +26,6 @@ final _builders = <_i1.BuilderApplication>[
hideOutput: false,
appliesBuilders: const [r'source_gen:part_cleanup'],
),
_i1.apply(
r'build_resolvers:transitive_digests',
[_i4.transitiveDigestsBuilder],
_i1.toAllPackages(),
isOptional: true,
hideOutput: true,
appliesBuilders: const [r'build_resolvers:transitive_digest_cleanup'],
),
_i1.applyPostProcess(
r'build_resolvers:transitive_digest_cleanup',
_i4.transitiveDigestCleanup,
),
_i1.applyPostProcess(
r'source_gen:part_cleanup',
_i3.partCleanup,
@@ -43,12 +33,13 @@ final _builders = <_i1.BuilderApplication>[
];
void main(
List<String> args, [
_i5.SendPort? sendPort,
_i4.SendPort? sendPort,
]) async {
var result = await _i6.run(
await _i5.buildProcessState.receive(sendPort);
_i5.buildProcessState.isolateExitCode = await _i6.run(
args,
_builders,
);
sendPort?.send(result);
_i7.exitCode = result;
_i7.exitCode = _i5.buildProcessState.isolateExitCode!;
await _i5.buildProcessState.send(sendPort);
}

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
ÍC>ÑN˜aÐô­ô»ô"Ú

View File

@@ -1 +0,0 @@
<EFBFBD>·ƒå†5z¡šýkˆ<EFBFBD>ý<EFBFBD>

View File

@@ -1 +0,0 @@
·Å©·‹ šÑåU/!ÁÄWÌ

View File

@@ -1 +0,0 @@
<EFBFBD> n<><6E>A<EFBFBD><41><08><13>+<2B><><EFBFBD>

View File

@@ -1 +0,0 @@
X<EFBFBD>͊?<3F>sSφ?/^<5E>-k

View File

@@ -1 +0,0 @@
رِ<EFBFBD>0)9#<23>D<EFBFBD><ار<D8A7> #

View File

@@ -1 +0,0 @@
!iTºIeSŒ 2d„.¸n

View File

@@ -15,11 +15,11 @@ class PassageModelAdapter extends TypeAdapter<PassageModel> {
return PassageModel(
id: fields[0] as int,
fkOperation: fields[1] as int,
fkSector: fields[2] as int,
fkSector: fields[2] as int?,
fkUser: fields[3] as int,
fkType: fields[4] as int,
fkAdresse: fields[5] as String,
passedAt: fields[6] as DateTime,
passedAt: fields[6] as DateTime?,
numero: fields[7] as String,
rue: fields[8] as String,
rueBis: fields[9] as String,

View File

@@ -1 +0,0 @@
CΨμΙF}<7D>Ο7Ϊϋ»¨9

View File

@@ -1 +0,0 @@
<EFBFBD><EFBFBD>E>`<60>e0<65>sl<73><6C> <0C>

View File

@@ -1 +0,0 @@
ëFJ6ãÞ6¸²©ÆeŒ²-b

View File

@@ -1 +0,0 @@
ゼレ€J嬾<EFBFBD>(穽/敷<>

View File

@@ -1 +0,0 @@
鴉キulMミLギユ絎

View File

@@ -1 +0,0 @@
o~þ+x<>\6ö†<C3B6>oŠÀa

View File

@@ -1,2 +0,0 @@
Q<EFBFBD>;<14><><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>)<29>j<EFBFBD>

View File

@@ -1 +0,0 @@
<EFBFBD>IХ4Вс]7П{Rf<52>

View File

@@ -1 +0,0 @@
¶îôveÛwz¬z::O÷À¾