Merge branch 'merged_APE' of codefirst.iut.uca.fr:HeartDev/Admin into merged_APE

merged_APE
Antoine PEREDERII 1 year ago
commit 9a0abe0206

@ -3,6 +3,7 @@ using Microsoft.AspNetCore.Components.Forms;
using Microsoft.AspNetCore.Components;
using HeartTrack.Models;
using HeartTrack.Services;
using HeartTrack.Services.TicketDataService;
namespace HeartTrack.Pages
{
@ -10,7 +11,7 @@ namespace HeartTrack.Pages
{
[Inject]
public ILocalStorageService LocalStorage { get; set; }
public ITicketDataService TicketStorage { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
@ -18,15 +19,12 @@ namespace HeartTrack.Pages
[Inject]
public IWebHostEnvironment WebHostEnvironment { get; set; }
/// <summary>
/// The current item model
/// </summary>
public TicketModel ticketModel = new(){};
private async void HandleValidSubmit()
{
// Get the current data
var currentData = await LocalStorage.GetItemAsync<List<Ticket>>("data");
var currentData = await TicketStorage.getAllTickets();
// Simulate the Id
ticketModel.Id = currentData.Max(s => s.Id) + 1;
@ -42,7 +40,7 @@ namespace HeartTrack.Pages
});
// Save the data
await LocalStorage.SetItemAsync("data", currentData);
await TicketStorage.SaveAllTickets(currentData);
NavigationManager.NavigateTo("tickets");
}

@ -49,13 +49,13 @@ This is the ticket list of users.
@if (context.isCheck)
{
<MudFab Color="Color.Tertiary" StartIcon="@Icons.Material.Filled.RemoveRedEye" Size="Size.Small" @onclick="() => OnView(context.Id)" />
<MudFab Color="Color.Secondary" StartIcon="@Icons.Material.Filled.Delete" Size="Size.Small" @onclick="() => OnDelete(context.Id)" />
<MudFab Color="Color.Secondary" StartIcon="@Icons.Material.Filled.Delete" Size="Size.Small" @onclick="() => OnDelete(context)" />
}
else
{
<MudFab Color="Color.Tertiary" StartIcon="@Icons.Material.Filled.RemoveRedEye" Size="Size.Small" @onclick="() => OnView(context.Id)" />
<MudFab Color="Color.Secondary" StartIcon="@Icons.Material.Filled.Close" Size="Size.Small" @onclick="() => OnClose(context.Id)" />
<MudFab Color="Color.Secondary" StartIcon="@Icons.Material.Filled.Delete" Size="Size.Small" @onclick="() => OnDelete(context.Id)" />
<MudFab Color="Color.Secondary" StartIcon="@Icons.Material.Filled.Delete" Size="Size.Small" @onclick="() => OnDelete(context)" />
}
</DisplayTemplate>
</DataGridColumn>

@ -3,6 +3,7 @@ using Blazorise;
using Blazorise.DataGrid;
using HeartTrack.Models;
using HeartTrack.Services;
using HeartTrack.Services.TicketDataService;
using Microsoft.AspNetCore.Components;
using MudBlazor;
using System;
@ -25,7 +26,7 @@ namespace HeartTrack.Pages
public ILocalStorageService LocalStorage { get; set; }
[Inject]
public IDataService DataService { get; set; }
public ITicketDataService TicketService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
@ -71,7 +72,7 @@ namespace HeartTrack.Pages
private async void OnClose(int id)
{
await DataService.Close(id);
await TicketService.Close(id);
// Reload the page
NavigationManager.NavigateTo("tickets", true);
@ -87,11 +88,10 @@ namespace HeartTrack.Pages
NavigationManager.NavigateTo("tickets/add");
}
private async void OnDelete(int id)
private async void OnDelete(Ticket t)
{
await DataService.Delete(id);
await TicketService.RemoveTicket(t);
// Reload the page
NavigationManager.NavigateTo("tickets", true);
}

@ -1,5 +1,6 @@
using HeartTrack.Models;
using HeartTrack.Services;
using HeartTrack.Services.TicketDataService;
using Microsoft.AspNetCore.Components;
namespace HeartTrack.Pages
@ -12,7 +13,7 @@ namespace HeartTrack.Pages
private Ticket ticket { get; set; } = new();
[Inject]
public IDataService DataService { get; set; }
public ITicketDataService TicketService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
@ -22,7 +23,7 @@ namespace HeartTrack.Pages
protected async Task OnInitializedAsync()
{
var item = await DataService.GetByID(Id);
var item = await TicketService.getTicketById(Id);
ticket = new Ticket
{

@ -20,6 +20,7 @@ using Blazored.LocalStorage;
using HeartTrack.Services;
using Microsoft.AspNetCore.Components.Authorization;
using MudBlazor.Services;
using HeartTrack.Services.TicketDataServiceFactice;
var builder = WebApplication.CreateBuilder(args);
@ -35,7 +36,7 @@ builder.Services.AddHttpClient();
builder.Services.AddScoped<IDataService, DataLocalService>();
builder.Services.AddScoped<IActivityDataService, ActivityDataServiceAPI>();
builder.Services.AddScoped<IReportDataService, ReportDataServiceAPI>();
builder.Services.AddScoped<ITicketDataService, TicketDataServiceAPI>();
builder.Services.AddScoped<ITicketDataService, TicketDataServiceFactice>();
builder.Services.AddScoped<IUserDataService, UserDataServiceAPI>();

@ -16,6 +16,7 @@ namespace HeartTrack.Services.TicketDataService
public Task UpdateTicket(Ticket t);
public Task<Ticket> getTicketById(int id);
public Task Close(int Id);
}
}

@ -82,5 +82,10 @@ namespace HeartTrack.Services.TicketDataService
Console.WriteLine("API - Problème mise à jour Ticket");
}
}
public async Task Close(int id)
{
}
}
}

@ -97,26 +97,17 @@ namespace HeartTrack.Services.TicketDataServiceFactice
public async Task RemoveTicket(Ticket t)
{
List<Ticket> data = await getAllTickets();
int index = -1;
foreach (Ticket temp in data)
{
if (temp.Id == t.Id)
{
index = data.IndexOf(temp);
}
}
// Get the current data
var currentData = await _localStorage.GetItemAsync<List<Ticket>>("data");
if (index != -1)
{
data.RemoveAt(index);
}
// Get the item int the list
var item = currentData.FirstOrDefault(w => w.Id == t.Id);
await this.SaveAllTickets(data);
// Delete item in
currentData.Remove(item);
data = await this.getAllTickets();
// Save the data
await _localStorage.SetItemAsync("data", currentData);
}
public async Task SaveAllTickets(List<Ticket> list)
@ -134,5 +125,20 @@ namespace HeartTrack.Services.TicketDataServiceFactice
await this.RemoveTicket(t);
await this.AddTicket(t);
}
public async Task Close(int Id)
{
// Get the current data
var currentData = await _localStorage.GetItemAsync<List<Ticket>>("data");
// Get the item int the list
var item = currentData.FirstOrDefault(w => w.Id == Id);
// Update item status
item.isCheck = true;
// Save the data
await _localStorage.SetItemAsync("data", currentData);
}
}
}
Loading…
Cancel
Save