OnlineMonitorController.cs 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Configuration;
  4. using System.Linq;
  5. using System.Threading.Tasks;
  6. using Applications.UniversalApi_WebConsole_App.Models.OnlineMonitor;
  7. using Microsoft.AspNetCore.Mvc;
  8. using Microsoft.Extensions.Configuration;
  9. namespace Applications.UniversalApi_WebConsole_App.Controllers
  10. {
  11. public class OnlineMonitorController : Controller
  12. {
  13. public OnlineMonitorController(IConfiguration configuration)
  14. {
  15. Configuration = configuration;
  16. }
  17. public IConfiguration Configuration { get; }
  18. public IActionResult Index(string tab)
  19. {
  20. var onlineMonitorInformations = GetOnlineMonitorInfo(tab);
  21. return View(onlineMonitorInformations);
  22. }
  23. private OnlineMonitorInfo GetOnlineMonitorInfo(string tab)
  24. {
  25. var onlineMonitorInfo = new OnlineMonitorInfo();
  26. if (!string.IsNullOrEmpty(tab))
  27. {
  28. onlineMonitorInfo.NavigationInfo = new PageNavigationInfo() {CurrentTab = (Operation)Enum.Parse(typeof(Operation), tab),Page = 1};
  29. if ((Operation) Enum.Parse(typeof(Operation), tab) == Operation.ChartView)
  30. {
  31. onlineMonitorInfo.QueryInformation = new QueryInfo(){ OptionalCriteria = Enum.GetNames(typeof(Criteria)).ToList()};
  32. }
  33. }
  34. else
  35. {
  36. onlineMonitorInfo.NavigationInfo = new PageNavigationInfo() { CurrentTab = Operation.PumpView, Page = 1};
  37. }
  38. onlineMonitorInfo.mqttConnectionString = Configuration.GetConnectionString("MQTTConectionString");
  39. return onlineMonitorInfo;
  40. }
  41. public IActionResult Nozzles()
  42. {
  43. return View("Nozzles",GetOnlineMonitorInfo("NozzleView"));
  44. }
  45. public IActionResult Chart()
  46. {
  47. return View("Chart", GetOnlineMonitorInfo("ChartView"));
  48. }
  49. public IActionResult Upload()
  50. {
  51. return View("Upload");
  52. }
  53. public IActionResult Pumps()
  54. {
  55. return View("pumps", GetOnlineMonitorInfo(""));
  56. }
  57. }
  58. }