Add TodoItem model and repository.
This commit is contained in:
parent
341e2da53e
commit
88fb5425b4
10
ServerManagement/Models/ToDoItem.cs
Normal file
10
ServerManagement/Models/ToDoItem.cs
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
namespace ServerManagement.Models
|
||||||
|
{
|
||||||
|
public class ToDoItem
|
||||||
|
{
|
||||||
|
public int Id { get; set; }
|
||||||
|
public string Name { get; set; } = "";
|
||||||
|
public bool IsCompleted { get; set; }
|
||||||
|
public DateTime DateCompleted { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
66
ServerManagement/Models/ToDoItemsRepository.cs
Normal file
66
ServerManagement/Models/ToDoItemsRepository.cs
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
namespace ServerManagement.Models
|
||||||
|
{
|
||||||
|
public static class ToDoItemsRepository
|
||||||
|
{
|
||||||
|
private static List<ToDoItem> items = new List<ToDoItem>()
|
||||||
|
{
|
||||||
|
new ToDoItem { Id = 1, Name = "Update firmware of Brocade ICX 6430." },
|
||||||
|
new ToDoItem { Id = 2, Name = "Fix bug with missing icons on Windows server." },
|
||||||
|
new ToDoItem { Id = 3, Name = "Install Docker hub on Server D." },
|
||||||
|
new ToDoItem { Id = 4, Name = "Upgrade VM RAM." },
|
||||||
|
new ToDoItem { Id = 5, Name = "Investigate disk size of Debian server." },
|
||||||
|
};
|
||||||
|
|
||||||
|
public static void AddItem(ToDoItem item)
|
||||||
|
{
|
||||||
|
var maxId = items.Max(s => s.Id);
|
||||||
|
item.Id = (items.Count > 0) ? maxId + 1 : 1;
|
||||||
|
items.Add(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static List<ToDoItem> GetItems()
|
||||||
|
{
|
||||||
|
var sortedItems = items
|
||||||
|
.OrderBy(item => item.IsCompleted)
|
||||||
|
.ThenByDescending(item => item.Id)
|
||||||
|
.ToList();
|
||||||
|
return sortedItems;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ToDoItem? GetItemById(int id)
|
||||||
|
{
|
||||||
|
var item = items.FirstOrDefault(item => item.Id == id);
|
||||||
|
if (item != null)
|
||||||
|
{
|
||||||
|
return new ToDoItem { Id = item.Id, Name = item.Name };
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void UpdateItem(int itemId, ToDoItem item)
|
||||||
|
{
|
||||||
|
if (itemId != item.Id) return;
|
||||||
|
|
||||||
|
var itemToUpdate = items.FirstOrDefault(item => item.Id == itemId);
|
||||||
|
if (itemToUpdate != null)
|
||||||
|
{
|
||||||
|
itemToUpdate.Name = item.Name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void DeleteItem(int itemId)
|
||||||
|
{
|
||||||
|
var itemToDelete = items.FirstOrDefault(item => item.Id == itemId);
|
||||||
|
if (itemToDelete != null)
|
||||||
|
{
|
||||||
|
items.Remove(itemToDelete);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static List<ToDoItem> SearchItems(string itemFilter)
|
||||||
|
{
|
||||||
|
return items.Where(item => item.Name.Contains(itemFilter, StringComparison.OrdinalIgnoreCase))
|
||||||
|
.ToList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user