Skip to content
Snippets Groups Projects
Commit 9e457e94 authored by Bouchaira Neirouz's avatar Bouchaira Neirouz
Browse files

ddd

parent 1ea04d6e
No related branches found
No related tags found
No related merge requests found
...@@ -11,41 +11,51 @@ tab1, tab2, tab3,tab4 = st.tabs(["Suivi des employés","Employés avec 3 ans d'a ...@@ -11,41 +11,51 @@ tab1, tab2, tab3,tab4 = st.tabs(["Suivi des employés","Employés avec 3 ans d'a
with tab1: with tab1:
st.title("Suivi Employés") st.title("Suivi Employés")
popover = st.popover("Filtre employés à afficher")
total = popover.checkbox("Salaires des employés par semaine", True)
dimin = popover.checkbox("Salaires des employés ayant eu une diminution par semaine", True)
conn= sqlite3.connect(r'C:\Users\neiro\Documents\+\GitHub\sgbd-usine\donnees\company.db') conn= sqlite3.connect(r'C:\Users\neiro\Documents\+\GitHub\sgbd-usine\donnees\company.db')
cursor = conn.cursor() cursor = conn.cursor()
tab11,tab12 = st.tabs(["Totalité des employés","Employés avec une diminution de salaire"])
cursor.execute("SELECT DATE_LUNDI,SALAIRE_SEMAINE.NUMERO_EMPLOYE,NOM,PRENOM,SALAIRE_BASE,SALAIRE_AVANT, SALAIRE_APRES,NB_HEURES, NB_PRODUCTION,RETARD,ANCIENNETE,NOEL, DATE_DEBUT FROM SALAIRE_SEMAINE JOIN EMPLOYE ON EMPLOYE.NUMERO_EMPLOYE = SALAIRE_SEMAINE.NUMERO_EMPLOYE") cursor.execute("SELECT DATE_LUNDI,SALAIRE_SEMAINE.NUMERO_EMPLOYE,NOM,PRENOM,SALAIRE_BASE,SALAIRE_AVANT, SALAIRE_APRES,NB_HEURES, NB_PRODUCTION,RETARD,ANCIENNETE,NOEL, DATE_DEBUT FROM SALAIRE_SEMAINE JOIN EMPLOYE ON EMPLOYE.NUMERO_EMPLOYE = SALAIRE_SEMAINE.NUMERO_EMPLOYE")
employees = cursor.fetchall() employees = cursor.fetchall()
# Convert the employee records to a DataFrame # Convert the employee records to a DataFrame
df = pd.DataFrame(employees, columns=[desc[0] for desc in cursor.description]) df = pd.DataFrame(employees, columns=[desc[0] for desc in cursor.description])
df.columns = ['Date du lundi', 'Numéro employé', 'Nom', 'Prénom', 'Salaire base', 'Salaire avant primes','Salaire réel', 'Nombre d\'heures', 'Nombre de production', 'Retard','Ancienneté', 'Bonus de Noël', 'Date de début'] df.columns = ['Date du lundi', 'Numéro employé', 'Nom', 'Prénom', 'Salaire base', 'Salaire avant primes','Salaire réel', 'Nombre d\'heures', 'Nombre de production', 'Retard','Ancienneté', 'Bonus de Noël', 'Date de début']
with tab11: if total:
# Add code for "Suivi Employés" page here # Add code for "Suivi Employés" page here
st.write("Page de suivi des salaires des employés par semaine (question 1)") st.write("Salaires des employés par semaine (question 1)")
st.dataframe(df) st.dataframe(df)
with tab12: if dimin:
st.write("Page de suivi des salaires des employés ayant eu une diminution par semaine (question 3)") st.write("Salaires des employés ayant eu une diminution par semaine (question 3)")
st.dataframe(df[df['Salaire avant primes']<df['Salaire base']]) st.dataframe(df[df['Salaire avant primes']<df['Salaire base']])
conn.close() conn.close()
with tab2: with tab2:
conn= sqlite3.connect(r'C:\Users\neiro\Documents\+\GitHub\sgbd-usine\donnees\company.db') conn= sqlite3.connect(r'C:\Users\neiro\Documents\+\GitHub\sgbd-usine\donnees\company.db')
cursor = conn.cursor() cursor = conn.cursor()
st.write("Page des employés avec 3 ans d'anciénneté (question 2)") on = st.toggle("Employés avec 3 ans d'anciénneté")
# Fetch all employee records
cursor.execute("SELECT NUMERO_EMPLOYE,NOM,PRENOM,TYPE,DATE_DEBUT FROM EMPLOYE") cursor.execute("SELECT NUMERO_EMPLOYE,NOM,PRENOM,TYPE,DATE_DEBUT FROM EMPLOYE")
employees = cursor.fetchall() employees = cursor.fetchall()
df=pd.DataFrame(employees, columns=[desc[0] for desc in cursor.description]) df=pd.DataFrame(employees, columns=[desc[0] for desc in cursor.description])
from datetime import datetime from datetime import datetime
today = datetime.today() today = datetime.today()
df['DATE_DEBUT'] = pd.to_datetime(df['DATE_DEBUT']) df['DATE_DEBUT'] = pd.to_datetime(df['DATE_DEBUT'])
if on:
st.header("Liste des employés avec 3 ans d'anciénneté (question 2)")
df = df[(today - df['DATE_DEBUT']).dt.days > 3 * 365] df = df[(today - df['DATE_DEBUT']).dt.days > 3 * 365]
df.columns = ['Numéro employé', 'Nom', 'Prénom', 'Type du contrat', 'Date de début'] df.columns = ['Numéro employé', 'Nom', 'Prénom', 'Type du contrat', 'Date de début']
st.write("Liste des employés journaliers") st.write("Liste des employés journaliers")
st.dataframe(df[df['Type du contrat']==1]) st.dataframe(df[df['Type du contrat']==1])
st.write("Liste des employés par production") st.write("Liste des employés par production")
st.dataframe(df[df['Type du contrat'] == 2]) st.dataframe(df[df['Type du contrat'] == 2])
else:
df.columns = ['Numéro employé', 'Nom', 'Prénom', 'Type du contrat', 'Date de début']
st.header("Liste de la totalité des employés")
st.write("Liste des employés journaliers")
st.dataframe(df[df['Type du contrat']==1])
st.write("Liste des employés par production")
st.dataframe(df[df['Type du contrat'] == 2])
...@@ -83,7 +93,7 @@ with tab3: ...@@ -83,7 +93,7 @@ with tab3:
if st.button("Create Account"): if st.button("Create Account"):
# Connect to the database # Connect to the database
conn=sqlite3.connect(r'C:\Users\neiro\Documents\+\GitHub\sgbd-usine\donnees\company.db') conn=sqlite3.connect(r'C:\Users\neiro\Documents\+\GitHub\sgbd-usine\donnees\company.db')
# Check if the employee already exists cursor = conn.cursor()
cursor.execute(""" cursor.execute("""
SELECT NUMERO_EMPLOYE FROM EMPLOYE SELECT NUMERO_EMPLOYE FROM EMPLOYE
WHERE NOM = ? AND PRENOM = ? AND DATE_DEBUT = ? WHERE NOM = ? AND PRENOM = ? AND DATE_DEBUT = ?
...@@ -92,9 +102,9 @@ with tab3: ...@@ -92,9 +102,9 @@ with tab3:
if existing_employee: if existing_employee:
st.write(f"Cet employé est déjà enregistré avec le numéro employé: {existing_employee[0]}") st.write(f"Cet employé est déjà enregistré avec le numéro employé: {existing_employee[0]}")
st.stop() conn.close()
# Insert the new employee record else:
cursor.execute(""" cursor.execute("""
INSERT INTO EMPLOYE (NUMERO_EMPLOYE, TYPE, NOM, PRENOM, CS_PRODUCTION, CS_JOURNEE, DATE_DEBUT) INSERT INTO EMPLOYE (NUMERO_EMPLOYE, TYPE, NOM, PRENOM, CS_PRODUCTION, CS_JOURNEE, DATE_DEBUT)
VALUES (?, ?, ?, ?, ?, ?, ?) VALUES (?, ?, ?, ?, ?, ?, ?)
...@@ -112,4 +122,5 @@ with tab3: ...@@ -112,4 +122,5 @@ with tab3:
else: else:
st.write(f"code salarial journalier: {CS_JOURNEE}") st.write(f"code salarial journalier: {CS_JOURNEE}")
st.write(f"Date du début du contrat: {date_debut}") st.write(f"Date du début du contrat: {date_debut}")
conn.close()
st.stop() st.stop()
\ No newline at end of file
No preview for this file type
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment