import mysql.connector from mysql.connector import Error import pandas as pd import math import datetime today = datetime.date.today() formatted_date = today.strftime("%Y-%m-%d") data_str = "2999-12-31" data_fine = datetime.datetime.strptime(data_str, "%Y-%m-%d").date() tla = 1 value_insert = [] def insert_records(connection,codice,descrizione,descrizione2,um,prezzo,sc1,sc2,ricarica,listino,codice_alternativo,codice_barre,art,tsa_codice,frn): try: cursor_select = connection.cursor() result = [] cursor = connection.cursor() if art == False: query_art = "INSERT INTO art (codice, DESCRIZIONE1,DESCRIZIONE2, TUM_CODICE, codice_alternativo, TSA_CODICE, TUB_CODICE, TCM_CODICE, TGM_CODICE, TIV_CODICE_VENDITE, TIV_CODICE_ACQUISTI, TCA_CODICE, TAQ_CODICE, TS3_CODICE, TP2_CODICE, TIN_CODICE, TAA_CODICE, TNI_CODICE,FRN_CODICE) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)" cursor.execute(query_art,(codice, descrizione,descrizione2,um, codice_alternativo, tsa_codice,'0','0','0','22','22','0','0','0','0','0','0','0',frn)) count = cursor.rowcount result.append(count) query_bar = "INSERT INTO bar (ART_CODICE,CODICE_BARRE) VALUES (%s,%s)" cursor.execute(query_bar,(codice,codice_barre)) count = cursor.rowcount result.append(count) if listino == 1: select_percentuale_totale = "SELECT PERCENTUALE_TOTALE FROM tsm WHERE CODICE = %s" cursor_select.execute(select_percentuale_totale,(sc1, )) percentuale_totale = cursor_select.fetchone() percentuale_totale = percentuale_totale[0] percentuale_totale = float(percentuale_totale) prezzo_netto = (prezzo * percentuale_totale)/100 ris = prezzo_netto + (prezzo_netto*ricarica)/100 prezzo_lsv = ris + (ris*22)/100 query_lsv = "INSERT INTO lsv (ART_CODICE,DATA_FINE,DATA_INIZIO,TSM_CODICE,TRL_CODICE,TLV_CODICE,PREZZO) VALUES (%s,%s,%s,%s,%s,%s,%s)" cursor.execute(query_lsv,(codice,data_fine,formatted_date,sc2,ricarica,listino,prezzo_lsv)) count = cursor.rowcount result.append(count) query_lsa = "INSERT INTO lsa (ART_CODICE,TLA_CODICE,DATA_INIZIO,DATA_FINE,PREZZO,TSM_CODICE) VALUES (%s,%s,%s,%s,%s,%s)" cursor.execute(query_lsa,(codice,tla,formatted_date,data_fine,prezzo,sc1)) count = cursor.rowcount result.append(count) else : select_percentuale_totale = "SELECT PERCENTUALE_TOTALE FROM tsm WHERE CODICE = %s" cursor_select.execute(select_percentuale_totale,(sc1, )) percentuale_totale = cursor_select.fetchone() percentuale_totale = percentuale_totale[0] percentuale_totale = float(percentuale_totale) prezzo_netto = (prezzo * percentuale_totale)/100 ris = prezzo_netto + (prezzo_netto*ricarica)/100 prezzo_lsv = ris if listino == 4: prezzo_lsv = ris + (ris*22)/100 query_lsv = "INSERT INTO lsv (ART_CODICE,DATA_FINE,DATA_INIZIO,TSM_CODICE,TRL_CODICE,TLV_CODICE,PREZZO) VALUES (%s,%s,%s,%s,%s,%s,%s)" cursor.execute(query_lsv,(codice,data_fine,formatted_date,sc2,ricarica,listino,prezzo_lsv)) count = cursor.rowcount result.append(count) connection.commit() if any(val != 0 for val in result): row = [codice,descrizione,um,prezzo,sc1,sc2,ricarica,codice_alternativo,codice_barre,tsa_codice,frn] value_insert.append(row) return value_insert except Error as e: print(f"Errore durante l'inserimento: {e}") finally: cursor.close()