File size: 2,419 Bytes
901dbf6 cbaf8cc 901dbf6 51113c2 901dbf6 cbaf8cc 73bc32e 901dbf6 73bc32e 901dbf6 ab1449b 6288d29 ab1449b 6288d29 ab1449b fdd783a bb4adf7 cbaf8cc 745dfe3 a7b9e38 cbaf8cc 745dfe3 cbaf8cc 745dfe3 cbaf8cc 745dfe3 cbaf8cc 745dfe3 51113c2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
import streamlit as st
from utilitis import Draw, Add_Results, Change_Image
from PIL import Image
import time
def check_if_changed(original_values, updated_values):
for key, value in original_values.items():
if updated_values[key] != value:
return True
return False
st.title("Bienvenue à Textra Web App")
st.markdown("### Drag and Drop votre facture ici:")
st.write("(PNG, JPG, JPEG)")
uploaded_file = st.file_uploader("Ou selectioner une image:", type=["png", "jpg", "jpeg"], accept_multiple_files=False)
if uploaded_file is not None:
image_initiale = Image.open(uploaded_file)
image_initiale = image_initiale.convert("RGB")
@st.cache_data
def process_image(uploaded_file):
image = Image.open(uploaded_file)
image = image.convert("RGB")
return Draw(image)
# Process the image and retrieve results
image, Results = process_image(uploaded_file)
Change_Image(image,image_initiale)
st.sidebar.title('Results')
st.write(Results)
# Define text inputs with initial values
text_fourni = st.sidebar.text_input("Fournisseur", value=Results["Fournisseur"])
text_InvDate = st.sidebar.text_input("Date Facture", value=Results["Date Facture"])
text_InvNum = st.sidebar.text_input("Numéro de facture", value=Results["Numéro de facture"])
text_TT = st.sidebar.text_input("Total HT", value=Results["Total HT"])
text_TTC = st.sidebar.text_input("TTC", value=Results["Total TTC"])
text_TVA = st.sidebar.text_input("TVA", value=Results["TVA"])
st.write("Predicted Text:", text_fourni, text_InvDate, text_InvNum, text_TT, text_TVA, text_TTC)
New_results = {
"Fournisseur": text_fourni,
"Date Facture": text_InvDate,
"Numéro de facture": text_InvNum,
"Total HT": text_TT,
"TVA": text_TVA,
"Total TTC": text_TTC
}
# Check if any input has been changed
if check_if_changed(Results,New_results):
st.write(check_if_changed(Results,New_results))
# Add a button to save changes
if st.sidebar.button("Sauvegarder"):
# Get updated values from text inputs
updated_results = New_results
success_message = st.sidebar.empty()
success_message.success("Les résultats ont été sauvegardés avec succès !")
time.sleep(1)
success_message.empty()
|