код с программой умный плановик с календарем для записи клиентов
Для создания умного планировщика с календарем для записи клиентов на Python, можно использовать библиотеку Tkinter для создания графического интерфейса, и библиотеку SQLite для хранения данных в базе
Пример кода:
код копирования на python
import tkinter as tk import sqlite3 from datetime import datetime class Appointment: def init(self, date, time, client): self.date = date self.time = time self.client = client class PlannerApp: def init(self, master): self.master = master master.title("Умный планировщик") # Создание виджетов self.date_label = tk.Label(master, text="Дата (ГГГГ-ММ-ДД):") self.date_entry = tk.Entry(master) self.time_label = tk.Label(master, text="Время (ЧЧ:ММ):") self.time_entry = tk.Entry(master) self.client_label = tk.Label(master, text="Клиент:") self.client_entry = tk.Entry(master) self.submit_button = tk.Button(master, text="Добавить", command=self.add_appointment) self.calendar = tk.Listbox(master) # Размещение виджетов self.date_label.grid(row=0, column=0) self.date_entry.grid(row=0, column=1) self.time_label.grid(row=1, column=0) self.time_entry.grid(row=1, column=1) self.client_label.grid(row=2, column=0) self.client_entry.grid(row=2, column=1) self.submit_button.grid(row=3, column=1) self.calendar.grid(row=4, column=0, columnspan=2) # Создание базы данных и таблицы для записей self.conn = sqlite3.connect('appointments.db') self.c = self.conn.cursor() self.c.execute('''CREATE TABLE IF NOT EXISTS appointments (date text, time text, client text)''') # Загрузка записей из базы данных в календарь self.load_appointments() def add_appointment(self): # Получение значений из полей ввода date = self.date_entry.get() time = self.time_entry.get() client = self.client_entry.get() # Создание объекта записи appointment = Appointment(date, time, client) # Добавление записи в базу данных self.c.execute("INSERT INTO appointments VALUES (?, ?, ?)", (date, time, client)) self.conn.commit() # Добавление записи в календарь self.calendar.insert(tk.END, "{0} {1} - {2}".format(date, time, client)) def load_appointments(self): # Загрузка записей из базы данных в календарь self.c.execute("SELECT * FROM appointments") rows = self.c.fetchall() for row in rows: appointment = Appointment(row[0], row[1], row[2]) self.calendar.insert(tk.END, "{0} {1} - {2}".format(appointment.date, appointment.time, appointment.client)) def del(self): # Закрытие соединения с базой данных при завершении работы приложения self.conn.close() root
И
import tkinter as tk
import sqlite3
from datetime import datetime
class Appointment:
def init(self, date, time, client):
self.date = date
self.time = time
self.client = client
class PlannerApp:
def init(self, master):
self.master = master
master.title("Умный планировщик")
# Создание виджетов
self.date_label = tk.Label(master, text="Дата (ГГГГ-ММ-ДД):")
self.date_entry = tk.Entry(master)
self.time_label = tk.Label(master, text="Время (ЧЧ:ММ):")
self.time_entry = tk.Entry(master)
self.client_label = tk.Label(master, text="Клиент:")
self.client_entry = tk.Entry(master)
self.submit_button = tk.Button(master, text="Добавить", command=self.add_appointment)
self.calendar = tk.Listbox(master)
# Размещение виджетов
self.date_label.grid(row=0, column=0)
self.date_entry.grid(row=0, column=1)
self.time_label.grid(row=1, column=0)
self.time_entry.grid(row=1, column=1)
self.client_label.grid(row=2, column=0)
self.client_entry.grid(row=2, column=1)
self.submit_button.grid(row=3, column=1)
self.calendar.grid(row=4, column=0, columnspan=2)
# Создание базы данных и таблицы для записей
self.conn = sqlite3.connect('appointments.db')
self.c = self.conn.cursor()
self.c.execute('''CREATE TABLE IF NOT EXISTS appointments
(date text, time text, client text)''')
# Загрузка записей из базы данных в календарь
self.load_appointments()
def add_appointment(self):
# Получение значений из полей ввода
date = self.date_entry.get()
time = self.time_entry.get()
client = self.client_entry.get()
# Создание объекта записи
appointment = Appointment(date, time, client)
# Добавление записи в базу данных
self.c.execute("INSERT INTO appointments VALUES (?, ?, ?)", (date, time, client))
self.conn.commit()
# Добавление записи в календарь
self.calendar.insert(tk.END, "{0} {1} - {2}".format(date, time, client))
def load_appointments(self):
# Загрузка записей из базы данных в календарь
self.c.execute("SELECT * FROM appointments")
rows = self.c.fetchall()
for row in rows:
appointment = Appointment(row[0], row[1], row[2])
self.calendar.insert(tk.END, "{0} {1} - {2}".format(appointment.date, appointment.time, appointment.client))
def del(self):
# Закрытие соединения с базой данных при завершении работы приложения
self.conn.close()
root