• 20-05-2024, 16:13:06
    #1
    Merhabalar Shopier'de mağaza açmayı düşünen ve ürünlerin fiyatlandırmalarını yapan arkadaşlar için Shopier ürünlerden net ne kadar komisyon çekiyor önemli bir bilgi bu yüzden sizler ve kendim için can sıkıntısından Python (thinkter) kullanarak Shopier Komisyon Hesaplayıcı yaptım.
    Çalışma Mantığı aşağıda ki gibi eğer ki formül yanlışsa doğru hesaplamayı bana söylerseniz ona göre tekrar değiştiririz ve konuyu güncelleriz.
    Komisyon Bedeli: Ürün Fiyatı * %4.99(Değişir!)
    Hizmet Bedeli: 0.49₺ (sabit)
    KDV: (Komisyon Bedeli + Hizmet Bedeli) * %20
    Net Tutar: Ürün Fiyatı - (Komisyon Bedeli + Hizmet Bedeli + KDV)

    Örnek Fotoğraflar:



    Python Kodu:
    https://paste.tc/shopier-python-box
  • 20-05-2024, 16:26:17
    #2
    Ellerinize sağlık. Arayüzü biraz toparladım ve komisyon oranı açılışta otomatik 4.99 gelecek şekilde düzenledim.
    İlham olması açısından:
    import tkinter as tk
    from tkinter import ttk
    
    def calculate_commission():
    try:
    product_price = float(entry_product_price.get())
    commission_rate = float(entry_commission_rate.get()) / 100
            service_fee = float(entry_service_fee.get())
    
    commission_fee = product_price * commission_rate
    vat = (commission_fee + service_fee) * 0.20
            total_deductions = commission_fee + service_fee + vat
    net_amount = product_price - total_deductions
    
    label_commission_fee.config(text=f"Komisyon Bedeli: {commission_fee:.2f}₺")
    label_service_fee_result.config(text=f"Hizmet Bedeli: {service_fee:.2f}₺")
    label_vat.config(text=f"KDV: {vat:.2f}₺")
    label_net_amount.config(text=f"Net Tutar: {net_amount:.2f}₺")
    except ValueError:
    label_commission_fee.config(text="Lütfen geçerli bir değer girin.")
    label_service_fee_result.config(text="")
    label_vat.config(text="")
    label_net_amount.config(text="")
    
    root = tk.Tk()
    root.title("Shopier Komisyon Hesaplama Modülü")
    
    # Stil Ayarları
    style = ttk.Style(root)
    style.theme_use('clam')
    
    # Grid yapılandırması
    root.columnconfigure(0, weight=1)
    root.columnconfigure(1, weight=1)
    root.rowconfigure(0, weight=1)
    root.rowconfigure(1, weight=1)
    root.rowconfigure(2, weight=1)
    root.rowconfigure(3, weight=1)
    root.rowconfigure(4, weight=1)
    root.rowconfigure(5, weight=1)
    root.rowconfigure(6, weight=1)
    root.rowconfigure(7, weight=1)
    
    # Ürün Fiyatı Girişi
    label_product_price = ttk.Label(root, text="Ürün Fiyatı (₺):")
    label_product_price.grid(row=0, column=0, padx=10, pady=10, sticky="W")
    
    entry_product_price = ttk.Entry(root)
    entry_product_price.grid(row=0, column=1, padx=10, pady=10, sticky="EW")
    
    # Komisyon Oranı Girişi
    label_commission_rate = ttk.Label(root, text="Komisyon Oranı (%):")
    label_commission_rate.grid(row=1, column=0, padx=10, pady=10, sticky="W")
    
    entry_commission_rate = ttk.Entry(root)
    entry_commission_rate.grid(row=1, column=1, padx=10, pady=10, sticky="EW")
    entry_commission_rate.insert(0, "4.99")  # Varsayılan değer
    
    # Hizmet Bedeli Girişi
    label_service_fee = ttk.Label(root, text="Hizmet Bedeli (₺):")
    label_service_fee.grid(row=2, column=0, padx=10, pady=10, sticky="W")
    
    entry_service_fee = ttk.Entry(root)
    entry_service_fee.grid(row=2, column=1, padx=10, pady=10, sticky="EW")
    
    # Hesapla Butonu
    button_calculate = ttk.Button(root, text="Hesapla", command=calculate_commission)
    button_calculate.grid(row=3, column=0, columnspan=2, padx=10, pady=10, sticky="EW")
    
    # Sonuçlar
    label_commission_fee = ttk.Label(root, text="")
    label_commission_fee.grid(row=4, column=0, columnspan=2, padx=10, pady=5, sticky="EW")
    
    label_service_fee_result = ttk.Label(root, text="")
    label_service_fee_result.grid(row=5, column=0, columnspan=2, padx=10, pady=5, sticky="EW")
    
    label_vat = ttk.Label(root, text="")
    label_vat.grid(row=6, column=0, columnspan=2, padx=10, pady=5, sticky="EW")
    
    label_net_amount = ttk.Label(root, text="")
    label_net_amount.grid(row=7, column=0, columnspan=2, padx=10, pady=5, sticky="EW")
    
    root.mainloop()