import datetime
# Örnek veri yapıları
customer_forms = [
{"FormID": 1, "FormContent": "İçerik 1", "Language": "Türkçe", "AssignedTo": None},
{"FormID": 2, "FormContent": "İçerik 2", "Language": "İngilizce", "AssignedTo": None},
# Diğer formlar
]
sales_agents = [
{"AgentID": 1, "Name": "Ahmet", "Languages": ["Türkçe"], "LastAssignedTime": None},
{"AgentID": 2, "Name": "John", "Languages": ["İngilizce"], "LastAssignedTime": None},
{"AgentID": 3, "Name": "Mehmet", "Languages": ["Türkçe", "İngilizce"], "LastAssignedTime": None},
# Diğer danışmanlar
]
def assign_form_to_agent(form):
# Formun dilini al
form_language = form["Language"]
# Belirtilen dili konuşan danışmanları filtrele
available_agents = [agent for agent in sales_agents if form_language in agent["Languages"]]
# Danışmanları en son atama zamanına göre sırala
available_agents.sort(key=lambda x: (x["LastAssignedTime"] is not None, x["LastAssignedTime"]))
# İlk sıradaki danışmana formu ata
assigned_agent = available_agents[0]
form["AssignedTo"] = assigned_agent["AgentID"]
assigned_agent["LastAssignedTime"] = datetime.datetime.now()
return assigned_agent["AgentID"]
# Örnek kullanım
for form in customer_forms:
assigned_agent_id = assign_form_to_agent(form)
print(f"Form ID {form['FormID']} assigned to Agent ID {assigned_agent_id}")