mirror of
https://bitbucket.org/myhomie/mycorerepository.git
synced 2025-12-06 09:41:19 +00:00
173 lines
6.9 KiB
C#
173 lines
6.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using MQTTnet;
|
|
using MQTTnet.Client;
|
|
using MQTTnet.Server;
|
|
using MyCore.Models;
|
|
using MyCore.Models.Layout;
|
|
using MyCore.Services;
|
|
using static MyCore.Services.OddService;
|
|
|
|
namespace MyCore.Controllers
|
|
{
|
|
[Authorize(Roles = "User")]
|
|
[Route("api/layout")]
|
|
[ApiController]
|
|
public class LayoutController : ControllerBase
|
|
{
|
|
|
|
// GET api/values
|
|
/// <summary>
|
|
/// It's a test ! :)
|
|
/// </summary>
|
|
[AllowAnonymous]
|
|
[HttpGet("panelSection")]
|
|
public ActionResult<IEnumerable<PanelSection>> Get()
|
|
{
|
|
List<PanelSection> panelSectionList = new List<PanelSection>();
|
|
|
|
// Main view
|
|
/*PanelSection panelSectionMain = new PanelSection();
|
|
panelSectionMain.Label = "Main";
|
|
panelSectionMain.Icon = "fas fa-eye";
|
|
panelSectionMain.DefaultRoute = "main";
|
|
panelSectionMain.Color = "red";*/
|
|
|
|
// Energy
|
|
PanelSection panelSectionEnergy = new PanelSection();
|
|
panelSectionEnergy.Label = "Energy";
|
|
panelSectionEnergy.Icon = "fas fa-seedling";
|
|
panelSectionEnergy.DefaultRoute = "energy";
|
|
panelSectionEnergy.Color = "green";
|
|
|
|
List<PanelMenuItem> panelSectionEnergyList = new List<PanelMenuItem>();
|
|
PanelMenuItem panelMenuItemElectricity = new PanelMenuItem();
|
|
panelMenuItemElectricity.Label = "Electricity";
|
|
panelMenuItemElectricity.Icon = "fas fa-bolt";
|
|
panelMenuItemElectricity.Route = "electricity";
|
|
panelMenuItemElectricity.Color = "yellow";
|
|
panelMenuItemElectricity.BadgeType = null;
|
|
panelMenuItemElectricity.BadgeValue = 0;
|
|
|
|
PanelMenuItem panelMenuItemGas = new PanelMenuItem();
|
|
panelMenuItemGas.Label = "Gas";
|
|
panelMenuItemGas.Icon = "fas fa-burn";
|
|
panelMenuItemGas.Route = "gas";
|
|
panelMenuItemGas.Color = "orange";
|
|
panelMenuItemGas.BadgeType = null;
|
|
panelMenuItemGas.BadgeValue = 0;
|
|
|
|
PanelMenuItem panelMenuItemWater = new PanelMenuItem();
|
|
panelMenuItemWater.Label = "Water";
|
|
panelMenuItemWater.Icon = "fas fa-tint";
|
|
panelMenuItemWater.Route = "water";
|
|
panelMenuItemWater.Color = "blue";
|
|
panelMenuItemWater.BadgeType = null;
|
|
panelMenuItemWater.BadgeValue = 0;
|
|
|
|
panelSectionEnergyList.Add(panelMenuItemElectricity);
|
|
panelSectionEnergyList.Add(panelMenuItemGas);
|
|
panelSectionEnergyList.Add(panelMenuItemWater);
|
|
|
|
panelSectionEnergy.Children = panelSectionEnergyList;
|
|
|
|
// Security
|
|
PanelSection panelSectionSecurity = new PanelSection();
|
|
panelSectionSecurity.Label = "Security";
|
|
panelSectionSecurity.Icon = "fas fa-lock";
|
|
panelSectionSecurity.Color = "yellow";
|
|
panelSectionSecurity.DefaultRoute = "security";
|
|
|
|
List<PanelMenuItem> panelMenuItemSecurityList = new List<PanelMenuItem>();
|
|
PanelMenuItem panelMenuItemAlarm = new PanelMenuItem();
|
|
panelMenuItemAlarm.Label = "Alarm";
|
|
panelMenuItemAlarm.Icon = "fas fa-bell";
|
|
panelMenuItemAlarm.Color = "yellow";
|
|
panelMenuItemAlarm.Route = "alarm";
|
|
panelMenuItemAlarm.BadgeType = null;
|
|
panelMenuItemAlarm.BadgeValue = 0;
|
|
|
|
PanelMenuItem panelMenuItemCamera = new PanelMenuItem();
|
|
panelMenuItemCamera.Label = "Camera";
|
|
panelMenuItemCamera.Icon = "fas fa-video";
|
|
panelMenuItemCamera.Route = "camera";
|
|
panelMenuItemCamera.Color = "black";
|
|
panelMenuItemCamera.BadgeType = null;
|
|
panelMenuItemCamera.BadgeValue = 0;
|
|
|
|
panelMenuItemSecurityList.Add(panelMenuItemAlarm);
|
|
panelMenuItemSecurityList.Add(panelMenuItemCamera);
|
|
|
|
panelSectionSecurity.Children = panelMenuItemSecurityList;
|
|
|
|
// Entertainment
|
|
PanelSection panelSectionEntertainment = new PanelSection();
|
|
panelSectionEntertainment.Label = "Entertainment";
|
|
panelSectionEntertainment.Icon = "fas fa-music";
|
|
panelSectionEntertainment.Color = "blue";
|
|
panelSectionEntertainment.DefaultRoute = "entertainment";
|
|
|
|
List<PanelMenuItem> panelMenuItemEntertainmentList = new List<PanelMenuItem>();
|
|
PanelMenuItem panelMenuItemMusic = new PanelMenuItem();
|
|
panelMenuItemMusic.Label = "Music";
|
|
panelMenuItemMusic.Icon = "fas fa-music";
|
|
panelMenuItemMusic.Route = "music";
|
|
panelMenuItemMusic.Color = "black";
|
|
panelMenuItemMusic.BadgeType = null;
|
|
panelMenuItemMusic.BadgeValue = 0;
|
|
|
|
PanelMenuItem panelMenuItemTv = new PanelMenuItem();
|
|
panelMenuItemTv.Label = "Tv";
|
|
panelMenuItemTv.Icon = "fas fa-tv";
|
|
panelMenuItemTv.Route = "tv";
|
|
panelMenuItemTv.BadgeType = null;
|
|
panelMenuItemTv.BadgeValue = 0;
|
|
|
|
panelMenuItemEntertainmentList.Add(panelMenuItemMusic);
|
|
panelMenuItemEntertainmentList.Add(panelMenuItemTv);
|
|
|
|
panelSectionEntertainment.Children = panelMenuItemEntertainmentList;
|
|
|
|
// Health
|
|
PanelSection panelSectionHealth = new PanelSection();
|
|
panelSectionHealth.Label = "Health";
|
|
panelSectionHealth.Icon = "fas fa-heartbeat";
|
|
panelSectionHealth.DefaultRoute = "health";
|
|
panelSectionHealth.Color = "#ff4c4c";
|
|
|
|
List<PanelMenuItem> panelSectionHealthList = new List<PanelMenuItem>();
|
|
PanelMenuItem panelMenuItemMyBody = new PanelMenuItem();
|
|
panelMenuItemMyBody.Label = "My body";
|
|
panelMenuItemMyBody.Icon = "fas fa-user-alt";
|
|
panelMenuItemMyBody.Route = "body";
|
|
panelMenuItemMyBody.BadgeType = null;
|
|
panelMenuItemMyBody.BadgeValue = 0;
|
|
|
|
PanelMenuItem panelMenuItemFitness = new PanelMenuItem();
|
|
panelMenuItemFitness.Label = "Fitness";
|
|
panelMenuItemFitness.Icon = "fas fa-running";
|
|
panelMenuItemFitness.Route = "fitness";
|
|
panelMenuItemFitness.BadgeType = null;
|
|
panelMenuItemFitness.BadgeValue = 0;
|
|
|
|
panelSectionHealthList.Add(panelMenuItemMyBody);
|
|
panelSectionHealthList.Add(panelMenuItemFitness);
|
|
|
|
panelSectionHealth.Children = panelSectionHealthList;
|
|
|
|
|
|
// panelSectionList
|
|
panelSectionList.Add(panelSectionEnergy);
|
|
panelSectionList.Add(panelSectionSecurity);
|
|
panelSectionList.Add(panelSectionEntertainment);
|
|
panelSectionList.Add(panelSectionHealth);
|
|
|
|
return panelSectionList;
|
|
}
|
|
}
|
|
}
|