Gestiti allegati da galleria e fotocamera e aggiunto sentry

This commit is contained in:
2026-02-17 10:23:46 +01:00
parent c1a133c61e
commit 544c9e8237
13 changed files with 220 additions and 76 deletions

View File

@@ -36,7 +36,7 @@ else
</div>
<div class="my-4 login-footer">
<span>@($"v{GenericSystemService.GetCurrentAppVersion()} | Powered by")</span>
<span>@GenericSystemService.GetCurrentAppVersion() | Powered by")</span>
<img src="_content/SteUp.Shared/images/logoIntegry.svg" class="img-fluid" alt="Integry">
</div>
</div>

View File

@@ -2,21 +2,5 @@
@inject IGenericSystemService GenericSystemService
<div class="app-version">
<span>@Version</span>
<span>@GenericSystemService.GetCurrentAppVersion()</span>
</div>
@code
{
private string Version { get; set; } = "";
protected override void OnInitialized()
{
#if DEBUG
Version = $"v{GenericSystemService.GetCurrentAppVersion()} [DEBUG]";
#else
Version = $"v{GenericSystemService.GetCurrentAppVersion()}";
#endif
StateHasChanged();
}
}

View File

@@ -1,5 +1,7 @@
@using SteUp.Shared.Components.Layout
@using SteUp.Shared.Components.Layout.Overlay
@using SteUp.Shared.Core.Dto
@using SteUp.Shared.Core.Interface.System
@inject IAttachedService AttachedService
<MudDialog Class="customDialog-form disable-safe-area">
<DialogContent>
@@ -34,18 +36,11 @@
</DialogActions>
</MudDialog>
<SaveOverlay VisibleOverlay="VisibleOverlay" SuccessAnimation="SuccessAnimation"/>
@code {
[CascadingParameter] private IMudDialogInstance MudDialog { get; set; }
[CascadingParameter] private IMudDialogInstance MudDialog { get; set; } = null!;
[Parameter] public bool CanAddPosition { get; set; }
//Overlay for save
private bool VisibleOverlay { get; set; }
private bool SuccessAnimation { get; set; }
// private AttachedDTO? Attached { get; set; }
private AttachedDto? Attached { get; set; }
private bool _requireNewName;
@@ -60,8 +55,6 @@
}
}
private bool SelectTypePicture { get; set; }
private string TitleModal { get; set; } = "Aggiungi allegati";
private string? _newName;
@@ -76,66 +69,53 @@
}
}
protected override async Task OnInitializedAsync()
protected override void OnInitialized()
{
SelectTypePicture = true;
RequireNewName = false;
Snackbar.Configuration.PositionClass = Defaults.Classes.Position.TopCenter;
}
private async Task OnCamera()
{
// Attached = await AttachedService.SelectImageFromCamera();
//
// if (Attached != null)
// {
// RequireNewName = true;
// StateHasChanged();
// }
Attached = await AttachedService.SelectImageFromCamera();
if (Attached != null)
{
RequireNewName = true;
StateHasChanged();
}
}
private async Task OnGallery()
{
// Attached = await AttachedService.SelectImageFromGallery();
//
// if (Attached != null)
// {
// RequireNewName = true;
// StateHasChanged();
// }
Attached = await AttachedService.SelectImageFromGallery();
if (Attached != null)
{
RequireNewName = true;
StateHasChanged();
}
}
private void OnNewName()
{
// if (Attached != null)
// {
// switch (Attached.Type)
// {
// case AttachedDTO.TypeAttached.Position:
// {
// CanAddPosition = false;
//
// Attached.Description = NewName!;
// Attached.Name = NewName!;
//
// break;
// }
// case AttachedDTO.TypeAttached.Image:
// {
// var extension = Path.GetExtension(Attached.Name);
// Attached.Name = NewName! + extension;
//
// break;
// }
// case AttachedDTO.TypeAttached.Document:
// break;
// default:
// throw new ArgumentOutOfRangeException();
// }
// }
if (Attached != null)
{
switch (Attached.Type)
{
case AttachedDto.TypeAttached.Image:
{
var extension = Path.GetExtension(Attached.Name);
Attached.Name = NewName! + extension;
break;
}
default:
throw new ArgumentOutOfRangeException();
}
}
// MudDialog.Close(Attached);
MudDialog.Close();
MudDialog.Close(Attached);
}
}

View File

@@ -0,0 +1,23 @@
namespace SteUp.Shared.Core.Dto;
public class AttachedDto
{
public string? Name { get; set; }
public string? Description { get; set; }
public string? MimeType { get; set; }
public long? DimensionBytes { get; set; }
public string? Path { get; set; }
public byte[]? FileBytes { get; set; }
public Stream? FileContent =>
FileBytes is null ? null : new MemoryStream(FileBytes);
public TypeAttached Type { get; set; }
public enum TypeAttached
{
Image
}
}

View File

@@ -0,0 +1,12 @@
using SteUp.Shared.Core.Dto;
namespace SteUp.Shared.Core.Interface.System;
public interface IAttachedService
{
Task<AttachedDto?> SelectImageFromCamera();
Task<AttachedDto?> SelectImageFromGallery();
Task<string> SaveToTempStorage(Stream file, string fileName, CancellationToken ct = default);
Task OpenFile(string fileName, string filePath);
}

View File

@@ -16,6 +16,7 @@
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0"/>
<PackageReference Include="MudBlazor" Version="8.13.0" />
<PackageReference Include="CodeBeam.MudBlazor.Extensions" Version="8.2.4" />
<PackageReference Include="Sentry" Version="5.16.1" />
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="8.14.0"/>
<PackageReference Include="Microsoft.AspNetCore.Components.Authorization" Version="9.0.12"/>
<PackageReference Include="Microsoft.Maui.Essentials" Version="9.0.120"/>