Odměny
This commit is contained in:
		
							parent
							
								
									e442a87421
								
							
						
					
					
						commit
						c7332119ac
					
				
					 3 changed files with 51 additions and 14 deletions
				
			
		|  | @ -331,6 +331,9 @@ class Cislo(SeminarModelBase): | |||
| 	def zlomovy_deadline_pro_papirove_cislo(self): | ||||
| 		return Deadline.objects.filter(Q(typ=Deadline.TYP_PRVNI) | Q(typ=Deadline.TYP_PRVNI_A_SOUS), cislo=self).first() | ||||
| 
 | ||||
| 	@property | ||||
| 	def posledni_deadline(self): | ||||
| 		return self.deadline_v_cisle.all().last() | ||||
| 
 | ||||
| class Deadline(SeminarModelBase): | ||||
| 	class Meta: | ||||
|  |  | |||
|  | @ -3,13 +3,29 @@ | |||
| {% block content %} | ||||
|   <h1> | ||||
|     {% block nadpis1a %} | ||||
|       Odměny {{ cislo }} | ||||
|       Odměny | ||||
|     {% endblock %} | ||||
|   </h1> | ||||
| 
 | ||||
|   <h2>Od prvního deadlinu {{ from_cislo }} do prvního deadlinu {{ to_cislo }}</h2> | ||||
|   <ul> | ||||
| 	  {% for z in zmeny %} | ||||
| 	  {% for z in zmeny_prvni_prvni %} | ||||
| 	  <li> {{z.jmeno}}: {{z.ftitul}} → {{z.ttitul}}</li> | ||||
| 	  {% endfor %} | ||||
|   </ul>  | ||||
|   </ul> | ||||
| 
 | ||||
|   <h2>Od {{ from_cislo }} do prvního deadlinu {{ to_cislo }} (pro první číslo)</h2> | ||||
|   <ul> | ||||
| 	  {% for z in zmeny_posledni_prvni %} | ||||
| 	  <li> {{z.jmeno}}: {{z.ftitul}} → {{z.ttitul}}</li> | ||||
| 	  {% endfor %} | ||||
|   </ul> | ||||
| 
 | ||||
|   <h2>Od prvního deadlinu {{ from_cislo }} do {{ to_cislo }} (pro poslední číslo)</h2> | ||||
|   <ul> | ||||
| 	  {% for z in zmeny_prvni_posledni %} | ||||
| 	  <li> {{z.jmeno}}: {{z.ftitul}} → {{z.ttitul}}</li> | ||||
| 	  {% endfor %} | ||||
|   </ul> | ||||
| 
 | ||||
| {% endblock content %} | ||||
|  |  | |||
|  | @ -477,17 +477,35 @@ class OdmenyView(generic.TemplateView): | |||
| 		fromcislo = Cislo.objects.get(rocnik=self.kwargs.get('frocnik'), poradi=self.kwargs.get('fcislo')) | ||||
| 		tocislo = Cislo.objects.get(rocnik=self.kwargs.get('trocnik'), poradi=self.kwargs.get('tcislo')) | ||||
| 		resitele = aktivniResitele(tocislo) | ||||
| 		frombody = body_resitelu(resitele, fromcislo) | ||||
| 		tobody = body_resitelu(resitele, tocislo) | ||||
| 		outlist = [] | ||||
| 		for (aid, tbody) in tobody.items(): | ||||
| 			fbody = frombody.get(aid,0) | ||||
| 			resitel = Resitel.objects.get(pk=aid) | ||||
| 			ftitul = resitel.get_titul(fbody) | ||||
| 			ttitul = resitel.get_titul(tbody) | ||||
| 			if ftitul != ttitul: | ||||
| 				outlist.append({'jmeno': resitel.osoba.plne_jmeno(), 'ftitul': ftitul, 'ttitul': ttitul}) | ||||
| 		context['zmeny'] = outlist | ||||
| 
 | ||||
| 		def get_diff(from_deadline: Deadline, to_deadline: Deadline): | ||||
| 			frombody = body_resitelu(resitele=resitele, jen_verejne=False, do=from_deadline) | ||||
| 			tobody = body_resitelu(resitele=resitele, jen_verejne=False, do=to_deadline) | ||||
| 			outlist = [] | ||||
| 			for (aid, tbody) in tobody.items(): | ||||
| 				fbody = frombody.get(aid,0) | ||||
| 				resitel = Resitel.objects.get(pk=aid) | ||||
| 				ftitul = resitel.get_titul(fbody) | ||||
| 				ttitul = resitel.get_titul(tbody) | ||||
| 				if ftitul != ttitul: | ||||
| 					outlist.append({'jmeno': resitel.osoba.plne_jmeno(), 'ftitul': ftitul, 'ttitul': ttitul}) | ||||
| 			return outlist | ||||
| 
 | ||||
| 		context["from_cislo"] = fromcislo | ||||
| 		context["to_cislo"] = tocislo | ||||
| 		context["zmeny_prvni_prvni"] = get_diff( | ||||
| 			fromcislo.zlomovy_deadline_pro_papirove_cislo(), | ||||
| 			tocislo.zlomovy_deadline_pro_papirove_cislo() | ||||
| 		) | ||||
| 		context["zmeny_prvni_posledni"] = get_diff( | ||||
| 			fromcislo.zlomovy_deadline_pro_papirove_cislo(), | ||||
| 			tocislo.posledni_deadline | ||||
| 		) | ||||
| 		context["zmeny_posledni_prvni"] = get_diff( | ||||
| 			fromcislo.posledni_deadline, | ||||
| 			tocislo.zlomovy_deadline_pro_papirove_cislo() | ||||
| 		) | ||||
| 
 | ||||
| 		return context | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue