Example #1
0
class Building(Model):
    """Bina Modeli

    Universite kampuslerindeki binalara ait data modeli. Bina kod ve adının yanısıra
    koordinat bilgilerini içerir.

    Bina koordinatları lokasyon bazlı hesaplamalar için kullanılacaktır. Özellikle
    Unitime ile ders programı hazırlarken farklı lokasyonlar arası zaman hesaplamalarında
    kullanılmaktadır.

    """

    code = field.String(_(u"Kod"), index=True)
    name = field.String(_(u"İsim"), index=True)
    coordinate_x = field.String(_(u"X Koordinatı"), index=True)
    coordinate_y = field.String(_(u"Y Koordinatı"), index=True)
    campus = Campus()

    class Meta:
        verbose_name = _(u"Bina")
        verbose_name_plural = _(u"Binalar")
        search_fields = ['code', 'name']
        list_fields = ['code', 'name']

    def __unicode__(self):
        return '%s %s %s %s' % (self.code, self.name, self.coordinates(),
                                self.campus)

    def coordinates(self):
        """"Koordinatlar

        Returns:
            x ve y koordınatlarını birlikte döndürür.
        """
        return '%s %s' % (self.coordinate_x, self.coordinate_y)
Example #2
0
class Campus(Model):
    """Kampüs Modeli

    Üniversite kampüslerine ait data modeli. Kampus adı ve koordinat bilgilerini içerir.

    Kampüs koordinatları lokasyon bazlı hesaplamalar için kullanılacaktır. Özellikle
    Unitime ile ders programı hazırlarken farklı lokasyonlar arası zaman hesaplamalarında
    kullanılmaktadır.

    """

    code = field.String(_(u"Kod"), index=True)
    name = field.String(_(u"İsim"), index=True)
    coordinate_x = field.String(_(u"X Koordinatı"), index=True)
    coordinate_y = field.String(_(u"Y Koordinatı"), index=True)

    class Meta:
        verbose_name = _(u"Yerleşke")
        verbose_name_plural = _(u"Yerleşkeler")
        search_fields = ['code', 'name']
        list_fields = ['code', 'name']

    def __unicode__(self):
        return '%s %s %s' % (self.code, self.name, self.coordinates())

    def coordinates(self):
        """Koordinatlar

        Returns:
            x ve y koordinatlarını birlikte döndürür.

        """
        return '%s %s' % (self.coordinate_x, self.coordinate_y)
Example #3
0
class Person(Model):
    first_name = field.String("Name", index=True)
    last_name = field.String("Surname", index=True)
    work = Unit(verbose_name="Work", reverse_name="workers")
    home = Unit(verbose_name="Home", reverse_name="residents")

    class ContactInfo(Node):
        address = field.String("Address", index=True, null=True, blank=True)
        city = field.String("City", index=True)
        phone = field.String("Phone", index=True)
        email = field.String("Email", index=True)

    class Permissions(ListNode):
        perm = Permission()

        def __unicode__(self):
            return self.perm

    def __unicode__(self):
        return "%s %s" % (self.first_name, self.last_name)

    def get_permission_codes(self):
        return [p.perm.code for p in self.Permissions]

    def add_permission(self, perm):
        self.Permissions(permission=perm)
        self.save()

    def has_permission(self, perm):
        return perm in self.Permissions

    def has_permission_code(self, perm_code):
        perm = Permission.object.get(code=perm_code)
        return self.has_permission(perm)
Example #4
0
class HizmetKurs(Model):
    tckn = field.String(_(u"TC Kimlik No"), index=True)
    kayit_no = field.String(_(u"Kursa Kayıt No"), index=True)
    kurs_ogrenim_suresi = field.Integer(_(u"Kurs Öğrenim Süresi"), index=True)
    mezuniyet_tarihi = field.Date(_(u"Mezuniyet Tarihi"),
                                  index=True,
                                  format="%d.%m.%Y")
    kurs_nevi = field.Integer(_(u"Kurs Nevi"), index=True, choices="kurs_nevi")
    bolum_ad = field.Integer(
        _(u"Bölüm Adı"), index=True,
        choices="bolum_adi")  # TODO: serviste karsiligi yok
    okul_ad = field.Integer(_(u"Okul Adı"), index=True,
                            choices="okul_adi")  # TODO: servisten gelen string
    ogrenim_yeri = field.String(_(u"Öğrenim Yeri"), index=True)
    denklik_tarihi = field.Date(_(u"Denklik Tarihi"),
                                index=True,
                                format="%d.%m.%Y")
    denklik_okulu = field.String(_(u"Denklik Okulu"), index=True)
    denklik_bolum = field.String(_(u"Denklik Bölüm"), index=True)
    kurum_onay_tarihi = field.Date(_(u"Kurum Onay Tarihi"),
                                   index=True,
                                   format="%d.%m.%Y")
    sync = field.Integer(_(u"Senkronize"), index=True)
    personel = Personel()

    class Meta:
        app = 'Personel'
        verbose_name = _(u"Kurs")
        verbose_name_plural = _(u"Kurslar")
        list_fields = ['kayit_no', 'bolum_ad', 'okul_ad']
        search_fields = ['tckn', 'okul_ad', 'bolum_ad']
        hitap_service_prefix = "HitapKurs"

    def __unicode__(self):
        return '%s %s %s' % (self.kurs_nevi, self.bolum_ad, self.okul_ad)
Example #5
0
class User(Model):
    username = field.String("Username", index=True)
    password = field.String("Password")
    superuser = field.Boolean("Super user", default=False)

    class Meta:
        list_fields = ['username', 'superuser']

    def __unicode__(self):
        return "User %s" % self.username

    def __repr__(self):
        return "User_%s" % self.key

    def set_password(self, raw_password):
        self.password = pbkdf2_sha512.encrypt(raw_password,
                                              rounds=10000,
                                              salt_size=10)

    def check_password(self, raw_password):
        return pbkdf2_sha512.verify(raw_password, self.password)

    def get_permissions(self):
        return (p.permission.code for p in self.Permissions)

    def get_role(self, role_id):
        return self.role_set.node_dict[role_id]
Example #6
0
class Borc(Model):
    """Borç modeli

    Öğrencilerin ödemesi gereken ücret (harc, belge, belgeler, kimlik
    ücretleri vb.) bilgilerinin saklandığı modeldir.

    ``tahakkuk_referans_no`` sistem tarafından üretilen ve
    3. taraflara (banka veya ilgili diğer kurumlar) iletilen tekil
    takip koddur.

    """

    miktar = field.Float(_(u"Borç Miktarı"), index=True)
    para_birimi = field.Integer(_(u"Para Birimi"),
                                index=True,
                                choices="para_birimleri")
    sebep = field.Integer(_(u"Borç Sebebi"),
                          index=True,
                          choices="ogrenci_borc_sebepleri")
    son_odeme_tarihi = field.Date(_(u"Son Ödeme Tarihi"), index=True)
    tahakkuk_referans_no = field.String(_(u"Tahakkuk Referans No"), index=True)
    aciklama = field.String(_(u"Borç Açıklaması"), index=True)
    ogrenci = Ogrenci()
    donem = Donem()

    class Meta:
        app = 'Ogrenci'
        verbose_name = _(u"Borç")
        verbose_name_plural = _(u"Borçlar")
        list_fields = ['miktar', 'son_odeme_tarihi']
        search_fields = ['miktar', 'odeme_tarihi']

    def __unicode__(self):
        return '%s %s %s %s' % (self.miktar, self.para_birimi, self.sebep,
                                self.son_odeme_tarihi)
Example #7
0
class Sinav(Model):
    """Sınav Modeli

    Derse ait sınav(ara sınav, genel sınav, bütünleme, tek ders, muafiyet)
    bilgilerinin saklandığı modeldir.

    Sınavlar şubeler için ders dolayısı ile otomatik açılırlar. Bu sebeple temel bağ Şube
    modelidir.

    Ders arama kolaylığı için eklenmiştir.

    """

    tarih = field.Date(_(u"Sınav Tarihi"), index=True)
    yapilacagi_yer = field.String(_(u"Yapılacağı Yer"), index=True)
    tur = field.Integer(_(u"Sınav Türü"), index=True, choices="sinav_turleri")
    aciklama = field.String(_(u"Açıklama"), index=True)
    sube = Sube()
    degerlendirme = field.Boolean(_(u"Değerlendirme Durumu"),
                                  index=True,
                                  default=False)

    # arama amacli
    ders = Ders()
    puan = field.Integer(_(u"Puan"), index=True)

    class Meta:
        app = 'Ogrenci'
        verbose_name = _(u"Sınav")
        verbose_name_plural = _(u"Sınavlar")
        list_fields = ['tarih', 'yapilacagi_yer']
        search_fields = ['aciklama', 'tarih']

    def __unicode__(self):
        return '%s %s' % (self.get_tur_display(), self.sube)
Example #8
0
class Room(Model):
    """Oda modeli

    Üniversitenin sahip olduğu odalara (sınıf, lab, amfi) ait data modelidir. Her odanın
    bir kodu bulunur.

    Odalar, binalara ve binalar aracılığıyla kampüslere bağlanır.

    """

    code = field.String(_(u"Kod"), index=True)
    name = field.String(_(u"İsim"), index=True)
    room_type = RoomType(_(u"Oda Tipi"), index=True)
    unit = Unit(_(u"Bölüm"))

    #: Bina içerisindeki kat bilgisi
    floor = field.String(_(u"Kat"), index=True)
    capacity = field.Integer(_(u"Kapasite"), index=True)
    building = Building()
    exam_capacity = field.Integer(_(u"Sınav Kapasitesi"))

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

    class Meta:
        verbose_name = _(u"Oda")
        verbose_name_plural = _(u"Odalar")
        search_fields = ['code', 'name']
        list_fields = ['code', 'name']

    def __unicode__(self):
        return '%s %s %s' % (self.code, self.name, self.capacity)
Example #9
0
class LimitedPermissions(Model):
    """LimitedPermissions modeli
    Bu modelde tutulan bilgilerle mevcut yetkilere sınırlandırmalar
    getirilir.

    - Başlangıç ve bitiş tarihine göre sınırlandırma uygulanan yetkiler
    o tarih aralığında geçerli olur.

    - Verilen IPList özelliğine göre bu IPList listesi içindeki
    ip'lerden gelen requestlere cevap verecek şekilde kısıtlanır.

    """
    restrictive = field.Boolean("Sınırlandırıcı", default=False)
    time_start = field.String("Başlama Tarihi", index=True)
    time_end = field.String("Bitiş Tarihi", index=True)

    class Meta:
        app = 'Sistem'
        verbose_name = "Sınırlandırılmış Yetki"
        verbose_name_plural = "Sınırlandırılmış Yetkiler"

    def __unicode__(self):
        return "%s - %s" % (self.time_start, self.time_end)

    class IPList(ListNode):
        ip = field.String()

    class Permissions(ListNode):
        permission = Permission()

    class AbstractRoles(ListNode):
        abstract_role = AbstractRole()

    class Roles(ListNode):
        role = Role()
Example #10
0
class Permission(Model):
    """
    Permission model
    """
    name = field.String(_(u"Name"), index=True)
    code = field.String(_(u"Code Name"), index=True)
    description = field.String(_(u"Description"), index=True)

    def __unicode__(self):
        return gettext(u"Permission %s") % self.name

    def get_permitted_users(self):
        """
        Get users which has this permission

        Returns:
            User list
        """
        return [r.role.user for r in self.role_set]

    def get_permitted_roles(self):
        """
        Get roles which has this permission

        Returns:
            Role list
        """
        return [rset.role for rset in self.role_set]
Example #11
0
class Odeme(Model):
    """Ödeme Modeli

    Öğrencilerin borçlarına karşılık, banka veya diğer yollar ile tahsil
    edilen ödemelerin saklandığı data modelidir.

    """

    miktar = field.Float("Borç Miktarı", index=True)
    para_birimi = field.Integer("Para Birimi",
                                index=True,
                                choices="para_birimleri")
    aciklama = field.String("Borç Açıklaması", index=True)
    odeme_sekli = field.Integer("Ödeme Şekli",
                                index=True,
                                choices="odeme_sekli")
    odeme_tarihi = field.Date("Ödeme Tarihi", index=True)
    borc = Borc()
    ogrenci = Ogrenci()
    banka = Banka()
    banka_sube_kodu = field.String("Banka Sube Kodu", index=True)
    banka_kanal_kodu = field.String("Kanal Kodu", index=True)
    tahsilat_referans_no = field.String("Tahsilat Referans No", index=True)
    donem = Donem()

    class Meta:
        app = 'Ogrenci'
        verbose_name = "Borc"
        verbose_name_plural = "Borclar"
        list_fields = ['miktar', 'son_odeme_tarihi']
        search_fields = ['miktar', 'odeme_tarihi']

    def __unicode__(self):
        return '%s %s %s %s' % (self.miktar, self.para_birimi, self.sebep,
                                format_date(self.son_odeme_tarihi))
Example #12
0
 class Pool(ListNode):
     order = field.Integer(__(u"Lane order"))
     actor_name = field.String(__(u"Actor name"))
     wf_name = field.String(__(u"Actor specific name of WF"))
     relations = field.String(__(u"Lane relations"))
     possible_owners = field.String(__(u"Possible owners"))
     permissions = field.String(__(u"Permissions"))
Example #13
0
class DiagramXML(Model):
    """
    Diagram XML versions
    """
    body = field.String(__(u"XML content"), index=False)
    name = field.String(__(u"Name"))

    @classmethod
    def get_or_create_by_content(cls, name, content):
        """
        if xml content updated, create a new entry for given wf name
        Args:
            name: name of wf
            content: xml content

        Returns (DiagramXML(), bool): A tuple with two members.
        (DiagramXML instance and True if it's new or False it's already exists
        """
        new = False
        diagrams = cls.objects.filter(name=name)
        if diagrams:
            diagram = diagrams[0]
            if diagram.body != content:
                new = True
        else:
            new = True
        if new:
            diagram = cls(name=name, body=content).save()
        return diagram, new

    def __unicode__(self):
        return "%s [%s]" % (self.name, self.get_humane_value('timestamp'))
Example #14
0
class SaglikRaporu(Model):
    personel = Personel(_(u"Raporu Alan Personel"))
    rapor_cesidi = field.Integer(_(u"Rapor Çeşidi"),
                                 choices='saglik_raporu_cesitleri',
                                 required=True)
    sure = field.Integer(_(u"Gün"), required=True)
    baslama_tarihi = field.Date(_(u"Rapor Başlanğıç Tarihi"), required=True)
    bitis_tarihi = field.Date(_(u"Raporlu Olduğu Son Gün"), required=True)
    onay_tarihi = field.Date(_(u"Onay Tarihi"), required=True)
    raporun_alindigi_il = field.Integer(_(u"Raporun Alındığı İl"),
                                        choices='iller',
                                        required=False)
    nerden_alindigi = field.String(_(u"Sağlık Raporunun Alındığı Kurum"),
                                   required=True)
    gecirecegi_adres = field.Text(_(u"Geçireceği Adres"), required=False)
    telefon = field.String(_(u"Telefon Numarası"), required=False)

    class Meta:
        verbose_name = _(u"Sağlık Raporu")
        verbose_name_plural = _(u"Sağlık Raporları")
        list_fields = ['rapor_cesidi', 'sure', 'bitis_tarihi']

    def __unicode__(self):
        return "%s %s - %s - %s" % (self.personel.ad, self.personel.soyad,
                                    self.get_rapor_cesidi_display(),
                                    self.bitis_tarihi)
Example #15
0
class ZamanDilimleri(Model):
    class Meta:
        verbose_name = _(u"Zaman Dilimi")
        verbose_name_plural = _(u"Zaman Dilimleri")
        unique_together = [('birim', 'gun_dilimi')]
        search_fields = ['birim', 'gun_dilimi']

    birim = Unit(_(u'Bölüm'))
    gun_dilimi = field.Integer(_(u'Gün Dilimi'), choices=gun_dilimi_listele, index=True)

    baslama_saat = field.String(_(u"Başlama Saati"), index=True)
    baslama_dakika = field.String(_(u"Başlama Dakikası"), index=True)

    bitis_saat = field.String(_(u"Bitiş Saati"), index=True)
    bitis_dakika = field.String(_(u"Bitiş Dakikası"), index=True)

    # Ara suresi de dahil. Ornek olarak 30 girildiyse ders 9, 9.30, 10 gibi surelerde baslayabilir.
    ders_araligi = field.Integer(_(u'Ders Süresi'), default=60, index=True)
    ara_suresi = field.Integer(_(u'Tenefüs Süresi'), default=10, index=True)

    zaman_dilimi_suresi = field.Integer(_(u"Zaman Dilimi Süresi"), index=True)

    def pre_save(self):
        self.zaman_dilimi_suresi = int(self.bitis_saat) - int(self.baslama_saat)

    def __unicode__(self):
        return '%s - %s|%s' % (
            dict(gun_dilimi_listele())[int(self.gun_dilimi)],
            format_time(time(int(self.baslama_saat), int(self.baslama_dakika))),
            format_time(time(int(self.baslama_dakika), int(self.bitis_dakika))),
        )
Example #16
0
class HizmetTazminat(Model):
    kayit_no = field.String(_(u"Kayıt No"), index=True)
    tckn = field.String(_(u"TC Kimlik No"), index=True)
    unvan_kod = field.Integer(_(u"Ünvan Kodu"), index=True)
    makam = field.Integer(_(u"Makam"), index=True)
    gorev = field.Integer(_(u"Görev"), index=True)
    temsil = field.Integer(_(u"Temsil"), index=True)
    tazminat_tarihi = field.Date(_(u"Tazminat Tarihi"),
                                 index=True,
                                 format="%d.%m.%Y")
    tazminat_bitis_tarihi = field.Date(_(u"Tazminat Bitiş Tarihi"),
                                       index=True,
                                       format="%d.%m.%Y")
    kadrosuzluk = field.Integer(_(u"Kadrosuzluk"), index=True)
    kurum_onay_tarihi = field.Date(_(u"Kurum Onay Tarihi"),
                                   index=True,
                                   format="%d.%m.%Y")
    sync = field.Integer(_(u"Senkronize"), index=True)
    personel = Personel()

    class Meta:
        app = 'Personel'
        verbose_name = _(u"Tazminat")
        verbose_name_plural = _(u"Tazminatlar")
        list_fields = ['unvan_kod', 'makam', 'gorev']
        search_fields = ['makam', 'gorev', 'temsil']
        hitap_service_prefix = "HitapTazminat"

    def __unicode__(self):
        return '%s %s' % (self.gorev, self.tazminat_tarihi)
Example #17
0
class Permission(Model):
    name = field.String("Name", index=True)
    code = field.String("Code Name", index=True)
    description = field.String("Description", index=True)

    def __unicode__(self):
        return "Permission %s" % self.name
Example #18
0
class HizmetUnvan(Model):
    kayit_no = field.String(_(u"Hizmet Kayıt No"), index=True)
    tckn = field.String(_(u"TC Kimlik No"), index=True)
    unvan_kod = field.Integer(_(u"Ünvan Kodu"), index=True)
    unvan_tarihi = field.Date(_(u"Ünvan Tarihi"),
                              index=True,
                              format="%d.%m.%Y")
    unvan_bitis_tarihi = field.Date(_(u"Ünvan Bitiş Tarihi"),
                                    index=True,
                                    format="%d.%m.%Y")
    hizmet_sinifi = field.String(_(u"Hizmet Sınıfı"), index=True)
    asil_vekil = field.String(_(u"Asıl Vekil"), index=True)
    atama_sekli = field.String(_(u"Atama Sekli"), index=True)
    kurum_onay_tarihi = field.Date(_(u"Kurum Onay Tarihi"),
                                   index=True,
                                   format="%d.%m.%Y")
    fhz_orani = field.Float(_(u"FHZ Oranı"), index=True)
    sync = field.Integer(_(u"Senkronize"), index=True)
    personel = Personel()

    class Meta:
        app = 'Personel'
        verbose_name = _(u"Ünvan")
        verbose_name_plural = _(u"Ünvanlar")
        list_fields = ['unvan_kod', 'hizmet_sinifi', 'kurum_onay_tarihi']
        search_fields = ['unvan_kod', 'hizmet_sinifi']
        hitap_service_prefix = "HitapUnvan"

    def __unicode__(self):
        return '%s %s' % (self.unvan_kod, self.hizmet_sinifi)
Example #19
0
class Izin(Model):
    """İzin Modeli

    Personelin ücretli izin bilgilerini içeren modeldir.

    """

    tip = field.Integer(_(u"Tip"), choices="izin")
    baslangic = field.Date(_(u"Başlangıç"), format="%d.%m.%Y")
    bitis = field.Date(_(u"Bitiş"), format="%d.%m.%Y")
    onay = field.Date(_(u"Onay"), format="%d.%m.%Y")
    adres = field.String(_(u"Geçireği Adres"))
    telefon = field.String(_(u"Telefon"))
    personel = Personel()
    vekil = Personel()

    class Meta:
        app = 'Personel'
        verbose_name = _(u"İzin")
        verbose_name_plural = _(u"İzinler")
        list_fields = ['tip', 'baslangic', 'bitis', 'onay', 'telefon']
        search_fields = ['tip', 'baslangic', 'onay']

    def __unicode__(self):
        return '%s %s' % (self.tip, self.onay)
Example #20
0
class HizmetIstisnaiIlgi(Model):
    tckn = field.String(_(u"TC Kimlik No"), index=True)
    kayit_no = field.String(_(u"Kayıt No"), index=True)
    baslama_tarihi = field.Date(_(u"Başlama Tarihi"),
                                index=True,
                                format="%d.%m.%Y")
    bitis_tarihi = field.Date(_(u"Bitiş Tarihi"),
                              index=True,
                              format="%d.%m.%Y")
    gun_sayisi = field.Integer(_(u"Gün Sayısı"), index=True)
    istisnai_ilgi_nevi = field.Integer(_(u"İstisnai İlgi Nevi"), index=True)
    kha_durum = field.Integer(_(u"KHA Durum"), index=True, choices="kha_durum")
    kurum_onay_tarihi = field.Date(_(u"Kurum Onay Tarihi"),
                                   index=True,
                                   format="%d.%m.%Y")
    sync = field.Integer(_(u"Senkronize"), index=True)
    personel = Personel()

    class Meta:
        app = 'Personel'
        verbose_name = _(u"İstisnai İlgi")
        verbose_name_plural = _(u"İstisnai İlgiler")
        list_fields = [
            'baslama_tarihi', 'bitis_tarihi', 'istisnai_ilgi_nevi', 'kha_durum'
        ]
        search_fields = ['istisnai_ilgi_nevi', 'kha_durum']
        hitap_service_prefix = "HitapIstisnaiIlgi"

    def __unicode__(self):
        return '%s %s %s' % (self.kayit_no, self.istisnai_ilgi_nevi,
                             self.kha_durum)
Example #21
0
class BAPSatinAlma(Model):
    class Meta:
        verbose_name = __(u"Bütçe Kalemi Satın Alma")
        verbose_name_plural = __(u"Bütçe Kalemi Satın Almaları")
        list_fields = ['ad', 'teklife_acilma_tarihi', 'teklife_kapanma_tarihi']

    ad = field.String(__(u"Satın Alma Duyuru Adı"))
    teklife_acilma_tarihi = field.DateTime(__(u"Teklife Açılma Tarihi"))
    teklife_kapanma_tarihi = field.DateTime(__(u"Teklife Kapanma Tarihi"))
    sonuclanma_tarihi = field.Date(__(u"Teklifin Sonuçlanma Tarihi"))
    onay_tarih_sayi = field.String(__(u"Onay Tarih/Sayı"))
    ekleyen = Personel()
    aciklama = field.Text(__(u"Açıklama"))
    teklif_durum = field.Integer(__(u"Teklif Durum"),
                                 choices='bap_satin_alma_durum')
    ilgili_proje = BAPProje()
    tek_firma = BAPFirma()
    tur = field.Integer(_(u"Satın Alma Türü"),
                        choices='bap_satin_alma_turleri')
    duyuruda = field.Boolean(_(u"Duyuru Durumu"), default=False)
    sorumlu = Role()
    duyuruda = field.Boolean(__(u"Duyurulma Durumu"), default=False)

    class ButceKalemleri(ListNode):
        butce = BAPButcePlani()

    def __unicode__(self):
        return "%s" % self.ad
Example #22
0
class BAPFirma(Model):
    class Meta:
        verbose_name = __(u"Firma")
        verbose_name_plural = __(u"Firmalar")
        list_fields = ['ad', 'vergi_no']
        unique_together = [('vergi_no', 'vergi_dairesi')]

    ad = field.String(__(u"Firma Adı"), required=True)
    telefon = field.String(__(u"Telefon"), required=True)
    adres = field.String(__(u"Adres"), required=True)
    e_posta = field.String(__(u"E-posta Adresi"), required=True, unique=True)
    vergi_no = field.String(__(u"Vergi Kimlik Numarası"), required=True)
    vergi_dairesi = field.Integer(__(u"Vergi Dairesi"),
                                  choices='vergi_daireleri',
                                  required=True)
    faaliyet_belgesi = field.File(_(u"Firma Faaliyet Belgesi"),
                                  random_name=False,
                                  required=True)
    faaliyet_belgesi_verilis_tarihi = field.Date(
        __(u"Faaliyet Belgesi Veriliş Tarihi"), required=True)
    durum = field.Integer(__(u"Durum"), choices='bap_firma_durum')

    class Yetkililer(ListNode):
        yetkili = User()

    def __unicode__(self):
        return "%s" % self.ad
Example #23
0
class OgrenciProgram(Model):
    """Öğrenci Program Modeli

    Öğrencilerin kayıt yaptırdığı programların saklandığı modeldir.

    Öğrenciler birden fazla programa kayıt yaptırabilirler. Herbir program için ayrı bir öğrenci
    numarası alırlar.

    Aktif dönem öğrencinin ilgili programda geldiği aşamayı ifade eder. Buna göre ilgili program
    derslerinden faydalanabilir.

    Başarı durumu, Genel Ağırlıklı Not Ortalamasını ifade eder:
    http://www.ulakbus.org/wiki/standart_fakulteler_icin_yazilim_ihtiyac_analizi_belgesi.html#basari-hesaplama

    Öğrencinin ilgili programdaki danışman bilgisi de burada saklanır.

    """

    ogrenci_no = field.String(_(u"Öğrenci Numarası"), index=True)
    giris_tarihi = field.Date(_(u"Giriş Tarihi"), index=True, format="%d.%m.%Y")
    mezuniyet_tarihi = field.Date(_(u"Mezuniyet Tarihi"), index=True, format="%d.%m.%Y")
    giris_puan_turu = field.Integer(_(u"Puan Türü"), index=True, choices="giris_puan_turleri")
    giris_puani = field.Float(_(u"Giriş Puani"), index=True)
    aktif_donem = field.String(_(u"Dönem"), index=True)
    ogrencilik_statusu = field.Integer(_(u'Öğrencilik Statüsü'), index=True,
                                       choices="ogrenci_program_durumlar")
    ogrenci_ders_kayit_status = field.Integer(_(u'Öğrencilik Ders Kayıt Statüsü'), index=True,
                                              choices="ogrenci_ders_kayit_durum")
    ayrilma_nedeni = field.Integer(_(u'Ayrılma Nedeni'), index=True, choices='ayrilma_nedeni')
    basari_durumu = field.String(_(u"Başarı Durumu"), index=True)
    diploma_no = field.String(_(u"Diploma No"), index=True)
    ders_programi = DersProgrami()
    danisman = Personel()
    program = Program()
    ogrenci = Ogrenci()
    bagli_oldugu_bolum = Unit(_(u"Bölüm"))

    class Meta:
        app = 'Ogrenci'
        verbose_name = _(u"Öğrenci Programı")
        verbose_name_plural = _(u"Öğrenci Programları")

    class Belgeler(ListNode):
        tip = field.Integer(_(u"Belge Tipi"), choices="belge_tip", index=True)
        aciklama = field.String(_(u"Ek Açıklama"), index=True, default="-", required=False)
        tamam = field.Boolean(_(u"Belge kontrol edildi"), index=True, required=True)

    class OgrenciDonem(ListNode):
        donem = Donem()

    def __unicode__(self):
        return '%s - %s / %s' % (self.ogrenci, self.program.adi, self.program.yil)

    def tarih_sirasiyla_donemler(self):
        r = []
        for ogd in self.OgrenciDonem:
            r.append((ogd.donem.ad, ogd.donem.baslangic_tarihi))
        r.sort(key=lambda tup: tup[1])
        return r
Example #24
0
    class ProjeIslemGecmisi(ListNode):
        class Meta:
            verbose_name = __(u"İşlem Geçmişi")
            verbose_name_plural = __(u"İşlem Geçmişi")

        eylem = field.String(_(u"Eylem"))
        aciklama = field.String(_(u"Açıklama"))
        tarih = field.DateTime(_(u"Tarih"))
Example #25
0
class HizmetAcikSure(Model):
    tckn = field.String("TC Kimlik No", index=True)
    kayit_no = field.String("Kayıt No", index=True)
    acik_sekil = field.Integer("Açığa Alınma Şekli",
                               index=True,
                               choices="acik_sekli")
    iade_sekil = field.Integer("İade Şekil", index=True)
    hizmet_durum = field.Integer("Hizmet Durumu",
                                 index=True,
                                 choices="hizmet_durumu")
    husus = field.Integer("Husus", index=True, choices="husus")
    husus_aciklama = field.String("Husus Açıklaması", index=True)
    aciga_alinma_tarih = field.Date("Açığa Alınma Tarihi",
                                    index=True,
                                    format="%d.%m.%Y")
    goreve_son_tarih = field.Date("Göreve Son Tarih",
                                  index=True,
                                  format="%d.%m.%Y")
    goreve_iade_istem_tarih = field.Date("Göreve İade İstem Tarihi",
                                         index=True,
                                         format="%d.%m.%Y")
    goreve_iade_tarih = field.Date("Göreve İade Tarihi",
                                   index=True,
                                   format="%d.%m.%Y")
    acik_aylik_bas_tarih = field.Date("Açık Aylık Başlama Tarihi",
                                      index=True,
                                      format="%d.%m.%Y")
    acik_aylik_bit_tarih = field.Date("Açık Aylık Bitiş Tarihi",
                                      index=True,
                                      format="%d.%m.%Y")
    goreve_son_aylik_bas_tarih = field.Date(
        "Göreve Sonlandırma Aylık Başlangıç Tarihi",
        index=True,
        format="%d.%m.%Y")
    goreve_son_aylik_bit_tarih = field.Date(
        "Göreve Sonlandırma Aylık Bitiş Tarihi", index=True, format="%d.%m.%Y")
    s_yonetim_kald_tarih = field.Date("Sıkı Yönetim Kaldırıldığı Tarih",
                                      index=True,
                                      format="%d.%m.%Y")
    aciktan_atanma_tarih = field.Date("Açıktan Atanma Tarihi",
                                      index=True,
                                      format="%d.%m.%Y")
    kurum_onay_tarihi = field.Date("Kurum Onay Tarihi",
                                   index=True,
                                   format="%d.%m.%Y")
    sync = field.Integer("Senkronize", index=True)
    personel = Personel()

    class Meta:
        app = 'Personel'
        verbose_name = "Açığa Alınma"
        verbose_name_plural = "Açığa Alınmalar"
        list_fields = ['acik_sekil', 'aciga_alinma_tarih', 'kurum_onay_tarihi']
        search_fields = ['hizmet_durum', 'acik_sekil', 'aciga_alinma_tarih']

    def __unicode__(self):
        return '%s %s %s' % (self.iade_sekil, self.kayit_no,
                             self.aciga_alinma_tarih)
Example #26
0
class ZatoServiceFile(Model):

    cluster_id = field.Integer(__(u'Zato cluster'))
    service_payload_name = field.String(__(u"Module’s file name"))
    service_payload = field.String(__(u"BASE64-encoded"))
    deploy = field.Boolean(__(u"Deploy Service"), default=False)

    def __unicode__(self):
        return self.service_payload_name
Example #27
0
    class BAPHakem(ListNode):
        class Meta:
            verbose_name = __(u"Hakem")
            verbose_name_plural = __(u"Hakemler")

        ad = field.String(_(u"Ad"))
        soyad = field.String(_(u"Soyad"))
        # todo hakemler sorulacak
        birim = field.String(_(u"Birim"))
Example #28
0
    class ProjeCalisanlari(ListNode):
        class Meta:
            verbose_name = __(u"Proje Çalışanı")
            verbose_name_plural = __(u"Proje Çalışanları")

        ad = field.String(_(u"Ad"))
        soyad = field.String(_(u"Soyad"))
        nitelik = field.String(_(u"Nitelik"))
        calismaya_katkisi = field.String(_(u"Çalışmaya Katkısı"))
        kurum = field.String(_(u"Kurum"))
Example #29
0
class Permission(Model):
    name = field.String("Name", index=True)
    code = field.String("Code Name", index=True)

    class Meta:
        verbose_name = "Permission"
        verbose_name_plural = "Permissions"

    def __unicode__(self):
        return "%s %s" % (self.name, self.code)
Example #30
0
class Unit(Model):
    name = field.String("Name", index=True)
    address = field.String("Address", index=True, null=True, blank=True)

    class Meta:
        verbose_name = "Unit"
        verbose_name_plural = "Units"

    def __unicode__(self):
        return self.name