Files
BeWoPlaner/BeWo/Services/BeWoControlFactory.cs
2025-07-25 14:27:57 +02:00

67 lines
1.9 KiB
C#

using BeWo.View.Detail.AI;
using BeWo.ViewModel;
using BeWo.ViewModel.View;
using BS.Shared;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
namespace BeWo.Services
{
internal class BeWoControlFactory : IControlFactory
{
public Control GetAiConversationControl(AiConversationChatViewModel vm)
{
var styleString = getStyleString(vm.UIContext);
var control = styleString is object ? new AiConversationChatView(vm, styleString) : new AiConversationChatView(vm);
return control;
}
private string getStyleString(AiContextType uIContext) {
switch (uIContext)
{
case AiContextType.SupportConcept: return "ModuleAiControlSupportConceptStyle";
case AiContextType.Customer: return "ModuleAiControlCustomerStyle";
case AiContextType.Person: return "ModuleAiControlPersonStyle";
case AiContextType.Employee: return "ModuleAiControlEmployeeStyle";
case AiContextType.Organisation: return "ModuleAiControlOrganisationStyle";
case AiContextType.Team:
break;
case AiContextType.Dokumente:
break;
case AiContextType.User:
break;
case AiContextType.UserGroup:
break;
case AiContextType.Report:
break;
case AiContextType.Scheduler:
break;
case AiContextType.Wohnheim:
break;
case AiContextType.Vertretungen:
break;
case AiContextType.CustomerTeam:
break;
case AiContextType.Scheduling:
break;
case AiContextType.Finance:
break;
case AiContextType.Administration:
break;
case AiContextType.ServiceRecord: return "ModuleAiControlZeiterfassungStyle";
case AiContextType.CustomerSingle: return "ModuleAiControlCustomerStyle";
case AiContextType.PersonSingle: return "ModuleAiControlPersonStyle";
case AiContextType.EmployeeSingle: return "ModuleAiControlEmployeeStyle";
}
return null;
}
}
}