Skip to content
This repository has been archived by the owner on Jun 21, 2019. It is now read-only.

Commit

Permalink
FIX: unitime_id replaced with unitime_key, field names can not have _…
Browse files Browse the repository at this point in the history
…id suffix
  • Loading branch information
alirizakeles committed Jul 27, 2016
1 parent df08481 commit 0c239d9
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 17 deletions.
8 changes: 4 additions & 4 deletions ulakbus/lib/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,12 +73,12 @@ def ders_programi_doldurma(root):
cls = [child for child in root.iter('class') for i in child.iter('instructor') if i.get('solution') == 'true']

for child in cls:
ders_etkinlik = DersEtkinligi.objects.get(unitime_id=child.get('id'))
ders_etkinlik = DersEtkinligi.objects.get(unitime_key=child.get('id'))
ders_etkinlik.solved = True

for room in child.iter('room'):
if room.get('solution') == 'true':
room = Room.objects.get(unitime_id=room.get('id'))
room = Room.objects.get(unitime_key=room.get('id'))
ders_etkinlik.room = room
break

Expand Down Expand Up @@ -126,11 +126,11 @@ def sinav_etkinlikleri_oku(root):
for exam in exams.iter('exam'):
assignment = exam.find('assignment')
if assignment is not None:
etkinlik = SinavEtkinligi.objects.get(unitime_id=exam.get('id'))
etkinlik = SinavEtkinligi.objects.get(unitime_key=exam.get('id'))
period_id = assignment.find('period').get('id')
etkinlik.tarih = zamanlar[period_id]
etkinlik.solved = True
for period in assignment.iter('room'):
room = Room.objects.get(unitime_id=period.get('id'))
room = Room.objects.get(unitime_key=period.get('id'))
etkinlik.SinavYerleri.add(room=room)
etkinlik.save()
20 changes: 10 additions & 10 deletions ulakbus/lib/unitime.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,18 +39,18 @@ def _key2id(self, key):
"""Çakışmaları önleyerek pyoko key'lerinden solver id'leri oluşturur."""
if key in self._SOLVER_IDS:
return self._SOLVER_IDS[key]
unitime_id = hash(key) % SOLVER_MAX_ID
unitime_key = hash(key) % SOLVER_MAX_ID
# Çakışmalar çözülene kadar id değerini değiştir
while unitime_id in self._SOLVER_IDS.values():
unitime_id += 1
self._SOLVER_IDS[key] = unitime_id
return unitime_id
while unitime_key in self._SOLVER_IDS.values():
unitime_key += 1
self._SOLVER_IDS[key] = unitime_key
return unitime_key

def _room_id(self, room):
id_ = room.unitime_id
id_ = room.unitime_key
if id_ is None:
id_ = self._key2id(room.key)
room.unitime_id = id_
room.unitime_key = id_
room.save()
else:
# Daha sonraki çakışmaları önlemek için, görülen key'i kaydet
Expand Down Expand Up @@ -294,7 +294,7 @@ def _export_ders(self, writer, bolum, ders, program_sinirlama, sube_sinirlama):
# Çıkartılan ders için ders etkinliği kaydı oluştur
d = DersEtkinligi()
d.solved = False
d.unitime_id = sube_subpart_id
d.unitime_key = sube_subpart_id
d.unit_yoksis_no = bolum.yoksis_no
d.room_type = tur.sinif_turu()
d.okutman = okutman
Expand All @@ -305,7 +305,7 @@ def _export_ders(self, writer, bolum, ders, program_sinirlama, sube_sinirlama):
d.save()
# Derse uygun derslikleri çıkar
for derslik in uygun_derslikler:
writer.text_element('room', attrs={'id': '%i' % derslik.unitime_id, 'pref': '0'})
writer.text_element('room', attrs={'id': '%i' % derslik.unitime_key, 'pref': '0'})

writer.text_element('instructor', attrs={'id': '%i' % self._key2id(okutman.key)})
self._zamanlari_cikar(writer, okutman, tur, bolum)
Expand Down Expand Up @@ -532,7 +532,7 @@ def _sinavlar(self, bolum, sinav_turleri, zamanlar, odalar, writer):
'maxRooms': '%i' % self._SINAV_MAX_ODA,
}):
SinavEtkinligi(ders=ders, sube=sube, donem=donem, bolum=bolum,
unitime_id=sinav_id, published=False).save()
unitime_key=sinav_id, published=False).save()
uygun_zamanlar = filter(lambda z: z[0] >= sinav.sinav_suresi, zamanlar.items())
for zaman, zaman_idleri in uygun_zamanlar:
# Kısa süreli sınavların uzun zaman dilimlerine ayrılmasını önlemek için
Expand Down
2 changes: 1 addition & 1 deletion ulakbus/models/buildings_rooms.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ class Room(Model):
building = Building()

is_active = field.Boolean("Aktif", index=True)
unitime_id = field.String() # Ders/Sınav programları hazırlanırken id'leri eşleştirmek için
unitime_key = field.String() # Ders/Sınav programları hazırlanırken id'leri eşleştirmek için

class Meta:
verbose_name = "Oda"
Expand Down
4 changes: 2 additions & 2 deletions ulakbus/models/ders_programi_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class Meta:
search_fields = ['unit_yoksis_no', 'room', 'okutman']

solved = fields.Boolean('Ders Planı Çözüm Durumu', index=True)
unitime_id = fields.String(index=True) #class id
unitime_key = fields.String(index=True) #class id
unit_yoksis_no = fields.Integer('Bölüm Yöksis Numarası', index=True)
room_type = RoomType('İşleneceği Oda Türü', index=True)
okutman = Okutman("Öğretim Elemanı", index=True)
Expand Down Expand Up @@ -61,7 +61,7 @@ class Meta:
ders = Ders('Ders', index=True)
donem = Donem('Dönem', index=True)
bolum = Unit('Bölüm', index=True)
unitime_id = fields.String(index=True)
unitime_key = fields.String(index=True)
solved = fields.Boolean('Sınav Planı Çözüm Durumu', index=True, default=False)

published = fields.Boolean('Sınav Planı Yayınlanma Durumu', index=True, default=False)
Expand Down

0 comments on commit 0c239d9

Please sign in to comment.