b012_data 0.0.5 copy "b012_data: ^0.0.5" to clipboard
b012_data: ^0.0.5 copied to clipboard

b012_data is a package that allow you to build, generate and manipulate data (sqlfite and disc files) very easily

b012_data is for data manipulations. It provide bean persistance on SQLite database and system file manipulation. #

NB:
#

import 'package:b012_data/b012_disc_data.dart';
import 'package:flutter/material.dart';
import 'package:b012_data/b012_sqlflite_easy.dart';

//L'entité Personne
class Personne {
String idPers;
String nom;
String prenom;
bool sexe;
DateTime dateNaissance;

//Etape 1:
MapEntry<String,bool> get pKeyAuto => const MapEntry('idPers', false);
List<String> get notNulls => <String>['prenom','nom','sexe','dateNaissance'];

//Etape 2:
Personne([this.idPers, this.nom, this.prenom, this.sexe, this.dateNaissance]);

//Etape 3:
Map<String,dynamic> toMap() => {
"idPers": idPers??ColumnType.String,
"prenom": prenom??ColumnType.String,
"nom": nom??ColumnType.String,
"sexe": sexe??ColumnType.bool,
"dateNaissance": dateNaissance??ColumnType.DateTime,
};

//Etape 4:
Personne.fromMap(dynamic jsonOrMap,{bool isInt=true}){
idPers=jsonOrMap["idPers"];
prenom=jsonOrMap["prenom"];
nom=jsonOrMap["nom"];
sexe=jsonOrMap["sexe"];
sexe=boolean(jsonOrMap["sexe"],isInt: isInt);
dateNaissance=dateTime(jsonOrMap["dateNaissance"]);
}

//Etape 5:
Personne fromMap(dynamic jsonOrMap)=>Personne.fromMap(jsonOrMap);
}

//////////////////////////////////Exemple of use://////////////////////////////////

Future<void> main() async{
WidgetsFlutterBinding.ensureInitialized();

///////////DataAccess.instance/////////////

//Afficher la requete de creation de la table Personne
DataAccess.instance.showCreateTable(Personne());

//Verifier si la table Personne existe sur la base de donnees
bool temoinPersTableExiste= await DataAccess.instance.checkIfEntityTableExists<Personne>();

//Enregistrer une personne
bool tInsert=await DataAccess.instance.insertObjet(Personne(newKey,'KEBE','Birane',true,DateTime(1994,03,01)));

//Enregistrer une liste de personnes
bool tInsertList=await DataAccess.instance.insertObjet(
<Personne>[Personne(newKey,'Mbaye','Aliou',true,DateTime(1999,05,01)),Personne(newKey,'Cisse','Fatou',false,DateTime(2000,07,09))]
);

//Rechercher une personne
Personne birane=await DataAccess.instance.get<Personne>(Personne(),"prenom='Birane' and nom='KEBE'");

//Recupperer toutes les personnes
List<Personne> personnes=await DataAccess.instance.getAll<Personne>(Personne());

//Recupperer toutes les personnes de sexe masculin
List<Personne> hommes=await DataAccess.instance.getAllSorted<Personne>(Personne(),'sexe=1');

//Recupperer toutes les prenoms
List<String> prenoms=await DataAccess.instance.getAColumnFrom<String,Personne>('prenom');

//Recupperer toutes les prenoms des personnes de sexe feminin
List<String> prenomsFemmes=await DataAccess.instance.getAColumnFrom<String,Personne>('prenom',afterWhere: "sexe=0");

//Recupperer tous les prenoms et noms des personnes
List<Map<String, Object>> prenomsAndNoms= await DataAccess.instance.getSommeColumnsFrom<Personne>("prenom,nom");

//Recupperer tous les prenoms et nnoms des personnes de sexe feminin
List<Map<String, Object>> prenomsAndNomsFemmes= await DataAccess.instance.getSommeColumnsFrom<Personne>("prenom,nom",afterWhere: "sexe=0");

//Changer le prenom de Birane en developper et le nom KEBE en 2022
bool temoinUpdateNomEtPrenom= await DataAccess.instance.updateSommeColumnsOf<Personne>(['prenom','nom'],['prenom','nom'],['developper','2022','Birane','KEBE']);

//supprimer une la personne ayant pour prenom Fatou
bool temoinDelFatou= await DataAccess.instance.deleteObjet<Personne>("prenom='Fatou'");

//Compte le nombre de personnes
int nbPersonne= await DataAccess.instance.countElementsOf<Personne>();

//Compte le nombre de personne de sexe masculin
int nbHomme= await DataAccess.instance.countElementsOf<Personne>(afterWhere: 'sexe=1');


 ///////////DataAccess.instance/////////////

//databases path
String databases=await DiscData.instance.databasesPath;

//files path
String files=await DiscData.instance.filesPath;

//files path
String appFlutter=await DiscData.instance.rootPath;

//Save text data to disc on files directory
String fileName=await DiscData.instance.saveDataToDisc('contenu du fichier test.txt', DataType.text,takeThisName: 'test.txt');

//Verifier si le fichier test.txt existe
bool temoinTestFileExiste=await DiscData.instance.checkFileExists('test.txt');

//Lire le contenu du fichier test.txt
String readTest=await DiscData.instance.readFileAsString('test.txt');


runApp(Container());
}
11
likes
0
pub points
0%
popularity

Publisher

unverified uploader

b012_data is a package that allow you to build, generate and manipulate data (sqlfite and disc files) very easily

Homepage
Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter, path_provider, sqflite

More

Packages that depend on b012_data