99 lines
4.1 KiB
Python
99 lines
4.1 KiB
Python
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:
|
|
|
|
print(frn)
|
|
print(tsa_codice)
|
|
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:
|
|
query_lsv = "INSERT INTO lsv (ART_CODICE,DATA_FINE,DATA_INIZIO,TSM_CODICE,TRL_CODICE,TLV_CODICE) VALUES (%s,%s,%s,%s,%s,%s)"
|
|
cursor.execute(query_lsv,(codice,data_fine,formatted_date,sc2,ricarica,listino))
|
|
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)
|
|
|
|
##sggiungere aggiunta prezzo lsv sia per listino 1 che per listino diverso
|
|
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*ricarica)/100
|
|
|
|
prezzo_lsv = (ris*22)/100
|
|
|
|
query_price = "INSERT INTO lsv (PREZZO) VALUES (%s)"
|
|
cursor.execute(query_price, (prezzo_lsv,))
|
|
|
|
|
|
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*ricarica)/100
|
|
prezzo_lsv = ris
|
|
if listino == 4:
|
|
prezzo_lsv = (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() |