
Şirkette bulunan personelin verileri tutan bir program yazdım. Temel işleyişi ; iş başlangıcı yapan personelin bilgileri bu programa kayıt ediliyor. İstediğimiz personeli bulabiliyoruz , şirketteki tüm personel bilgilerine ulaşabiliyoruz, personel çıkışı yapabiliyoruz ve personel maaşına zam yapabiliyoruz. Projem bu şekilde çalışmakta. Python Nesne Yönetimli Programla (OOP ) kullanarak oluşturdum. Fonksiyonlar ve program arayüzü aynı sayfada bulunuyor. Çalışan ve Personel olmak üzere iki adet class bulunuyor. Çalışan class’ı personel bilgilerini girmemizi sağlıyor. Personel class’ı ise içerisinde işlem yapan fonksiyonlar bulunduruyor.
Girdiğim verileri bir personel.db veri tabanında barındırıyorum. Bunun için Python da bulunan “sqlite3” modülünü kullandım. Tüm veri tabanı işlemlerimi bu modül ile yaptım. Ek olarak benim kullanmayı sevdiğim “time ” modülü de bu projede bulunmaktadır. Oldukça keyifli bir proje olduğunu düşünüyorum. Gelin yakından inceleyelim.
Projede Kullanılanlar :
- Programlama Dilleri : Python ,Sqlite3
- Editör : PyCharm , DB Browser (Sqlite3)
Ekran Görüntüleri :






Yukarıda görmüş olduğunuz gibi yapmak istediğim işlemler sorunsuz bir şekilde çalışmaktadır. Kayırlı personel ismine göre istediğimiz işlemi yapabiliyoruz. Zam vermek istediğimiz personeli seçiyoruz ve sistem otomatik olarak 500 TL zam yapıyor. Projenin kodlarını aşağıda paylaştım. Sizde bu tarz sistemler kurabilirsiniz. Kodu incelerken anlayamadığınız kısım olursa yorum yaparsanız yardımcı olabilirim. Bir sonraki projede görüşmek üzere 🙂
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
import sqlite3 import time class Calisan(): def __init__(self,ad,soyad,departman,dil,maas,no): self.ad=ad self.soyad=soyad self.departman=departman self.dil=dil self.maas=maas self.no=no def __str__(self): return"Personel Adı :{}\nPersonel Soyadı :{}\nÇalıştığı Departman :{}\nBildiği Dil :{}\nMaaşı :{}\nCep Telefonu :{}".format(self.ad,self.soyad,self.departman,self.dil,self.maas,self.no) class Personel(): def __init__(self): self.baglanti_olustur() def baglanti_olustur(self): self.baglanti=sqlite3.connect("personel.db") self.cursor=self.baglanti.cursor() self.cursor.execute("CREATE TABLE IF NOT EXISTS calisan(ad TEXT,soyad TEXT,departman TEXT,dil TEXT,maas INT,no INT)") self.baglanti.commit() def baglanti_kes(self): self.baglanti.close() def kayıtlı_personel(self): sorgu="SELECT * FROM calisan" self.cursor.execute(sorgu) calisan=self.cursor.fetchall() if(len(calisan)==0): print("Sistemde kayıt bulunmamakta !!") else: for i in calisan: c=Calisan(i[0],i[1],i[2],i[3],i[4],i[5]) print(c) def personel_bul(self,ad): sorgu="SELECT * FROM calisan WHERE ad=?" self.cursor.execute(sorgu,(ad,)) calisan=self.cursor.fetchall() if(len(calisan)==0): print("Sisteme kayıtlı personel bulunamadı!!") else: c=Calisan(calisan[0][0],calisan[0][1],calisan[0][2],calisan[0][3],calisan[0][4],calisan[0][5]) print(c) def personel_ekle(self,calisan): sorgu="INSERT INTO calisan VALUES(?,?,?,?,?,?)" self.cursor.execute(sorgu,(calisan.ad,calisan.soyad,calisan.departman,calisan.dil,calisan.maas,calisan.no)) self.baglanti.commit() def personel_cikis(self,ad): sorgu="DELETE FROM calisan WHERE ad=?" self.cursor.execute(sorgu,(ad,)) self.baglanti.commit() def zam_yap(self,ad): sorgu="SELECT * FROM calisan WHERE ad=?" self.cursor.execute(sorgu,(ad,)) calisan=self.cursor.fetchall() if(len(calisan)==0): print("Böyle bir personel bulunamadı!!") else: maas=calisan[0][4] maas+=500 sorgu2="UPDATE calisan SET maas=? WHERE ad=?" self.cursor.execute(sorgu2,(maas,ad)) self.baglanti.commit() print("""*********************************** Personel Otomasyonuna Hoşgeldiniz. İşlemler; 1. Sistme Kayıtlı Personel 2. Personel Sorgulama 3. Personel Ekle 4. Personel Çıkışı Yap 5. Personel Maaşa Zam Yap Çıkmak için 'q' ya basın. ***********************************""") personel=Personel() while True : islem=input("İşlem Seçin : ") if(islem=="q"): print("Çıkış Yapılıyor.") time.sleep(2) print("Çıkış Yaptınız. İyi Günler !!") break elif(islem=="1"): personel.kayıtlı_personel() elif(islem=="2"): ad=input("Hangi Personeli Arıyorsun ? İsim :") print("Personel Sorgulanıyor..") time.sleep(2) personel.personel_bul(ad) elif(islem=="3"): ad=input("Personel İsmi :") soyad=input("Personel Soyadı :") departman=input("Departman :") dil=input("Dil :") maas=input("Maaş :") no=input("Telefon Numarası : ") calisan=Calisan(ad,soyad,departman,dil,maas,no) print("Personel Ekleniyor..") time.sleep(2) personel.personel_ekle(calisan) print("Personel Eklendi!!") elif(islem=="4"): ad=input("Çıkışını yapmak istediğiniz personelin ismi : ") print("Personel çıkışı yapılıyor.") time.sleep(2) personel.personel_cikis(ad) print("Personel Çıkışı Yapıldı..") elif(islem=="5"): ad=input("Zam yapmak istediğiniz personelin ismi : ") print("Zam yapılıyor...") time.sleep(2) personel.zam_yap(ad) print("500 TL zam yapıldı.") else: print("Geçersiz işlem yaptınız..") |