all the project copy

This commit is contained in:
2026-07-16 12:27:06 +02:00
parent 926b7de75b
commit 568beef49a
631 changed files with 130346 additions and 0 deletions

104
telepot/ticketToday.py Normal file
View File

@@ -0,0 +1,104 @@
import sys
from pathlib import Path
ROOT_DIR = Path(__file__).resolve().parents[1]
for path in (ROOT_DIR / "api", ROOT_DIR / "conn"):
if str(path) not in sys.path:
sys.path.insert(0, str(path))
import phrase_similarity
import detailTicket
import filters
import tickets
import mysql5
HIGH_GRAVITY_WORDS = ("alta", "urgente", "critica", "critico", "bloccante", "grave", "high")
def _is_high_gravity(value):
text = str(value or "").strip().lower()
return any(word in text for word in HIGH_GRAVITY_WORDS)
def getTicketToday(teleId):
listOfStrings = []
listFilters = filters.getFilters(teleId)
ticketAsString = ""
for j in listFilters:
docList = mysql5.getTicket(j[2], j[3])
ticketAsString = ""
for i in docList:
ticketAsString += "🎫 /Ticket_dettaglio_"+ str(i[0]) + "\n" +"🏢 Cliente: "+ str(i[1]) + "\n" +"🔎 Oggetto: "+ str(i[2])+ "\n" +"🎨 Gravita': "+ str(i[3])+ "\n" + "🧑 Competenza': "+ str(i[4])+ "\n" + "📅 Apertura': "+ str(i[6]) + "\n\n"
if len(docList):
# max char 4096
listOfStrings.append(str(ticketAsString))
return listOfStrings
def getTicketTodayForNotification(teleId, high_gravity_only=False):
listOfStrings = []
listFilters = filters.getFilters(teleId)
# print("Lista di filtri: ",listFilters)
# print("\n\n\n")
ticketTodayList = mysql5.getTicketsByFilterSet(listFilters)
for i in ticketTodayList:
if high_gravity_only and not _is_high_gravity(i[3]):
continue
ticket_id = int(i[0])
if len(tickets.getTicketForTid(teleId, ticket_id)) > 0:
continue
object_ = str(i[2])
if len(object_) > 250:
object_ = object_[:250] + "..."
ticketAsStringSingle = "🎫 /Ticket_dettaglio_"+ str(i[0]) + "\n https://tsnew.sanmarcoweb.com/it/ticket/index/index/operation/view/id/"+ str(i[0]) + "\n" +"🏢 Cliente: "+ str(i[1]) + "\n" +"🔎 Oggetto: "+ str(object_) + "\n" +"🎨 Gravita': "+ str(i[3])+ "\n" + "🧑 Competenza: "+ str(i[4])+ "\n" + "📦 Prodotto:" + str(i[5])+ "\n" + "💜/preferito_"+ str(i[0]) + "\n\n"
for j in listFilters:
if len(tickets.getTickets(int(j[0]), ticket_id)) == 0:
tickets.insertTicket(int(j[0]), ticket_id)
listOfStrings.append(str(ticketAsStringSingle))
# print("Lista ticket finale:: ",len(listOfStrings))
# print("\n\n\n")
return listOfStrings
def getDetailTicket(ticketId):
downloaded = detailTicket.getDetail(str(ticketId))
return downloaded
# newTicketList = getTicketTodayForNotification(145645559)
# for ticket in newTicketList:
# hole_message = ticket
# # print("Messaggio: ", ticket)
# # Guessing from other ticket
# prefix = "🎫 /Ticket_dettaglio_"
# ticket_value = ticket.split(prefix, 1)[-1].split("\n", 1)[0].strip()
# best_matches_indices = phrase_similarity.start_guessing_new(ticket_value)
# for ticket_info in best_matches_indices:
# # print("Gesing Ticket: ", str(ticket_info))
# hole_message += str(ticket_info)
# hole_message += "\n\n\n\n"
# print(hole_message)