From 528fcc56df956e1ec0dc314c1abb94e82c06e1d8 Mon Sep 17 00:00:00 2001 From: wanggang <76527413@qq.com> Date: Tue, 23 Jun 2020 17:29:10 +0800 Subject: [PATCH] update Former-commit-id: 2c288c708a972b7e512358516949aadaf3f67ff2 Former-commit-id: d2868a45394859fb3cfe153729a0a19fe4b0bab6 --- projects/Infrastructure/Web/BaseStartup.cs | 2 +- projects/IoTCenter/Api/SiteController.cs | 66 +++++++++++++++++++ .../IoTCenter/Application/Domain/Organ.cs | 2 + projects/IoTCenter/Views/Home/Index.cshtml | 2 +- projects/IoTCenter/wwwroot/js/util.js | 2 +- projects/UserCenter/Api/TokenController.cs | 20 ------ projects/WebMVC/wwwroot/js/common.js | 3 +- projects/WebMVC/wwwroot/js/components.js | 2 +- projects/WebMVC/wwwroot/js/signalr.js | 1 - projects/WebMVC/wwwroot/pages/admin/home.html | 14 ++++ projects/WebMVC/wwwroot/pages/admin/list.html | 14 ++++ projects/WebMVC/wwwroot/pages/device.html | 3 +- projects/WebMVC/wwwroot/pages/home.html | 4 +- projects/WebMVC/wwwroot/pages/node.html | 3 +- projects/WebMVC/wwwroot/pages/nodes.html | 4 +- projects/WebMVC/wwwroot/pages/organs.html | 2 +- projects/WebMVC/wwwroot/pages/product.html | 4 +- .../{components => pages/shared}/layout.html | 52 +++++++++++---- 18 files changed, 152 insertions(+), 48 deletions(-) create mode 100644 projects/IoTCenter/Api/SiteController.cs create mode 100644 projects/WebMVC/wwwroot/pages/admin/home.html create mode 100644 projects/WebMVC/wwwroot/pages/admin/list.html rename projects/WebMVC/wwwroot/{components => pages/shared}/layout.html (69%) diff --git a/projects/Infrastructure/Web/BaseStartup.cs b/projects/Infrastructure/Web/BaseStartup.cs index 976b8158..4f11ad24 100644 --- a/projects/Infrastructure/Web/BaseStartup.cs +++ b/projects/Infrastructure/Web/BaseStartup.cs @@ -382,7 +382,7 @@ namespace Infrastructure.Web var context = services.GetService(); if (context.Database.EnsureCreated()) { - if(!Env.IsDevelopment()) + if (!Env.IsDevelopment()) { var sql = context.GetService().GenerateCreateScript(); var file = "db.sql"; diff --git a/projects/IoTCenter/Api/SiteController.cs b/projects/IoTCenter/Api/SiteController.cs new file mode 100644 index 00000000..6df66172 --- /dev/null +++ b/projects/IoTCenter/Api/SiteController.cs @@ -0,0 +1,66 @@ +using Application.Domain.Entities; +using Infrastructure.Application.Services.Settings; +using Infrastructure.Data; +using Infrastructure.Extensions; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; +using System; +using System.Collections.Generic; +using System.Linq; + +namespace IoTCenter.Api.Controllers +{ + [ApiVersion("1.0")] + [Route("api/v{version:apiVersion}/[controller]/[action]")] + [ApiController] + public class SiteController : ControllerBase + { + private readonly ILogger _logger; + private readonly ISettingService _settingService; + private readonly IRepository _userRepo; + + public SiteController( + ILogger logger, + ISettingService settingService, + IRepository userRepo) + { + this._logger = logger; + this._settingService = settingService; + this._userRepo = userRepo; + } + + public IActionResult GetSite() + { + try + { + var username = User.Identity.IsAuthenticated ? this.HttpContext.User.Identity.Name : null; + var permissions = new List(); + if (User.Identity.IsAuthenticated) + { + permissions = this._userRepo.ReadOnlyTable() + .Where(o => o.UserName == username) + .SelectMany(o => o.UserRoles) + .Select(o => o.Role) + .SelectMany(o => o.RolePermissions) + .Select(o => o.Permission) + .Select(o => o.Number) + .ToList(); + } + return Ok(new + { + logo = this._settingService.GetSetting("logo").Value, + name = this._settingService.GetSetting("name").Value, + copyright = this._settingService.GetSetting("copyright").Value, + version = Helper.Instance.GetVersion(), + username, + permissions + }); + } + catch (Exception ex) + { + this._logger.LogError(ex, ex.Message); + return Problem(ex.Message); + } + } + } +} \ No newline at end of file diff --git a/projects/IoTCenter/Application/Domain/Organ.cs b/projects/IoTCenter/Application/Domain/Organ.cs index 8cad0096..55ce5f37 100644 --- a/projects/IoTCenter/Application/Domain/Organ.cs +++ b/projects/IoTCenter/Application/Domain/Organ.cs @@ -1,9 +1,11 @@ using Infrastructure.Domain; +using Infrastructure.Web.Mvc; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; namespace IoTCenter.Application.Domain { + [GeneratedController] [Display(Name = "机构")] public class Organ : BaseEntity { diff --git a/projects/IoTCenter/Views/Home/Index.cshtml b/projects/IoTCenter/Views/Home/Index.cshtml index e1d231e9..ce7ded27 100644 --- a/projects/IoTCenter/Views/Home/Index.cshtml +++ b/projects/IoTCenter/Views/Home/Index.cshtml @@ -49,7 +49,7 @@ \ No newline at end of file diff --git a/projects/WebMVC/wwwroot/pages/admin/list.html b/projects/WebMVC/wwwroot/pages/admin/list.html new file mode 100644 index 00000000..c5c19891 --- /dev/null +++ b/projects/WebMVC/wwwroot/pages/admin/list.html @@ -0,0 +1,14 @@ + + \ No newline at end of file diff --git a/projects/WebMVC/wwwroot/pages/device.html b/projects/WebMVC/wwwroot/pages/device.html index 01e3fb70..90464323 100644 --- a/projects/WebMVC/wwwroot/pages/device.html +++ b/projects/WebMVC/wwwroot/pages/device.html @@ -1,5 +1,5 @@