ShowMessage
This commit is contained in:
@@ -389,7 +389,38 @@
|
||||
Header="Speichern" />
|
||||
</ContextMenu>
|
||||
</Border.ContextMenu>
|
||||
<TextBox Padding="12,8,12,8" Style="{StaticResource MessageTextBoxStyle}" />
|
||||
<Grid>
|
||||
<TextBox Padding="12,8,12,8">
|
||||
<TextBox.Style>
|
||||
<Style BasedOn="{StaticResource MessageTextBoxStyle}" TargetType="{x:Type TextBox}">
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding ShowMessage}" Value="False">
|
||||
<Setter Property="Visibility" Value="Collapsed" />
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</TextBox.Style>
|
||||
</TextBox>
|
||||
<!-- Platzhalter für ausgeblendete Nachrichten (Message kommt vom Server als null) -->
|
||||
<TextBlock
|
||||
Padding="12,8,12,8"
|
||||
FontSize="14"
|
||||
FontStyle="Italic"
|
||||
Foreground="#FF888888"
|
||||
Text="Nachricht ausgeblendet"
|
||||
TextWrapping="Wrap">
|
||||
<TextBlock.Style>
|
||||
<Style TargetType="{x:Type TextBlock}">
|
||||
<Setter Property="Visibility" Value="Collapsed" />
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding ShowMessage}" Value="False">
|
||||
<Setter Property="Visibility" Value="Visible" />
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</TextBlock.Style>
|
||||
</TextBlock>
|
||||
</Grid>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@ namespace BeWo.ViewModel
|
||||
public int Duration => DataContract.Duration ?? 0;
|
||||
public string DurationSec => ((double)Duration / 1000).ToString("0.#");
|
||||
public DateTime Created => DataContract.Created;
|
||||
public bool ShowMessage => DataContract.ShowMessage;
|
||||
|
||||
protected override void InitByDataContract(AiConversationMessageDC pDataContract)
|
||||
{
|
||||
|
||||
@@ -59,7 +59,8 @@ namespace BeWo.ViewModel.ListViewModel
|
||||
{
|
||||
Created = DateTime.Now,
|
||||
Message = "N. Dies ist eine Design Frage: Du sollst ganz viele Sachen machen. Dabei sollst du auf ganz viele Sachen achten: Zum Beispiel:\r\nSache 1\r\nSchritt 2",
|
||||
Role = BS.Shared.AiConversationMessageRole.User
|
||||
Role = BS.Shared.AiConversationMessageRole.User,
|
||||
ShowMessage = true
|
||||
};
|
||||
|
||||
var message_dc3 = new AiConversationMessageDC()
|
||||
|
||||
@@ -203,7 +203,8 @@ namespace BeWo.ViewModel.View.AI
|
||||
new AiConversationMessageDC()
|
||||
{
|
||||
Message = message,
|
||||
Role = AiConversationMessageRole.User
|
||||
Role = AiConversationMessageRole.User,
|
||||
ShowMessage = true
|
||||
}
|
||||
};
|
||||
|
||||
@@ -238,6 +239,7 @@ namespace BeWo.ViewModel.View.AI
|
||||
msg_dc.Message = MessageInput;
|
||||
msg_dc.Role = BS.Shared.AiConversationMessageRole.User;
|
||||
msg_dc.Created = DateTime.Now;
|
||||
msg_dc.ShowMessage = true;
|
||||
|
||||
var msg_vm = new AiConversationMessageVM(msg_dc);
|
||||
|
||||
@@ -549,9 +551,10 @@ namespace BeWo.ViewModel.View.AI
|
||||
|
||||
var msg_dc = new AiConversationMessageDC();
|
||||
|
||||
msg_dc.Message = msg;
|
||||
msg_dc.Message = prompt.ShowPrompt ? msg : null;
|
||||
msg_dc.Role = BS.Shared.AiConversationMessageRole.User;
|
||||
msg_dc.Created = DateTime.Now;
|
||||
msg_dc.ShowMessage = prompt.ShowPrompt;
|
||||
|
||||
var msg_vm = new AiConversationMessageVM(msg_dc);
|
||||
|
||||
@@ -645,13 +648,14 @@ namespace BeWo.ViewModel.View.AI
|
||||
custom_viewContext.Secondary = ViewContext.Secondary;
|
||||
}
|
||||
|
||||
var msg = routine.Steps.VMList[step].PromptReference.Prompt;
|
||||
var step_prompt = routine.Steps.VMList[step].PromptReference;
|
||||
|
||||
var msg_dc = new AiConversationMessageDC
|
||||
{
|
||||
Message = msg,
|
||||
Message = step_prompt.ShowPrompt ? step_prompt.Prompt : null,
|
||||
Role = AiConversationMessageRole.User,
|
||||
Created = DateTime.Now
|
||||
Created = DateTime.Now,
|
||||
ShowMessage = step_prompt.ShowPrompt
|
||||
};
|
||||
|
||||
var msg_vm = new AiConversationMessageVM(msg_dc);
|
||||
|
||||
@@ -20,5 +20,7 @@ namespace BeWo.Data.Entities
|
||||
public virtual AiConversation AiConversation { get; set; }
|
||||
public virtual int? Duration { get; set; }
|
||||
public virtual string ModelName { get; set; }
|
||||
/// <summary>null = anzeigen (Bestandsdaten und normale Chat-Nachrichten)</summary>
|
||||
public virtual bool ShowMessage { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
<property name="Created"/>
|
||||
<property name="Duration"/>
|
||||
<property name="ModelName"/>
|
||||
<property name="ShowMessage"/>
|
||||
<many-to-one name="AiConversation"
|
||||
column="AiConversationOid"
|
||||
not-null="true"/>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<PropertyGroup>
|
||||
<NameOfLastUsedPublishProfile>C:\Projects\Bewo\BeWo - Main\Host\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
|
||||
<UseIISExpress>true</UseIISExpress>
|
||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
||||
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||
<Use64BitIISExpress>
|
||||
</Use64BitIISExpress>
|
||||
<IISExpressSSLPort />
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
INSERT INTO `.executedscripts`
|
||||
VALUES ('Changes_2026-07-10 AiConversationMessage ShowMessage', CURDATE());
|
||||
|
||||
ALTER TABLE `aiconversationmessage`
|
||||
ADD COLUMN `ShowMessage` TINYINT NULL DEFAULT NULL AFTER `ModelName`;
|
||||
|
||||
UPDATE `aiconversationmessage` SET `ShowMessage` = TRUE;
|
||||
@@ -18,11 +18,13 @@ namespace BeWo.Service.DCEntityMapper
|
||||
pDataContract.Oid = pEntity.Oid;
|
||||
pDataContract.Version = pEntity.Version;
|
||||
pDataContract.Notice = pEntity.Notice;
|
||||
pDataContract.Message = pEntity.Message;
|
||||
pDataContract.Role = pEntity.Role;
|
||||
pDataContract.Created = pEntity.Created;
|
||||
pDataContract.Duration = pEntity.Duration;
|
||||
pDataContract.ModelName = pEntity.ModelName;
|
||||
pDataContract.ShowMessage = pEntity.ShowMessage;
|
||||
|
||||
pDataContract.Message = pDataContract.ShowMessage ? pEntity.Message : null;
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
@@ -205,6 +205,7 @@ namespace BeWo.Service.Plugins
|
||||
clone_msg.Role = msg.Role;
|
||||
clone_msg.Duration = msg.Duration;
|
||||
clone_msg.ModelName = msg.ModelName;
|
||||
clone_msg.ShowMessage = msg.ShowMessage;
|
||||
|
||||
clone_conv.Messages.Add(clone_msg);
|
||||
clone_msg.AiConversation = clone_conv;
|
||||
@@ -411,13 +412,14 @@ namespace BeWo.Service.Plugins
|
||||
msg.AiConversation = conversation;
|
||||
msg.Role = AiConversationMessageRole.System;
|
||||
msg.Created = DateTime.Now;
|
||||
msg.ShowMessage = true;
|
||||
|
||||
conversation.Messages.Add(msg);
|
||||
|
||||
return msg;
|
||||
}
|
||||
|
||||
protected virtual AiConversationMessageDC[] sendNewMessage(AiConversation conv, string message, bool save = true)
|
||||
protected virtual AiConversationMessageDC[] sendNewMessage(AiConversation conv, string message, bool save = true, bool show_message = true)
|
||||
{
|
||||
CheckPermissions(conv.ActionType);
|
||||
|
||||
@@ -440,6 +442,7 @@ namespace BeWo.Service.Plugins
|
||||
user_msg.AiConversation = conv;
|
||||
user_msg.Role = BS.Shared.AiConversationMessageRole.User;
|
||||
user_msg.Created = DateTime.Now;
|
||||
user_msg.ShowMessage = show_message;
|
||||
|
||||
conv.Messages.Add(user_msg);
|
||||
|
||||
@@ -514,6 +517,7 @@ namespace BeWo.Service.Plugins
|
||||
assi_msg.Created = dt_before_request;
|
||||
assi_msg.Duration = duration ?? 0;
|
||||
assi_msg.ModelName = model;
|
||||
assi_msg.ShowMessage = true;
|
||||
|
||||
conv.Messages.Add(assi_msg);
|
||||
|
||||
@@ -620,7 +624,7 @@ namespace BeWo.Service.Plugins
|
||||
}
|
||||
|
||||
// Server Request
|
||||
sendNewMessage(new_conv, prompt.Prompt, false).ToList();
|
||||
sendNewMessage(new_conv, prompt.Prompt, false, prompt.ShowPrompt).ToList();
|
||||
|
||||
var result = new List<AiConversationMessage>
|
||||
{
|
||||
|
||||
@@ -17,5 +17,6 @@ namespace BS.Shared.DataContracts.Feature.AI
|
||||
[DataMember] public DateTime Created { get; set; }
|
||||
[DataMember] public string ModelName { get; set; }
|
||||
[DataMember] public int? Duration { get; set; }
|
||||
[DataMember] public bool ShowMessage { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user