Copy Prompt
This commit is contained in:
@@ -3,6 +3,7 @@ using BeWo.Services;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using BS.Shared.DataContracts.Feature.AI;
|
||||
using BS.Shared.Extensions.CustomInterfaces;
|
||||
using DevExpress.Mvvm;
|
||||
@@ -27,6 +28,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
public AiPromptbausteinFolderListVM Folders { get; set; }
|
||||
public AiPromptbausteinPromptVM SelectedPrompt { get; set; }
|
||||
public AiPromptbausteinFolderVM CopiedFolder { get; set; }
|
||||
public AiPromptbausteinPromptVM CopiedPrompt { get; set; }
|
||||
|
||||
public DelegateCommand OpenAddFolderDialogCommand { get; private set; }
|
||||
public DelegateCommand OpenEditFolderDialogCommand { get; private set; }
|
||||
@@ -48,6 +50,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
set => SetProperty(ref _SelectedFolder, value, nameof(SelectedFolder));
|
||||
}
|
||||
|
||||
|
||||
public AiPromptbausteinComplexTreeViewModel() : this(null, AiActionType.ServiceRecordConversation)
|
||||
{
|
||||
if (BeWoApp.IsInDesignMode)
|
||||
@@ -56,7 +59,6 @@ namespace BeWo.ViewModel.View.Administration
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
public AiPromptbausteinComplexTreeViewModel(IBeWoWindowService windowService, AiActionType aiActionType)
|
||||
{
|
||||
WindowService = windowService;
|
||||
@@ -77,6 +79,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
IsEditingMode = true;
|
||||
}
|
||||
|
||||
|
||||
public override bool IsDirty
|
||||
{
|
||||
get
|
||||
@@ -84,8 +87,10 @@ namespace BeWo.ViewModel.View.Administration
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public bool HasCopiedFolder => CopiedFolder is object;
|
||||
public bool HasCopiedPrompt => CopiedPrompt is object;
|
||||
public CompactEmployeeDC CurrentEmployee => BeWoApp.CompactLoggedOnEmployee;
|
||||
|
||||
|
||||
public void UpdateFolderCommands()
|
||||
{
|
||||
@@ -94,8 +99,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
CopyFolderCommand.RaiseCanExecuteChanged();
|
||||
PasteFolderCommand.RaiseCanExecuteChanged();
|
||||
DeleteFolderCommand.RaiseCanExecuteChanged();
|
||||
}
|
||||
|
||||
}
|
||||
public void UpdatePromptCommands()
|
||||
{
|
||||
OpenAddPromptDialogCommand.RaiseCanExecuteChanged();
|
||||
@@ -109,7 +113,6 @@ namespace BeWo.ViewModel.View.Administration
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
internal void ReloadVMList()
|
||||
{
|
||||
var folders_dc = PredefinedAiPromptbausteinFolders.CreateSubTree(AiActionType);
|
||||
@@ -128,7 +131,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
var sel_folder = SelectedFolder;
|
||||
var new_vm = sel_folder.SubFolders.CreateNewVM();
|
||||
|
||||
new_vm.Creator = BeWoApp.CompactLoggedOnEmployee;
|
||||
new_vm.Creator = CurrentEmployee;
|
||||
new_vm.Parent = sel_folder;
|
||||
new_vm.CanAdd = true;
|
||||
new_vm.CanEdit = true;
|
||||
@@ -209,7 +212,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
var sel_folder = SelectedFolder;
|
||||
var new_vm = sel_folder.SubPrompts.CreateNewVM();
|
||||
|
||||
new_vm.Creator = BeWoApp.CompactLoggedOnEmployee;
|
||||
new_vm.Creator = CurrentEmployee;
|
||||
new_vm.ParentFolderOid = sel_folder.DataContract.Oid;
|
||||
new_vm.ShowPrompt = true;
|
||||
new_vm.ShowPromptByTenant = true;
|
||||
@@ -243,11 +246,19 @@ namespace BeWo.ViewModel.View.Administration
|
||||
}
|
||||
void CopyPrompt()
|
||||
{
|
||||
|
||||
CopiedPrompt = SelectedPrompt;
|
||||
}
|
||||
void PastePrompt()
|
||||
{
|
||||
var copied_dc = CopiedPrompt.CommitToDataContract();
|
||||
copied_dc.Creator = CurrentEmployee;
|
||||
copied_dc.CanEdit = true;
|
||||
copied_dc.IsPublic = false;
|
||||
copied_dc.Oid = null;
|
||||
copied_dc.Version = 0;
|
||||
var copied_vm = new AiPromptbausteinPromptVM(copied_dc);
|
||||
|
||||
SelectedFolder.SubPrompts.VMList.Add(copied_vm);
|
||||
}
|
||||
void OpenDeletePromptDialog()
|
||||
{
|
||||
@@ -264,7 +275,7 @@ namespace BeWo.ViewModel.View.Administration
|
||||
}
|
||||
bool canOpenAddPromptDialog()
|
||||
{
|
||||
return SelectedFolder.CanAdd;
|
||||
return SelectedFolder?.CanAdd ?? false;
|
||||
}
|
||||
bool canOpenEditPromptDialog()
|
||||
{
|
||||
@@ -272,11 +283,11 @@ namespace BeWo.ViewModel.View.Administration
|
||||
}
|
||||
bool canCopyPrompt()
|
||||
{
|
||||
return false;
|
||||
return SelectedPrompt is object;
|
||||
}
|
||||
bool canPastePrompt()
|
||||
{
|
||||
return false;
|
||||
return canOpenAddPromptDialog() && HasCopiedPrompt;
|
||||
}
|
||||
bool canOpenDeletePromptDialog()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user