using AyCode.Core.Helpers; using AyCode.Core.Loggers; using AyCode.Models.Users; using FruitBank.Common.Entities; using FruitBank.Common.Loggers; using FruitBank.Common.Models; using FruitBankHybrid.Shared.Services.Loggers; using FruitBankHybrid.Shared.Services.SignalRs; using Microsoft.AspNetCore.Components; using Microsoft.Extensions.Logging; using Microsoft.JSInterop; using System; using System.Collections.Generic; using System.Linq; using System.Security.Cryptography.X509Certificates; using System.Text; using System.Threading.Tasks; using Mango.Nop.Core.Dtos; using static System.Net.Mime.MediaTypeNames; using static System.Runtime.InteropServices.JavaScript.JSType; using ILogger = FruitBank.Common.Loggers.ILogger; namespace FruitBankHybrid.Shared.Pages { public partial class Chat : ComponentBase { [Inject] public required IEnumerable LogWriters { get; set; } [Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; } private ILogger _logger; private string _userName = "Partner name"; private string _message; private readonly List<(string User, string Text)> _messages = []; private List Users { get; set; } = []; private bool DropDownVisible { get; set; } private CustomerDto? SelectedUser { get; set; } protected override async Task OnInitializedAsync() { _logger = new LoggerClient(LogWriters.ToArray()); _logger.Info("OnInitializedAsync"); Users.AddRange(await FruitBankSignalRClient.GetMeasuringUsers() ?? []); //SelectedUser = Users.FirstOrDefault(); //DropDownVisible = false; await base.OnInitializedAsync(); } private async Task GetPartner() { var measuringModel = new MeasuringModel(); if (int.TryParse(_message, out var partnerId)) { _message = string.Empty; measuringModel.Name = (await FruitBankSignalRClient.GetPartnerById(partnerId))?.Name!; //measuringModel.Name = (await FruitBankSignalRClient.GetMeasuringModelByShippingId(partnerId))?.Name!; } _messages.Add((_userName, measuringModel?.Name ?? "ERROR")); //StateHasChanged(); } } }