Correction
continuous-integration/drone/push Build is failing Details

pull/29/head
Augustin AFFOGNON 2 years ago
parent 756453ee35
commit 750350a217

@ -6,20 +6,13 @@
<div>Available items:</div>
<div>
<div class="css-grid">
<table>
@foreach (var item in Items)
{
<tr>
<td>
{item}
</td>
<td>
<CraftingItem Item="item" NoDrop="true" />
</td>
</tr>
}
</table>
</div>
</div>

@ -33,7 +33,10 @@ namespace BlazorT.Composants
[Inject]
public NavigationManager NavigationManager { get; set; }
/// <summary>
/// Gère l'événement de glisser-déposer lorsqu'un élément est glissé sur la case.
/// Ajoute une action d'inventaire pour enregistrer l'événement.
/// </summary>
internal void OnDragEnter()
{
if (NoDrop)
@ -45,6 +48,10 @@ namespace BlazorT.Composants
Parent.Actions.Add(new InventoryAction { Action = "Drag Enter", Item = this.Item, Index = this.Index });
}
/// <summary>
/// Gère l'événement de glisser-déposer lorsqu'un élément est glissé hors de la case.
/// Ajoute une action d'inventaire pour enregistrer l'événement.
/// </summary>
internal void OnDragLeave()
{
if (NoDrop)
@ -57,6 +64,10 @@ namespace BlazorT.Composants
Parent.Actions.Add(new InventoryAction { Action = "Drag Leave", Item = this.Item, Index = this.Index });
}
/// <summary>
/// Gère l'événement de glisser-déposer lorsqu'un élément est déposé sur la case.
/// Ajoute une action d'inventaire pour enregistrer l'événement, met à jour l'élément de la case et vérifie si une recette est possible.
/// </summary>
internal void OnDrop()
{
if (NoDrop)
@ -77,6 +88,10 @@ namespace BlazorT.Composants
Parent.CheckRecipe();
}
/// <summary>
/// Gère l'événement de glisser-déposer lorsqu'un élément est déplacé.
/// Ajoute une action d'inventaire pour enregistrer l'événement.
/// </summary>
private void OnDragStart()
{
Parent.CurrentDragItem = this.Item;
@ -85,7 +100,12 @@ namespace BlazorT.Composants
Parent.Actions.Add(new InventoryAction { Action = "Drag Start", Item = this.Item, Index = this.Index });
}
/// <summary>
/// Gère l'événement de suppression d'un élément.
/// Affiche une fenêtre modale de confirmation et supprime l'élément s'il est confirmé.
/// Ajoute une action d'inventaire pour enregistrer l'événement et recharge la page.
/// </summary>
/// <param name="id">ID de l'élément à supprimer</param>
private async Task OnDeleteAsync(int id)
{
var parameters = new ModalParameters();
@ -106,6 +126,6 @@ namespace BlazorT.Composants
NavigationManager.NavigateTo("inventory", true);
}
}
}

@ -21,10 +21,10 @@ public partial class Inventory
public IConfiguration Configuration { set; get; }
/// <summary>
/// une méthode asynchrone de cycle de vie appelée OnAfterRenderAsync, qui est exécutée après le rendu initial de la page ou du composant.
/// La méthode commence par appeler la version de la méthode de cycle de vie parente avec l'instruction base.OnAfterRenderAsync (firstRender)
/// Method that is invoked after the component has been rendered.
/// </summary>
/// <param name="firstRender">Boolean indicating if this is the first time the component is being rendered.</param>
/// <returns>A Task representing the asynchronous operation.</returns>
protected override async Task OnAfterRenderAsync(bool firstRender)
{

@ -5,18 +5,50 @@ namespace BlazorT.Services
{
public interface IInventoryDataService
{
Task Add(ItemModel model);
/// <summary>
/// Ajoute un élément à l'inventaire.
/// </summary>
/// <param name="model">Modèle de l'élément à ajouter.</param>
public Task Add(ItemModel model);
Task<int> Count();
/// <summary>
/// Récupère le nombre total d'éléments dans l'inventaire.
/// </summary>
/// <returns>Le nombre total d'éléments dans l'inventaire.</returns>
public Task<int> Count();
Task<List<Item>> List(int currentPage, int pageSize);
/// <summary>
/// Récupère une liste d'éléments de l'inventaire.
/// </summary>
/// <param name="currentPage">La page courante de la liste.</param>
/// <param name="pageSize">Le nombre d'éléments par page.</param>
/// <returns>Une liste d'éléments de l'inventaire.</returns>
public Task<List<Item>> List(int currentPage, int pageSize);
Task<Item> GetById(int id);
/// <summary>
/// Récupère un élément de l'inventaire par ID.
/// </summary>
/// <param name="id">ID de l'élément à récupérer.</param>
/// <returns>L'élément de l'inventaire correspondant à l'ID spécifié.</returns>
public Task<Item> GetById(int id);
Task Update(int id, ItemModel model);
/// <summary>
/// Met à jour un élément de l'inventaire.
/// </summary>
/// <param name="id">ID de l'élément à mettre à jour.</param>
/// <param name="model">Modèle de l'élément à mettre à jour.</param>
public Task Update(int id, ItemModel model);
Task Delete(int id);
/// <summary>
/// Supprime un élément de l'inventaire.
/// </summary>
/// <param name="id">ID de l'élément à supprimer.</param>
public Task Delete(int id);
Task<List<InventoryRecipe>> GetRecipes();
/// <summary>
/// Récupère une liste de recettes d'artisanat.
/// </summary>
/// <returns>Une liste de recettes d'artisanat.</returns>
public Task<List<InventoryRecipe>> GetRecipes();
}
}

@ -8,13 +8,23 @@ public class InventoryDataService : IInventoryDataService
{
private readonly HttpClient _http;
private ILogger<InventoryDataService> _logger;
public InventoryDataService(
HttpClient http,ILogger<InventoryDataService> logger )
/// <summary>
/// Initializes a new instance of the <see cref="InventoryDataService"/> class.
/// </summary>
/// <param name="http">The HttpClient used for HTTP requests.</param>
/// <param name="logger">The ILogger used for logging.</param>
public InventoryDataService(HttpClient http, ILogger<InventoryDataService> logger)
{
_logger = logger;
_http = http;
_logger = logger;
}
/// <summary>
/// Adds a new item to the inventory.
/// </summary>
/// <param name="model">The item model to add.</param>
public async Task Add(ItemModel model)
{
// Get the item
@ -26,17 +36,32 @@ public class InventoryDataService : IInventoryDataService
await _http.PostAsJsonAsync("https://localhost:7234/api/Crafting/", item);
}
/// <summary>
/// Retrieves the number of items in the inventory.
/// </summary>
/// <returns>The number of items in the inventory.</returns>
public async Task<int> Count()
{
return await _http.GetFromJsonAsync<int>("https://localhost:7234/api/Crafting/count");
}
/// <summary>
/// Retrieves a list of items in the inventory.
/// </summary>
/// <param name="currentPage">The current page number.</param>
/// <param name="pageSize">The number of items per page.</param>
/// <returns>A list of items in the inventory.</returns>
public async Task<List<Item>> List(int currentPage, int pageSize)
{
_logger.LogInformation($".......List fetching........ <{currentPage}>;<{pageSize}>");
return await _http.GetFromJsonAsync<List<Item>>($"https://localhost:7234/api/Crafting/?currentPage={currentPage}&pageSize={pageSize}");
}
/// <summary>
/// Retrieves an item in the inventory by its ID.
/// </summary>
/// <param name="id">The ID of the item to retrieve.</param>
/// <returns>The item with the specified ID.</returns>
public async Task<Item> GetById(int id)
{
_logger.LogInformation($"Element with id....... <{id}>");
@ -44,6 +69,11 @@ public class InventoryDataService : IInventoryDataService
return await _http.GetFromJsonAsync<Item>($"https://localhost:7234/api/Crafting/{id}");
}
/// <summary>
/// Updates an item in the inventory.
/// </summary>
/// <param name="id">The ID of the item to update.</param>
/// <param name="model">The updated item model.</param>
public async Task Update(int id, ItemModel model)
{
// Get the item
@ -53,6 +83,10 @@ public class InventoryDataService : IInventoryDataService
await _http.PutAsJsonAsync($"https://localhost:7234/api/Crafting/{id}", item);
}
/// <summary>
/// Deletes an item from the inventory.
/// </summary>
/// <param name="id">The ID of the item to delete.</param>
public async Task Delete(int id)
{
_logger.LogInformation($"Deleting Element with id....... <{id}>");
@ -60,6 +94,10 @@ public class InventoryDataService : IInventoryDataService
await _http.DeleteAsync($"https://localhost:7234/api/Crafting/{id}");
}
/// <summary>
///
public async Task<List<InventoryRecipe>> GetRecipes()
{
return await _http.GetFromJsonAsync<List<InventoryRecipe>>("https://localhost:7234/api/Crafting/recipe");

Loading…
Cancel
Save