diff --git a/Presentation/HushianWebApp/Pages/Chat.razor b/Presentation/HushianWebApp/Pages/Chat.razor
index 65cdb62..00e91f0 100644
--- a/Presentation/HushianWebApp/Pages/Chat.razor
+++ b/Presentation/HushianWebApp/Pages/Chat.razor
@@ -1,4 +1,5 @@
@page "/Chat"
+@page "/"
@using Common.Dtos.Conversation
@using Common.Dtos.Group
@using Common.Enums
diff --git a/Presentation/HushianWebApp/Pages/Conversation.razor b/Presentation/HushianWebApp/Pages/Conversation.razor
index 00e4b78..4f28ba8 100644
--- a/Presentation/HushianWebApp/Pages/Conversation.razor
+++ b/Presentation/HushianWebApp/Pages/Conversation.razor
@@ -1,5 +1,5 @@
@page "/Conversation"
-@page "/"
+
@inject IJSRuntime JS
@using Common.Dtos.Conversation
diff --git a/Presentation/HushianWebApp/Pages/FromUserSide/UserCP.razor b/Presentation/HushianWebApp/Pages/FromUserSide/UserCP.razor
new file mode 100644
index 0000000..2abfb00
--- /dev/null
+++ b/Presentation/HushianWebApp/Pages/FromUserSide/UserCP.razor
@@ -0,0 +1,245 @@
+@page "/UserCP/{CompanyID:int}"
+@using Common.Dtos.Company
+@using Common.Dtos.Conversation
+@using Common.Dtos.Group
+@using HushianWebApp.Service
+@using HushianWebApp.Services
+@inject ILocalStorageService localStorageService;
+@inject AuthService authService;
+@inject BaseController baseController;
+@layout UserPanelLayout
+
+
+ @if (IsEndFirstProcess)
+ {
+ @if (IsLogin)
+ {
+
+
+
+
+ @if (LastOpenChat != null && LastOpenChat.Responses != null)
+ {
+
+ @{
+ bool target = false;
+ }
+ @foreach (var msg in LastOpenChat?.Responses)
+ {
+ @if (!target && ((!msg.IsRead && msg.Type != Common.Enums.ConversationType.UE) || LastOpenChat.Responses.Last() == msg))
+ {
+ target = true;
+
+ @if (!msg.IsRead && msg.Type != Common.Enums.ConversationType.UE)
+ {
+
ـــــــــــــــــــــــــ
+ }
+
+ }
+
+
+
@msg.text
+ @if (msg.Type == Common.Enums.ConversationType.EU)
+ {
+ if (msg.IsRead)
+ {
+
+ }
+ else
+ {
+
+ }
+ }
+
+ }
+ @{
+ target = false;
+ }
+
+ }
+ else
+ {
+
+
+
+ }
+
+
+
+ @if (LastOpenChat != null && LastOpenChat.status != Common.Enums.ConversationStatus.Finished && LastOpenChat.Responses != null)
+ {
+
+
+
+
+
+
+
+
+ }
+
+
+
+ }
+ else
+ {
+
+ }
+ }
+ else
+ {
+ //صحت سنجی لاگین در حال انجام است
+ }
+
+
+@code {
+ [Parameter] public int CompanyID { get; set; }
+
+ ReadANDUpdate_CompanyDto CompanyInfo = new();
+ Common.Dtos.CurrentUserInfo CurrentUser = new();
+ List CompanyGroups = new();
+ ChatItemDto? LastOpenChat = new();
+ string MsgInput = string.Empty;
+ bool chatloading = false;
+ public bool IsLogin { get; set; } = false;
+ public bool IsEndFirstProcess { get; set; } = false;
+ string ExperYou
+ {
+ get
+ {
+ string value = $"{CompanyInfo.FullName}";
+ if (LastOpenChat != null)
+ {
+ value += "/" + LastOpenChat.ExperFullName;
+ }
+ return value;
+ }
+ }
+}
+@functions {
+ async Task OnClickSendMsg()
+ {
+ if (!string.IsNullOrEmpty(MsgInput) && LastOpenChat != null)
+ {
+ // Common.Enums.ConversationType type = CurrentUser.Role == "Company" ? Common.Enums.ConversationType.CU : Common.Enums.ConversationType.EU;
+ // await chatService.ADDChatResponse(LastOpenChat.ID, MsgInput, type);
+ // LastOpenChat?.Responses.Add(new() { text = MsgInput, Type = type });
+ // LastOpenChat.LastText = MsgInput;
+ // await Task.Yield();
+ // await JS.InvokeVoidAsync("scrollToBottom", "B1");
+ MsgInput = string.Empty;
+ }
+ }
+ protected override async Task OnInitializedAsync()
+ {
+ await IsOnline();
+ await base.OnInitializedAsync();
+ }
+ async Task IsOnline()
+ {
+ var token = await localStorageService.GetItem("U/key");
+ if (string.IsNullOrEmpty(token))
+ {
+ IsLogin = false;
+ IsEndFirstProcess = true;
+ }
+ else
+ {
+ await baseController.RemoveToken();
+ await baseController.SetToken(token);
+ if (!await authService.IsOnline())
+ {
+ await baseController.RemoveToken();
+ IsLogin = false;
+ IsEndFirstProcess = true;
+ }
+ else
+ {
+ IsEndFirstProcess = true;
+ await Afterlogin();
+ }
+
+ }
+
+ }
+ async Task Afterlogin()
+ {
+ IsLogin = true;
+ CurrentUser = new();
+ await IsCompany();
+ }
+ async Task IsCompany()
+ {
+ CompanyInfo = new();
+ CompanyGroups = new();
+ await IsLastChat();
+ }
+ async Task IsLastChat()
+ {
+ LastOpenChat = null;
+ StateHasChanged();
+ }
+}
+
diff --git a/Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor b/Presentation/HushianWebApp/Pages/FromUserSide/ZUserPanel.razor
similarity index 99%
rename from Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor
rename to Presentation/HushianWebApp/Pages/FromUserSide/ZUserPanel.razor
index eca6c5d..de8cadc 100644
--- a/Presentation/HushianWebApp/Pages/FromUserSide/UserPanel.razor
+++ b/Presentation/HushianWebApp/Pages/FromUserSide/ZUserPanel.razor
@@ -12,8 +12,8 @@
@inject BaseController baseController;
@inject ConversationService conversationService
@layout UserPanelLayout
-@page "/UserPanel/{CompanyID:int}"
-@page "/UserPanel/{CompanyID:int}/{ConversationID:int?}"
+@page "/ZUserPanel/{CompanyID:int}"
+@page "/ZUserPanel/{CompanyID:int}/{ConversationID:int?}"