Law firm client project
import tkinter as tk
from tkinter import ttk, messagebox
import sqlite3
# ---------------- Database ----------------
conn = sqlite3.connect("law_firm.db")
cur = conn.cursor()
cur.execute("""
CREATE TABLE IF NOT EXISTS clients(
id INTEGER PRIMARY KEY AUTOINCREMENT,
client_name TEXT,
guardian_name TEXT,
mobile TEXT,
email TEXT,
address TEXT,
dob TEXT,
case_type TEXT,
opposite_party TEXT,
court_name TEXT,
advocate_name TEXT,
notes TEXT
)
""")
conn.commit()
# ---------------- Functions ----------------
def save_data():
cur.execute("""
INSERT INTO clients(
client_name,
guardian_name,
mobile,
email,
address,
dob,
case_type,
opposite_party,
court_name,
advocate_name,
notes)
VALUES(?,?,?,?,?,?,?,?,?,?,?)
""",
(
client_name.get(),
guardian_name.get(),
mobile.get(),
email.get(),
address.get("1.0", tk.END),
dob.get(),
case_type.get(),
opposite_party.get(),
court_name.get(),
advocate_name.get(),
notes.get("1.0", tk.END)
))
conn.commit()
messagebox.showinfo("Success","Client information saved.")
clear_data()
def clear_data():
client_name.set("")
guardian_name.set("")
mobile.set("")
email.set("")
dob.set("")
case_type.set("")
opposite_party.set("")
court_name.set("")
advocate_name.set("")
address.delete("1.0", tk.END)
notes.delete("1.0", tk.END)
# ---------------- GUI ----------------
root = tk.Tk()
root.title("Law Firm Client Information")
root.geometry("700x750")
client_name = tk.StringVar()
guardian_name = tk.StringVar()
mobile = tk.StringVar()
email = tk.StringVar()
dob = tk.StringVar()
case_type = tk.StringVar()
opposite_party = tk.StringVar()
court_name = tk.StringVar()
advocate_name = tk.StringVar()
fields = [
("Client Name", client_name),
("Father/Spouse Name", guardian_name),
("Mobile", mobile),
("Email", email),
("Date of Birth", dob),
("Case Type", case_type),
("Opposite Party", opposite_party),
("Court Name", court_name),
("Advocate Name", advocate_name)
]
row = 0
for text, var in fields:
tk.Label(root, text=text, font=("Arial",10,"bold")).grid(row=row,column=0,padx=10,pady=5,sticky="w")
tk.Entry(root,textvariable=var,width=45).grid(row=row,column=1,padx=10,pady=5)
row += 1
tk.Label(root,text="Address",font=("Arial",10,"bold")).grid(row=row,column=0,sticky="nw",padx=10,pady=5)
address = tk.Text(root,width=35,height=4)
address.grid(row=row,column=1,padx=10,pady=5)
row += 1
tk.Label(root,text="Notes",font=("Arial",10,"bold")).grid(row=row,column=0,sticky="nw",padx=10,pady=5)
notes = tk.Text(root,width=35,height=6)
notes.grid(row=row,column=1,padx=10,pady=5)
row += 1
ttk.Button(root,text="Save",command=save_data).grid(row=row,column=0,pady=20)
ttk.Button(root,text="Clear",command=clear_data).grid(row=row,column=1,pady=20,sticky="w")
root.mainloop()
conn.close()
Comments
Post a Comment