load_district.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. from sicurezza.views import *
  2. import sys
  3. import csv
  4. from random import randint
  5. from django.core.exceptions import MultipleObjectsReturned
  6. file_da_leggere="./District-26-02-25.csv"
  7. print("Nome file:",file_da_leggere)
  8. lista=list()
  9. with open(file_da_leggere) as filecsv:
  10. lettore = csv.reader(filecsv,delimiter=",")
  11. header = next(lettore)
  12. print(header)
  13. for i in lettore:
  14. store = i[0].strip()
  15. login = '.'.join((i[1][0],i[1].split(' ')[1])).lower()
  16. nome = i[1]
  17. pin = str(randint(1000000,9999999))
  18. mail = i[2].strip()
  19. print('Store:',store,' Nome:',nome,' login:',login,' pin:',pin,' mail:',mail)
  20. lista.append({'store':store,
  21. 'login':login,
  22. 'nome':nome,
  23. 'pin': pin,
  24. 'mail': mail, })
  25. #print(lista)
  26. print("Numero di elementi da associare",len(lista))
  27. az = az=Azienda.objects.get(nome="JYSK Italia S.r.l.")
  28. print(az.nome)
  29. trovato = True
  30. for x in lista:
  31. login = x['login']
  32. print("Cazzo,",login)
  33. a = None
  34. try:
  35. a = Amministratore.objects.get(login=login)
  36. print("Trovato Amministratore ",a.login,end="")
  37. except Amministratore.DoesNotExist as dne:
  38. print('Genero amministratore: ',login,end="")
  39. a = Amministratore()
  40. a.login=login
  41. a.nome=x['nome']
  42. a.pin= x['pin']
  43. a.mail=x['mail']
  44. a.save()
  45. print("")
  46. se = None
  47. try:
  48. se = Sede.objects.get(identificativo=x['store'])
  49. print(" Sede nome:",se.identificativo,se.nome)
  50. except Sede.DoesNotExist as dne:
  51. print('Errore - Sede con id:',x[0]," non trovata")
  52. trovato = False
  53. except MultipleObjectsReturned as mor:
  54. print("Errore: multipli id",x[0])
  55. trovato = False
  56. if not se: print("CAZZO CAZZO CAZZO")
  57. setAZP(az,a,"AZIENDA")
  58. setSEP(se,a,"SEDE")
  59. setSEP(se,a,"UTENTE")
  60. setSEP(se,a,"DOCUMENTO")
  61. print("Trovato",trovato)
  62. with open('./district_list.csv','w',newline='') as fd:
  63. spamwriter = csv.writer(fd,delimiter=';',quotechar='|',quoting=csv.QUOTE_MINIMAL)
  64. old=""
  65. for x in lista:
  66. if old != x['nome']:
  67. spamwriter.writerow([x['nome'],x['login'],x['pin'],x['mail']])
  68. old = x['nome']