att
This commit is contained in:
parent
9118096bee
commit
28909f6727
@ -1,8 +1,15 @@
|
||||
import os
|
||||
import requests
|
||||
import pyodbc
|
||||
import subprocess
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
# Configurações de rede
|
||||
NETWORK_SHARE = "//10.77.77.11/Contabilidade"
|
||||
MOUNT_POINT = "/mnt/contabilidade"
|
||||
SMB_USERNAME = "andrey.cunha" # ⚠️ ALTERE AQUI
|
||||
SMB_PASSWORD = "88253332Wa@" # ⚠️ ALTERE AQUI
|
||||
|
||||
# Caminho para Linux (compartilhamento de rede montado)
|
||||
OUTPUT_DIR_BASE = "/mnt/contabilidade/AUTOMAÇÃO/NotadeDebito"
|
||||
|
||||
@ -14,6 +21,50 @@ DB_CONN = (
|
||||
"PWD=88253332Wa@;"
|
||||
)
|
||||
|
||||
# 🔧 Montar compartilhamento de rede
|
||||
def mount_network_share():
|
||||
print("📁 Montando compartilhamento de rede...")
|
||||
try:
|
||||
# Criar ponto de montagem se não existir
|
||||
os.makedirs(MOUNT_POINT, exist_ok=True)
|
||||
|
||||
# Verificar se já está montado
|
||||
result = subprocess.run(['mountpoint', '-q', MOUNT_POINT], capture_output=True)
|
||||
if result.returncode == 0:
|
||||
print("✅ Compartilhamento já está montado.")
|
||||
return True
|
||||
|
||||
# Montar o compartilhamento
|
||||
mount_cmd = [
|
||||
'sudo', 'mount', '-t', 'cifs',
|
||||
NETWORK_SHARE,
|
||||
MOUNT_POINT,
|
||||
'-o', f'username={SMB_USERNAME},password={SMB_PASSWORD},iocharset=utf8'
|
||||
]
|
||||
result = subprocess.run(mount_cmd, capture_output=True, text=True)
|
||||
|
||||
if result.returncode == 0:
|
||||
print("✅ Compartilhamento montado com sucesso.")
|
||||
return True
|
||||
else:
|
||||
print(f"❌ Erro ao montar: {result.stderr}")
|
||||
return False
|
||||
except Exception as e:
|
||||
print(f"❌ Erro ao montar compartilhamento: {e}")
|
||||
return False
|
||||
|
||||
# 🔧 Desmontar compartilhamento de rede
|
||||
def unmount_network_share():
|
||||
print("📁 Desmontando compartilhamento de rede...")
|
||||
try:
|
||||
result = subprocess.run(['sudo', 'umount', MOUNT_POINT], capture_output=True, text=True)
|
||||
if result.returncode == 0:
|
||||
print("✅ Compartilhamento desmontado com sucesso.")
|
||||
else:
|
||||
print(f"⚠️ Aviso ao desmontar: {result.stderr}")
|
||||
except Exception as e:
|
||||
print(f"⚠️ Erro ao desmontar compartilhamento: {e}")
|
||||
|
||||
# 1️⃣ Token
|
||||
def get_token():
|
||||
print("🔐 Obtendo token...")
|
||||
@ -152,12 +203,18 @@ def download_pdf(token, franchise_id, doc_id, image_name, invoice_date):
|
||||
|
||||
# 🚀 Main
|
||||
def main():
|
||||
# Montar compartilhamento de rede
|
||||
if not mount_network_share():
|
||||
print("❌ Não foi possível montar o compartilhamento. Abortando.")
|
||||
return
|
||||
|
||||
try:
|
||||
token = get_token()
|
||||
conn = pyodbc.connect(DB_CONN)
|
||||
cursor = conn.cursor()
|
||||
|
||||
# Filtrar apenas notas do dia 29-10-2025
|
||||
data_especifica = datetime(2025, 10, 29)
|
||||
data_especifica = datetime(2025, 10, 27)
|
||||
todos = get_all_documents(token)
|
||||
documentos = filter_documents_by_date(todos, data_especifica, data_especifica)
|
||||
|
||||
@ -175,5 +232,12 @@ def main():
|
||||
print(f"\n✅ Finalizado. {novos} novos registros, {ignorados} já existiam.")
|
||||
print(f"🕓 Execução concluída em {datetime.now().strftime('%H:%M:%S')}")
|
||||
|
||||
except Exception as e:
|
||||
print(f"❌ Erro durante execução: {e}")
|
||||
|
||||
finally:
|
||||
# Desmontar compartilhamento de rede
|
||||
unmount_network_share()
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user