diff --git a/projects/Infrastructure/Views/Shared/Search.cshtml b/projects/Infrastructure/Views/Shared/Search.cshtml index 80e23ac5..7971ccd9 100644 --- a/projects/Infrastructure/Views/Shared/Search.cshtml +++ b/projects/Infrastructure/Views/Shared/Search.cshtml @@ -1,10 +1,16 @@ @{ var inputClass = "form-control"; + var scope = ViewBag.ControllerScope as string; } @foreach (var prop in ViewData.ModelMetadata.Properties.Where(pm => pm.ShowForEdit)) { var uihit = prop.TemplateHint ?? prop.DataTypeName; var name = "query." + prop.PropertyName; + if(scope=="Organ"&&prop.PropertyName=="OrganId") + { + @Html.Hidden(prop.PropertyName) + continue; + } if (prop.PropertyName == "Id" || prop.PropertyName == "DisplayOrder" || uihit == "ImageUrl" || uihit == "MultiSelectList") { continue; diff --git a/projects/IoT.Shared/Areas/IoTCenter/Controlls/AjaxBaseController.cs b/projects/IoT.Shared/Areas/IoTCenter/Controlls/AjaxBaseController.cs index 2bea7bc1..ad11b1db 100644 --- a/projects/IoT.Shared/Areas/IoTCenter/Controlls/AjaxBaseController.cs +++ b/projects/IoT.Shared/Areas/IoTCenter/Controlls/AjaxBaseController.cs @@ -36,7 +36,6 @@ namespace IoT.Shared.Areas.IoTCenter.Controlls public AjaxBaseController(IServiceProvider services, ILogger logger, - IHttpContextAccessor httpContxt, IRepository categoryRepo, IRepository productRepo, IRepository organRepo, @@ -52,7 +51,6 @@ namespace IoT.Shared.Areas.IoTCenter.Controlls { this._services = services; this._logger = logger; - this._httpContext = httpContxt; this._categoryRepo = categoryRepo; this._productRepo = productRepo; this._organRepo = organRepo; diff --git a/projects/IoTNode/Areas/IoTCenter/Controllers/AjaxController.cs b/projects/IoTNode/Areas/IoTCenter/Controllers/AjaxController.cs index d88192b1..3f07dba3 100644 --- a/projects/IoTNode/Areas/IoTCenter/Controllers/AjaxController.cs +++ b/projects/IoTNode/Areas/IoTCenter/Controllers/AjaxController.cs @@ -1,6 +1,5 @@ using Infrastructure.Data; using IoT.Shared.Application.Domain.Entities; -using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using System; @@ -10,13 +9,8 @@ namespace Platform.Areas.IoTCenter.Controllers [Area("IoTCenter")] public class AjaxController : IoT.Shared.Areas.IoTCenter.Controlls.AjaxBaseController { - private readonly IRepository _areaRepo; - private readonly IRepository _buildingRepo; - private readonly IRepository _roleRepo; - public AjaxController(IServiceProvider services, ILogger logger, - IHttpContextAccessor httpContxt, IRepository categoryRepo, IRepository productRepo, IRepository organRepo, @@ -34,7 +28,6 @@ namespace Platform.Areas.IoTCenter.Controllers IRepository roleRepo) : base(services, logger, - httpContxt, categoryRepo, productRepo, organRepo, @@ -48,9 +41,6 @@ namespace Platform.Areas.IoTCenter.Controllers apiRepo, sceneTiggerRepo) { - this._areaRepo = areaRepo; - this._buildingRepo = buildingRepo; - this._roleRepo = roleRepo; } } } diff --git a/projects/Platform/Areas/IoTCenter/Controllers/AjaxController.cs b/projects/Platform/Areas/IoTCenter/Controllers/AjaxController.cs index a4a142fa..bc0f129c 100644 --- a/projects/Platform/Areas/IoTCenter/Controllers/AjaxController.cs +++ b/projects/Platform/Areas/IoTCenter/Controllers/AjaxController.cs @@ -1,9 +1,9 @@ using Infrastructure.Data; using Infrastructure.Extensions; using IoT.Shared.Application.Domain.Entities; -using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Rendering; +using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; @@ -14,13 +14,10 @@ namespace Platform.Areas.IoTCenter.Controllers [Area("IoTCenter")] public class AjaxController : IoT.Shared.Areas.IoTCenter.Controlls.AjaxBaseController { - private readonly IRepository _areaRepo; - private readonly IRepository _buildingRepo; private readonly IRepository _roleRepo; public AjaxController(IServiceProvider services, ILogger logger, - IHttpContextAccessor httpContxt, IRepository categoryRepo, IRepository productRepo, IRepository organRepo, @@ -32,13 +29,9 @@ namespace Platform.Areas.IoTCenter.Controllers IRepository deviceRepo, IRepository dataRepo, IRepository apiRepo, - IRepository sceneTiggerRepo, - IRepository areaRepo, - IRepository buildingRepo, - IRepository roleRepo) + IRepository sceneTiggerRepo) : base(services, logger, - httpContxt, categoryRepo, productRepo, organRepo, @@ -52,14 +45,13 @@ namespace Platform.Areas.IoTCenter.Controllers apiRepo, sceneTiggerRepo) { - this._areaRepo = areaRepo; - this._buildingRepo = buildingRepo; - this._roleRepo = roleRepo; } public JsonResult GetArea(Guid? selected = null, Guid? currentId = null, string search = null) { - var list = this._areaRepo.ReadOnlyTable() + using var scope = this._services.CreateScope(); + var repo = scope.ServiceProvider.GetRequiredService>(); + var list = repo.ReadOnlyTable() .Where(o => o.ParentId != null) .WhereIf(selected.HasValue, o => o.Id == selected.Value) .WhereIf(!string.IsNullOrEmpty(search), o => o.Name.Contains(search) || o.Number.Contains(search)) @@ -74,7 +66,9 @@ namespace Platform.Areas.IoTCenter.Controllers public JsonResult GetOrganBuilding(Guid parentId, Guid? selected = null, Guid? currentId = null) { - var list = this._buildingRepo.ReadOnlyTable() + using var scope = this._services.CreateScope(); + var repo = scope.ServiceProvider.GetRequiredService>(); + var list = repo.ReadOnlyTable() .Where(o => o.ParentId != null) .Where(o => o.OrganId == parentId) .WhereIf(currentId.HasValue, o => o.Id != currentId.Value)