Merge branch 'data_migrations' into test
This commit is contained in:
		
						commit
						7770dbf134
					
				
					 3 changed files with 17 additions and 12 deletions
				
			
		|  | @ -25,6 +25,7 @@ def resitel_to_osoba(apps,schema_editor): | |||
| 		o.telefon = r.telefon | ||||
| 		o.ulice = r.ulice | ||||
| 		o.user = r.user | ||||
| 		o.poznamka += f'\nWEB DEBUG: Osoba pro řešitele {r.id}' | ||||
| 		if o.user: | ||||
| 			u = o.user | ||||
| 			if u.first_name: | ||||
|  |  | |||
|  | @ -23,10 +23,11 @@ def spoj_k_organizatorum_osoby(apps, scema_editor): | |||
| 		if user is None: | ||||
| 			logger.error(f'Org {org} nemá uživatele!') | ||||
| 			# Je to podezřelé, ale prostě vyrobíme novou osobu. | ||||
| 			osoba = Osoba(user=user) | ||||
| 			osoba = Osoba() | ||||
| 			osoba.poznamka += f'\nWEB DEBUG: BUG: Osoba pro Orga {org.id} bez Uživatele' | ||||
| 			# Téhle osobě nejdou nastavit detaily, protože žádné nemáme. | ||||
| 			# Datum registrace budiž minimální | ||||
| 			osoba.datum_registrace = date.min | ||||
| 			# Datum registrace budiž maximální | ||||
| 			osoba.datum_registrace = date.max | ||||
| 		else: | ||||
| 			logger.info(f'Org {org.user.email}(ID: {org.id}) má uživatele {user}') | ||||
| 			# 💢💢💢 Python nemá goto, ale prý má výjimky… 💢💢💢 | ||||
|  | @ -36,6 +37,7 @@ def spoj_k_organizatorum_osoby(apps, scema_editor): | |||
| 				resitele = Resitel.objects.filter(user=user) | ||||
| 				if resitele.count() != 0 and user is not None: | ||||
| 					osoba = resitele.first().osoba | ||||
| 					osoba.poznamka += f'\nWEB DEBUG: Osoba pro Orga {org.id} spárovaná podle Uživatele Řešitele' | ||||
| 					logger.info(f'Našel jsem řešitele {resitele.first().email} podle uživatele, používám jeho Osobu') | ||||
| 					raise EndException | ||||
| 				 | ||||
|  | @ -45,12 +47,14 @@ def spoj_k_organizatorum_osoby(apps, scema_editor): | |||
| 					osoba = osoby.first() | ||||
| 					if osoba.user is None: | ||||
| 						osoba.user = user | ||||
| 					osoba.poznamka += f'\nWEB DEBUG: Osoba pro Orga {org.id} spárovaná podle e-mailu' | ||||
| 					logger.info(f'Našel jsem Osobu {osoby.first().email} podle e-mailu') | ||||
| 					raise EndException | ||||
| 
 | ||||
| 				# Fallback | ||||
| 				logger.warning(f'Org neměl řešitele, zakládám novou Osobu.') | ||||
| 				osoba = Osoba(user=user) | ||||
| 				osoba.poznamka += f'\nWEB DEBUG: Osoba pro Orga {org.id} vytvořena nová jen podle existence Uživatele' | ||||
| 
 | ||||
| 				# Přesun informací z usera do osoby | ||||
| 				# pro osoby z řešitelů (jediné dosud existující osoby) již v minule migraci | ||||
|  |  | |||
|  | @ -323,15 +323,15 @@ def deadline(datum): | |||
| 		datum = datum.date() | ||||
| 	rok = datum.year | ||||
| 	# Dva ročníky podezřelé z obsahování dat | ||||
| 	pozdejsi_rocnik = m.Rocnik.objects.filter(prvni_rok=rok) | ||||
| 	drivejsi_rocnik = m.Rocnik.objects.filter(prvni_rok=rok-1) | ||||
| 	if any([ | ||||
| 			pozdejsi_rocnik.count() > 1, | ||||
| 			drivejsi_rocnik.count() > 1, | ||||
| 			]): | ||||
| 		raise ValueError(f"Více ročníků začíná/končí stejným rokem: {rok}") | ||||
| 	pozdejsi_rocnik = pozdejsi_rocnik.first() if pozdejsi_rocnik.count() > 0 else None | ||||
| 	drivejsi_rocnik = drivejsi_rocnik.first() if drivejsi_rocnik.count() > 0 else None | ||||
| 	try: | ||||
| 		pozdejsi_rocnik = m.Rocnik.objects.get(prvni_rok=rok) | ||||
| 	except m.Rocnik.DoesNotExist: | ||||
| 		pozdejsi_rocnik = None | ||||
| 
 | ||||
| 	try: | ||||
| 		drivejsi_rocnik = m.Rocnik.objects.get(prvni_rok=rok-1) | ||||
| 	except m.Rocnik.DoesNotExist: | ||||
| 		drivejsi_rocnik = None | ||||
| 
 | ||||
| 	if drivejsi_rocnik is not None: | ||||
| 		# Předpokládáme, že neexistuje číslo, které má deadline ale nemá finální deadline. | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Pavel "LEdoian" Turinsky
						Pavel "LEdoian" Turinsky