You are on page 1of 30

Projet c++

M. Luxamar Cleevens

Rosenerlande Joseph
Wathsinger Louis Juste
Romero Yveltdo Saint Fleur
#include <iostream>

#include <vector>

#include "sqlite3.h"

#include "string.h"

#define ERRORINT -1000

#define ERRORDOUBLE -1000.0

using namespace std;

sqlite3* openDb(string dbName)

sqlite3* dataBase = NULL;

int resultat = sqlite3_open(dbName.c_str(),&dataBase);

return dataBase;

int requete(sqlite3* dataBase,string query)

sqlite3_stmt* statement;

int resultat = sqlite3_prepare_v2(dataBase,query.c_str(),-1,&statement,NULL);

sqlite3_step(statement);

sqlite3_finalize(statement);

if(resultat == SQLITE_OK)

return 1;

else

{
return ERRORINT;

int getInt(sqlite3* dataBase,string query)

sqlite3_stmt* statement;

int resultat, requete ;

requete = sqlite3_prepare_v2(dataBase,query.c_str(),-1,&statement,NULL);

if(requete == SQLITE_OK && sqlite3_step(statement)== SQLITE_ROW)

resultat = sqlite3_column_int(statement,0);

sqlite3_finalize(statement);

return resultat;

else

return ERRORINT;

int getListeInt(sqlite3* dataBase,string query,int tab[])

sqlite3_stmt* statement;

int i=0, requete = sqlite3_prepare_v2(dataBase,query.c_str(),-1,&statement,NULL);

if(requete == SQLITE_OK)

while(sqlite3_step(statement)== SQLITE_ROW)

{
tab[i++] = sqlite3_column_int(statement,0);

sqlite3_finalize(statement);

return 1;

else

return ERRORINT;

string getListeText(sqlite3* dataBase,string query,string tab[])

sqlite3_stmt* statement;

string resultat ="ok";

int i=0,requete = sqlite3_prepare_v2(dataBase,query.c_str(),-1,&statement,NULL);

if(requete == SQLITE_OK)

while(sqlite3_step(statement)== SQLITE_ROW)

std::string resultat(reinterpret_cast<const char*>(sqlite3_column_text(statement,0)));

tab[i++] = resultat;

return resultat;
}

else

return NULL;

string getText(sqlite3* dataBase,string query,int position)

sqlite3_stmt* statement;

string resultat;

int requete = sqlite3_prepare_v2(dataBase,query.c_str(),-1,&statement,NULL);

if(requete == SQLITE_OK && sqlite3_step(statement)== SQLITE_ROW)

if(sqlite3_step(statement)== SQLITE_ROW)

std::string resultat(reinterpret_cast<const char*>(sqlite3_column_text(statement,position-


1)));

return resultat;

//strcpy(resultat,sqlite3_column_text(statement,0));

//sqlite3_finalize(statement);

//return resultat;

else

return NULL;

}
else

return NULL;

double getDouble(sqlite3* dataBase,string query,int position)

sqlite3_stmt* statement;

int requete = sqlite3_prepare_v2(dataBase,query.c_str(),-1,&statement,NULL);

double resultat=ERRORDOUBLE;

if(requete == SQLITE_OK)

if(sqlite3_step(statement)== SQLITE_ROW)

resultat = sqlite3_column_double(statement,0);

sqlite3_finalize(statement);

return resultat;

else

return ERRORDOUBLE;

else

return ERRORDOUBLE;

}
void config(){

sqlite3* db;

string dbName="db/bongaz.db";

int resultat;

db = openDb(dbName);

if(db==NULL)

cout<<"une erreur s'est produite lors de l'ouverture";

else

cout<<"ouverture effectuee avec succes";

string query="create table flux(id_flux int, date varchar(60), id_pers int,id_station int, type_flux
varchar(50) check(type_flux in ('vente', 'approvisionnement', 'livraison')), type_marchandise
varchar(50) check(type_marchandise in('gazoline','diesel','kerozene','propane')), unite varchar(5)
check(unite in('l','gal','m3','lb')), quantite double, prix_unitaire double,primary key(id_flux),foreign
key (id_pers) references personne(id_pers),foreign key (id_station) references station(id_station));";

requete(db,query);

query= "create table station(id_station int, nom_station varchar(20), adresse varchar(100),primary


key(id_station));";

requete(db,query);

query="create table personne(id_pers int,Nom varchar(10),Prenom varchar(20),NumeroSocial


varchar(15),Sexe varchar(3),Adresse Varchar(15),DateNaissance varchar(15),Fonction Varchar(10)
check(Fonction in('Pompiste','Chauffeur','Manager','Client','Fournisseur')),primary key(id_pers));";

requete(db,query);

query="create table camion(id_cam int, type_marchandise varchar(50) check(type_marchandise


in('gazoline','diesel','kerozene','propane')),capacitemax double,niveauactuel double,primary
key(id_cam));";

requete(db,query);

query="create table citerne (id_cit int,nom_cit varchar(15),id_station int,type_marchandise


varchar(50) check(type_marchandise in('gazoline','diesel','kerozene','propane')), unite varchar(5)
check(unite in('l','gal','m3','lb')), capacitemax double,capacitemin double,niveauactuel
double,primary key(id_station),foreign key (id_station) references station(id_station));";

requete(db,query);

query="create table conduit (id_chauffeur int,id_camID int,id_fluxID int,foreign key (id_chauffeur)


references personne(id_pers),foreign key (id_camID) references camion(id_cam),foreign key
(id_fluxID) references flux(id_flux));";

requete(db,query);

query="create table login(username varchar(20),mots_de_passe varchar(20),id_pers int,foreign


key (id_pers) references personne(id_pers));";

requete(db,query);

query="create table unite_volume(type_marchandise varchar(10) check(type_marchandise


in('gazoline','diesel','kerozene','propane')),unite varchar(5) check(unite in('l','gal','m3','lb')),reference
varchar(20) check(reference in('approvisionnement','vente','stockage')));";

requete(db,query);

query="create table travail(id_station int,id_pers int,foreign key (id_station) references


station(id_station),foreign key (id_pers) references personne(id_pers));";

requete(db,query);

/*-------------------------Insertion a la main----------------------------*/

query="insert into station (id_station, nom_station , adresse) VALUES (111, 'Station A', 'SANTO');";

requete(db,query);

query="insert into station (id_station, nom_station , adresse) VALUES (112, 'Station B',
'DELMAS');";

requete(db,query);

query="insert into station (id_station, nom_station , adresse) VALUES (113, 'Station C', 'PETION-
VILLE');";

requete(db,query);

query="insert into station (id_station, nom_station , adresse) VALUES (114, 'Station D',
'CLERCINE');";

requete(db,query);

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values
(001,'Frantz','Pierre','001-909-90AB','Mas','SANTO','20-04-1999','Pompiste');";

requete(db,query);
query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values
(002,'Dabaschy','Nelson','001-999-91CB','Mas','DELMAS','20-04-1997','Chauffeur');";

requete(db,query);

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values
(003,'Vensky','Roubens','001-909-12DB','Mas','PETION-VILLE','20-04-1999','Manager');";

requete(db,query);

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values(004,
'Jean', 'Fritz', '002-058-3L', 'Mas', 'SANTO', '23-05-1990', 'pompiste');";

requete(db,query);

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values(005,
'Petter', 'Petterlee', '003-578-14M', 'Fem', 'CARADEUX', '15-12-1987', 'Chauffeur');";

requete(db,query);

query="insert into camion(id_cam, type_marchandise, capacitemax, niveauactuel) values (14227,


'gazoline', 150.0, 14.7);";

requete(db,query);

query="insert into camion(id_cam, type_marchandise, capacitemax, niveauactuel) values (18963,


'diesel', 200.0, 26.3);";

requete(db,query);

query="insert into login (username,mots_de_passe,id_pers) values ('Rose','Dabaschy12',243);";

requete(db,query);

int rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n.... ! : " << sqlite3_errmsg(db) <<"\n\n";

else

cout << "Query OK !";

bool authenticateUser(sqlite3* db, const std::string& username, const std::string& mots_de_passe)

const char* query = "SELECT COUNT(*) FROM login WHERE username = ? AND mots_de_passe
= ?";

sqlite3_stmt* stmt;
int rc = sqlite3_prepare_v2(db, query, -1, &stmt, nullptr);

if (rc != SQLITE_OK) {

std::cerr << "Erreur lors de la préparation de la requête : " << sqlite3_errmsg(db) << std::endl;

return false;

sqlite3_bind_text(stmt, 1, username.c_str(), -1, SQLITE_STATIC);

sqlite3_bind_text(stmt, 2, mots_de_passe.c_str(), -1, SQLITE_STATIC);

rc = sqlite3_step(stmt);

bool authenticated = false;

if (rc == SQLITE_ROW) {

int rowCount = sqlite3_column_int(stmt, 0);

if (rowCount > 0) {

authenticated = true;

sqlite3_finalize(stmt);

return authenticated;

int menu(){

int choix;

cout<<"********************** BONGAZ S.A **********************\n";

cout<<"1. vente\n";

cout<<"2. approvisionnement\n";

cout<<"3. livraison\n";
cout<<"4. station\n";

cout<<"5. employe\n";

cout<<"6. client-fournisseur\n";

cout<<"7. statistiques\n";

do{

cout<<"\n\nveuillez entrer le numero correspondant a votre choix: ";

cin>>choix;

}while(choix<1 || choix >7);

return choix;

int crud(string nom){

int choix;

cout<<"\n\n************************************ MENU "<<nom<<"


************************************\n\n";

cout<<"1. ajouter un(e) "<<nom<<"\n";

cout<<"2. afficher un(e) "<<nom<<"\n";

cout<<"3. modifier un(e) "<<nom<<"\n";

cout<<"4. supprimer un(e) "<<nom<<"\n";

do{

cout<<"\nveuillez entrer le numero correspondant a votre choix: ";

cin>>choix;

}while(choix<1 || choix >4);

return choix;

/*--------------fonction ajouter -------------------*/

void ajouter(string type){


int num, rc, maxId;

double doub;

sqlite3* db;

string carc, query,query2, dbName="db/bongaz.db";

db = openDb(dbName);

if(type=="vente"){

int nbreligne;

string listenom[nbreligne],listeprenom[nbreligne];

query="insert into flux(id_flux, date, id_pers, id_station, type_flux, type_marchandise,unite,


quantite , prix_unitaire)values(";

query2="select max(id_flux) from flux";

maxId=getInt(db,query2);

maxId++;

query =query+ to_string(maxId)+",";

cin.ignore();

cout<<"Entre la date : ";

getline(cin,carc);

query += "'"+carc+"',";

cout<<"Liste des Pompistes Disponibles :\n";

while(true){

string query2="select count(id_pers) from personne where Fonction='Pompiste';";

int nbrLigne = getInt(db,query2);

int listId[nbrLigne];

string listNom[nbrLigne], listPrenom[nbrLigne];

query2="select id_pers from personne where Fonction='Pompiste';";


int Id =getListeInt(db,query2,listId);

query2="select Nom from personne where Fonction='Pompiste';";

getListeText(db,query2,listNom);

query2="select Prenom from personne where Fonction='Pompiste';";

getListeText(db,query2,listPrenom);

cout<<"ID NOM PRENOM";

for (int i = 0; i < nbrLigne; ++i) {

cout<<"\n"<<listId[i] <<" "<<listNom[i] <<" "<<listPrenom[i];

break;

string query2="select min(id_pers) from personne;";

int minId=getInt(db,query2);

query2="select max(id_pers) from personne;";

int maxId=getInt(db,query2);

do

cout<<"\n\nEntrez L'identifiant de la personne correspondante : ";

cin>>num;

while(num<minId || num>maxId);

query = query + to_string(num) +",";

cout<<"L'identifiant de la Station : ";

cin>>num;

query = query + to_string(num)+","+ "'"+"vente"+"',";

cin.ignore();

cout<<"Le Type de Marchandise : ";

getline(cin,carc);
query = query + "'"+carc+"',";

cout<<"L'unite de volume : ";

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"La quantite : ";

cin>>doub;

query = query + to_string(doub)+",";

cout<<"Le prix unitaire : ";

cin>>num;

query = query + to_string(num)+");";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cerr << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

else if(type=="approvisionnement"){

// query="insert into flux(id_flux, date, id_pers, id_station, type_flux, type_marchandise,unite,


quantite , prix_unitaire)values(";

query="insert into flux(id_flux, date, id_pers, id_station, type_flux, type_marchandise,unite,


quantite , prix_unitaire)values(";

query2="select max(id_flux) from flux";

maxId=getInt(db,query2);

maxId++;

query =query+ to_string(maxId)+",";

cout<<"Entre la date : ";


cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

/* cout<<"Liste des Fournisseurs Disponibles :\n";

while(true){

string query2="select count(id_pers) from personne where Fonction='Fournisseur';";

int nbrLigne = getInt(db,query2);

int listId[nbrLigne];

string listNom[nbrLigne], listPrenom[nbrLigne];

query2="select id_pers from personne where Fonction='Fournisseur';";

int Id =getListeInt(db,query2,listId);

query2="select Nom from personne where Fonction='Fournisseur';";

getListeText(db,query2,listNom);

query2="select Prenom from personne where Fonction='Fournisseur';";

getListeText(db,query2,listPrenom);

cout<<"ID NOM PRENOM";

for (int i = 0; i < nbrLigne; ++i) {

cout<<"\n"<<listId[i] <<" "<<listNom[i] <<" "<<listPrenom[i];

break;

}*/

cout<<"Entre le numero d'un founisseur founisseur : ";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"L'identifiant de la Station : ";

cin>>num;

query = query + to_string(num)+","+ "'"+"approvisionnement"+"',";

cin.ignore();
cout<<"Le Type de Marchandise : ";

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"L'unite de volume : ";

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"La quantite : ";

cin>>doub;

query = query + to_string(doub)+",";

cout<<"Le prix unitaire : ";

cin>>num;

query = query + to_string(num)+");";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

else if(type=="livraison"){

cout<<"\nAjouter les information de la livraison\n\n";

query="insert into flux(id_flux, date, id_pers, id_station, type_flux, type_marchandise,unite,


quantite , prix_unitaire)values(";

cout<<"Entre l'identifiant : ";

cin>>num;

query =query+ to_string(num)+",";


cout<<"Entre la date : ";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"L'identifiant de la Personne : ";

cin.ignore();

cin>>num;

query = query + to_string(num) +",";

cout<<"L'identifiant de la Station : ";

cin>>num;

query = query + to_string(num)+","+ "'"+"Livraison"+"',";

cin.ignore();

cout<<"Le Type de Marchandise : ";

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"L'unite de volume : ";

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"La quantite : ";

cin>>doub;

query = query + to_string(doub)+",";

cout<<"Le prix unitaire : ";

cin>>num;

query = query + to_string(num)+");";

cout<<"\n\n"<<query;
rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

cout<<"\nAjouter les informations du client\n\n";

query="insert into
personne(id_pers ,Nom ,Prenom ,ref_station ,NumeroSocial ,Sexe ,Adresse ,DateNaissance ,Fonction
)values(";

cout<<"Entrer ID : ";

cin>>num;

query =query+ to_string(num)+",";

cout<<"Entre la date : ";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"L'identifiant de la Personne : ";

cin.ignore();

cin>>num;

query = query + to_string(num) +",";

cout<<"L'identifiant de la Station : ";

cin>>num;

query = query + to_string(num)+","+ "'"+"Livraison"+"',";

cin.ignore();

cout<<"Le Type de Marchandise : ";

getline(cin,carc);

query = query + "'"+carc+"',";


cout<<"La quantite : ";

cin>>doub;

query = query + to_string(doub)+",";

cout<<"Le prix unitaire : ";

cin>>num;

query = query + to_string(num)+");";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

else if(type=="station")

cout<<"\nAjouter une nouvelle station";

query="insert into station(id_station,nom_station,adresse) Values(";

cout<<" Entrer L'id Station: ";

cin>>num;

query =query+ to_string(num)+",";

cout<<"Entre le nom de la station : ";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre l'adresse de la station : ";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"');";


cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

else if (type=="employe")

string Typedaj="employe";

cout<<"\nAjouter un nouveau"<<Typedaj<<" ";

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values(";

query2="select max(id_pers) from personne";

maxId=getInt(db,query2);

maxId++;

query =query+ to_string(maxId)+",";

cout<<"Entre le nom du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le prenom du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le numero identifiant du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le sexe du "<<Typedaj<<" :";


cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre l'adresse du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre la date naissance du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

query=query+"'Pompiste'"");";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

else if (type=="client-fournisseur")

int C;

string Typedaj;

cout<<"1.Client\n2.Fournisseur";

do

cout<<"\nVeuillez faire votre choix : ";

cin>>C;

cin.ignore();

while(C<1 || C>2);
{

if(C==2)

Typedaj="Fournisseur";

cout<<"\nAjouter un nouveau Fournisseur";

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values(";

query2="select max(id_pers) from personne";

maxId=getInt(db,query2);

maxId++;

query =query+ to_string(maxId)+",";

cout<<"Entre le nom du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le prenom du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le numero identifiant du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le sexe du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre l'adresse du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";


cout<<"Entre la date naissance du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

query=query+"'fournisseur'"");";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

else if (C==1)

Typedaj="Client";

cout<<"Ajouter un nouveau Client";

query="insert into
personne(id_pers,Nom,Prenom,NumeroSocial,Sexe,Adresse,DateNaissance,Fonction) values(";

query2="select max(id_pers) from personne";

maxId=getInt(db,query2);

maxId++;

query =query+ to_string(maxId)+",";

cout<<"Entre le nom du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le prenom du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);
query = query + "'"+carc+"',";

cout<<"Entre le numero identifiant du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre le sexe du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre l'adresse du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

cout<<"Entre la date naissance du "<<Typedaj<<" :";

cin.ignore();

getline(cin,carc);

query = query + "'"+carc+"',";

query=query+"'fournisseur'"");";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

}
}

void afficher(){

sqlite3* db;

string dbName="db/bongaz.db";

db = openDb(dbName);

cout<<"\nAfficher les statistiques des ventes\n\n";

string query="select id_flux,date from flux where type_flux='vente';";

int id_flux = getInt(db, query);

string date = getText(db, query,2);

//int id = getInt(db, query, 1);

cout<<id_flux<<" "<<date;

void modifier(){

cout<<"modifier";

cout<<"\nmodifier une ligne";

sqlite3* db;

int rc;

string carc, query, dbName="db/bongaz.db";


db = openDb(dbName);

query="update flux set type_flux='approvisionnement' where id_flux=909;";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

void supprimer(){

cout<<"supprimer une ligne";

cout<<"\nsupprimer une ligne";

sqlite3* db;

int rc;

string carc, query, dbName="db/bongaz.db";

db = openDb(dbName);

query="delete from flux where id_flux=889;";

cout<<"\n\n"<<query;

rc=requete(db,query);

if (rc != SQLITE_OK)

cout << "\n\nError ! : " << sqlite3_errmsg(db);

else

cout << "Query OK !";

void statistique(){

cout<<"statistique";

int main(){
sqlite3* db;

int rc = sqlite3_open("db/bongaz.db", &db);

config();

if (rc) {

std::cerr << "Erreur lors de l'ouverture de la base de donnees : " << sqlite3_errmsg(db) <<
std::endl;

return 1;

string username, mots_de_passe;

cout << "Nom d'utilisateur : ";

cin >> username;

cout << "Mot de passe : ";

cin >> mots_de_passe;

if (authenticateUser(db, username, mots_de_passe))

std::cout << "Authentification reussie !" << std::endl;

// Vous pouvez maintenant autoriser l'accès à l'application

int choix = menu(), choix2;

if (choix==1){

// crud("vente");

choix2=crud("vente");

if (choix2==1)

ajouter("vente");

else if (choix2==2)

afficher();

else if (choix2==3)

modifier();
else

supprimer();

else if (choix==2){

choix2=crud("approvisionnement");

if (choix2==1)

ajouter("approvisionnement");

else if (choix2==2)

afficher();

else if (choix2==3)

modifier();

else

supprimer();

else if (choix==3){

choix2=crud("livraison");

if (choix2==1)

ajouter("livraison");

else if (choix2==2)

afficher();

else if (choix2==3)

modifier();

else

supprimer();

else if (choix==4){
choix2=crud("station");

if (choix2==1)

ajouter("station");

else if (choix2==2)

afficher();

else if (choix2==3)

modifier();

else

supprimer();

else if (choix==5){

choix2=crud("employe");

if (choix2==1)

ajouter("employe");

else if (choix2==2)

afficher();

else if (choix2==3)

modifier();

else

supprimer();

else if (choix==6){

choix2=crud("client-fournisseur");

if (choix2==1)

ajouter("client-founisseur");

else if (choix2==2)

afficher();

else if (choix2==3)

modifier();
else

supprimer();

else

statistique();

else

std::cout << "Échec de l'authentification." << std::endl;

return 0;

You might also like