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): | 	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() | 		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 Deadline(SeminarModelBase): | ||||||
| 	class Meta: | 	class Meta: | ||||||
|  |  | ||||||
|  | @ -3,13 +3,29 @@ | ||||||
| {% block content %} | {% block content %} | ||||||
|   <h1> |   <h1> | ||||||
|     {% block nadpis1a %} |     {% block nadpis1a %} | ||||||
|       Odměny {{ cislo }} |       Odměny | ||||||
|     {% endblock %} |     {% endblock %} | ||||||
|   </h1> |   </h1> | ||||||
|  | 
 | ||||||
|  |   <h2>Od prvního deadlinu {{ from_cislo }} do prvního deadlinu {{ to_cislo }}</h2> | ||||||
|   <ul> |   <ul> | ||||||
| 	  {% for z in zmeny %} | 	  {% for z in zmeny_prvni_prvni %} | ||||||
| 	  <li> {{z.jmeno}}: {{z.ftitul}} → {{z.ttitul}}</li> | 	  <li> {{z.jmeno}}: {{z.ftitul}} → {{z.ttitul}}</li> | ||||||
| 	  {% endfor %} | 	  {% 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 %} | {% endblock content %} | ||||||
|  |  | ||||||
|  | @ -477,17 +477,35 @@ class OdmenyView(generic.TemplateView): | ||||||
| 		fromcislo = Cislo.objects.get(rocnik=self.kwargs.get('frocnik'), poradi=self.kwargs.get('fcislo')) | 		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')) | 		tocislo = Cislo.objects.get(rocnik=self.kwargs.get('trocnik'), poradi=self.kwargs.get('tcislo')) | ||||||
| 		resitele = aktivniResitele(tocislo) | 		resitele = aktivniResitele(tocislo) | ||||||
| 		frombody = body_resitelu(resitele, fromcislo) | 
 | ||||||
| 		tobody = body_resitelu(resitele, tocislo) | 		def get_diff(from_deadline: Deadline, to_deadline: Deadline): | ||||||
| 		outlist = [] | 			frombody = body_resitelu(resitele=resitele, jen_verejne=False, do=from_deadline) | ||||||
| 		for (aid, tbody) in tobody.items(): | 			tobody = body_resitelu(resitele=resitele, jen_verejne=False, do=to_deadline) | ||||||
| 			fbody = frombody.get(aid,0) | 			outlist = [] | ||||||
| 			resitel = Resitel.objects.get(pk=aid) | 			for (aid, tbody) in tobody.items(): | ||||||
| 			ftitul = resitel.get_titul(fbody) | 				fbody = frombody.get(aid,0) | ||||||
| 			ttitul = resitel.get_titul(tbody) | 				resitel = Resitel.objects.get(pk=aid) | ||||||
| 			if ftitul != ttitul: | 				ftitul = resitel.get_titul(fbody) | ||||||
| 				outlist.append({'jmeno': resitel.osoba.plne_jmeno(), 'ftitul': ftitul, 'ttitul': ttitul}) | 				ttitul = resitel.get_titul(tbody) | ||||||
| 		context['zmeny'] = outlist | 				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 | 		return context | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue