mirror of
https://github.com/claunia/marechai.git
synced 2025-12-16 19:14:25 +00:00
Add console controller and views.
This commit is contained in:
@@ -28,6 +28,7 @@
|
||||
// Copyright © 2003-2018 Natalia Portillo
|
||||
*******************************************************************************/
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
@@ -71,10 +72,11 @@ namespace cicm_web.Models
|
||||
public static Console[] GetItemsFromCompany(int id)
|
||||
{
|
||||
List<Cicm.Database.Schemas.Console> dbItems = null;
|
||||
bool? result = Program.Database?.Operations.GetConsoles(out dbItems, id);
|
||||
bool? result = Program.Database?.Operations.GetConsoles(out dbItems);
|
||||
if(result == null || result.Value == false || dbItems == null) return null;
|
||||
|
||||
return dbItems.OrderByDescending(i => i.Id).Select(TransformItem) as Console[];
|
||||
// TODO: Company chosen by DB
|
||||
return dbItems.Where(t => t.Company == id).Select(TransformItem).OrderBy(t => t.Name).ToArray();
|
||||
}
|
||||
|
||||
public static Console GetItem(int id)
|
||||
@@ -135,4 +137,57 @@ namespace cicm_web.Models
|
||||
return item;
|
||||
}
|
||||
}
|
||||
|
||||
public class ConsoleMini
|
||||
{
|
||||
public ConsoleCompany Company;
|
||||
public int Id;
|
||||
public string Name;
|
||||
|
||||
public static ConsoleMini[] GetAllItems()
|
||||
{
|
||||
List<Cicm.Database.Schemas.Console> dbItems = null;
|
||||
bool? result = Program.Database?.Operations.GetConsoles(out dbItems);
|
||||
|
||||
if(result == null || result.Value == false || dbItems == null) return null;
|
||||
|
||||
List<ConsoleMini> items = new List<ConsoleMini>();
|
||||
foreach(Cicm.Database.Schemas.Console dbItem in dbItems) items.Add(TransformItem(dbItem));
|
||||
|
||||
return items.OrderBy(t => t.Company.Name).ThenBy(t => t.Name).ToArray();
|
||||
}
|
||||
|
||||
public static ConsoleMini[] GetItemsStartingWithLetter(char letter)
|
||||
{
|
||||
List<Cicm.Database.Schemas.Console> dbItems = null;
|
||||
bool? result = Program.Database?.Operations.GetConsoles(out dbItems);
|
||||
if(result == null || result.Value == false || dbItems == null) return null;
|
||||
|
||||
List<ConsoleMini> items = new List<ConsoleMini>();
|
||||
foreach(Cicm.Database.Schemas.Console dbItem in dbItems)
|
||||
if(dbItem.Name.StartsWith(new string(letter, 1), StringComparison.InvariantCultureIgnoreCase))
|
||||
items.Add(TransformItem(dbItem));
|
||||
|
||||
return items.OrderBy(t => t.Company.Name).ThenBy(t => t.Name).ToArray();
|
||||
}
|
||||
|
||||
public static ConsoleMini[] GetItemsFromYear(int year)
|
||||
{
|
||||
List<Cicm.Database.Schemas.Console> dbItems = null;
|
||||
bool? result = Program.Database?.Operations.GetConsoles(out dbItems);
|
||||
if(result == null || result.Value == false || dbItems == null) return null;
|
||||
|
||||
List<ConsoleMini> items = new List<ConsoleMini>();
|
||||
foreach(Cicm.Database.Schemas.Console dbItem in dbItems)
|
||||
if(dbItem.Year == year)
|
||||
items.Add(TransformItem(dbItem));
|
||||
|
||||
return items.OrderBy(t => t.Company.Name).ThenBy(t => t.Name).ToArray();
|
||||
}
|
||||
|
||||
static ConsoleMini TransformItem(Cicm.Database.Schemas.Console dbItem)
|
||||
{
|
||||
return new ConsoleMini {Company = ConsoleCompany.GetItem(dbItem.Company), Id = dbItem.Id, Name = dbItem.Name};
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,7 +28,9 @@
|
||||
// Copyright © 2003-2018 Natalia Portillo
|
||||
*******************************************************************************/
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace cicm_web.Models
|
||||
{
|
||||
@@ -50,12 +52,18 @@ namespace cicm_web.Models
|
||||
Program.Database?.Operations.GetConsoleCompanies(out dbItems);
|
||||
if(result == null || result.Value == false || dbItems == null) return null;
|
||||
|
||||
List<ConsoleCompany> items = new List<ConsoleCompany>();
|
||||
return dbItems.Select(t => new ConsoleCompany {Id = t.Id, Name = t.Name}).OrderBy(t => t.Name).ToArray();
|
||||
}
|
||||
|
||||
foreach(Cicm.Database.Schemas.ConsoleCompany dbItem in dbItems)
|
||||
items.Add(new ConsoleCompany {Id = dbItem.Id, Name = dbItem.Name});
|
||||
public static ConsoleCompany[] GetItemsStartingWithLetter(char letter)
|
||||
{
|
||||
List<Cicm.Database.Schemas.ConsoleCompany> dbItems = null;
|
||||
bool? result = Program.Database?.Operations.GetConsoleCompanies(out dbItems);
|
||||
if(result == null || result.Value == false || dbItems == null) return null;
|
||||
|
||||
return items.ToArray();
|
||||
return dbItems
|
||||
.Where(t => t.Name.StartsWith(new string(letter, 1), StringComparison.InvariantCultureIgnoreCase))
|
||||
.Select(t => new ConsoleCompany {Id = t.Id, Name = t.Name}).OrderBy(t => t.Name).ToArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user