diff --git a/Hushian.Application/Services/ConversationService.cs b/Hushian.Application/Services/ConversationService.cs index d2dae44..d591506 100644 --- a/Hushian.Application/Services/ConversationService.cs +++ b/Hushian.Application/Services/ConversationService.cs @@ -129,6 +129,7 @@ namespace Hushian.Application.Services .Where(w => w.UserID == UserID && w.CompanyID==CompanyID) .Select(s => new Read_ConversationDto() { + ID=s.ID, ExperID = s.ConversationResponses.OrderBy(o => o.ID).Last().ExperID, ExperFullName = s.ConversationResponses.OrderBy(o => o.ID).Last().Exper.FullName, GroupID = s.GroupID, diff --git a/Presentation/HushianWebApp/Pages/FromUserSide/ChatBoxComponent.razor b/Presentation/HushianWebApp/Pages/FromUserSide/ChatBoxComponent.razor index eef8abf..e8511e5 100644 --- a/Presentation/HushianWebApp/Pages/FromUserSide/ChatBoxComponent.razor +++ b/Presentation/HushianWebApp/Pages/FromUserSide/ChatBoxComponent.razor @@ -1,8 +1,11 @@ @using Common.Dtos.Conversation -
- +
+ @if (SelectedConversationItems != null) + { +

@SelectedConversationItems.Count()

+ }
سلام diff --git a/Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor b/Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor index a938e75..5567eab 100644 --- a/Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor +++ b/Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor @@ -26,7 +26,10 @@ VisuallyHiddenText="status"> پاسخگویی سوالات شما هستیم - + @if (ConversationID.HasValue) + { + + }
@@ -61,7 +64,7 @@ }
- @if (IsLogin && (Conversations.Count == 0 && SelectedConversation == null) || (Conversations.Count > 0 && SelectedConversation != null && SelectedConversation.status == Common.Enums.ConversationStatus.InProgress)) + @if (IsLogin && (@* Conversations.Count == 0 && *@ SelectedConversation == null) || (@* Conversations.Count > 0 && *@ SelectedConversation != null && SelectedConversation.status == Common.Enums.ConversationStatus.InProgress)) {
@@ -111,8 +114,8 @@ protected override async Task OnParametersSetAsync() { - if (ConversationID.HasValue && ConversationID > 0 && Conversations.Count > 0) - await SelectedConv(ConversationID.Value); + // if (ConversationID.HasValue && ConversationID > 0 && Conversations.Count > 0) + // await SelectedConv(ConversationID.Value); await base.OnParametersSetAsync(); } @@ -189,8 +192,10 @@ Conversations = await conversationService.MyConversationUserSide(CompanyID); if (Conversations.Count > 0) ConversationsContent =@ - ; + OnMultipleOfThree="EventCallback.Factory.Create(this, SelectedConv)" />; + + if (ConversationID.HasValue && ConversationID > 0 && Conversations.Count > 0) + await SelectedConv(ConversationID.Value); } } @@ -204,6 +209,7 @@ SelectedConversation = Conversations.FirstOrDefault(f => f.ID == ID); SelectedConversationItems = await conversationService.GetConversationItems(ID); SelectedGroup = SelectedConversation.GroupID; + ConversationID = ID; StateHasChanged(); } @@ -211,6 +217,11 @@ private void CloseChat() { // می‌توان اینجا حالت مخفی‌سازی کامپوننت را تنظیم کرد + SelectedConversation = null; + SelectedConversationItems = null; + SelectedGroup = null; + ConversationID = null; + StateHasChanged(); } private void GoBack() { @@ -218,6 +229,12 @@ } async Task OnClickSendMssage() { + // SelectedConversationItems.Add(new Read_ConversationResponseDto() + // { + // ConversationID=1, + + // }); + // return; Sending = true; if (SelectedConversation != null) {