Former-commit-id: 83be5060d2afed358562953157e42318c9e68de9
Former-commit-id: 4f6e7868ae3c006482ecbd33769fc2405c090632
1.0
wanggang 5 years ago
parent bdc2e05ebf
commit 2676a9750c

@ -168,6 +168,7 @@ CREATE TABLE "iot_OrganIoTScene" (
"Hidden" INTEGER NOT NULL, "Hidden" INTEGER NOT NULL,
"DisplayOrder" INTEGER NOT NULL, "DisplayOrder" INTEGER NOT NULL,
"OrganId" TEXT NOT NULL, "OrganId" TEXT NOT NULL,
"BuildingId" TEXT NULL,
CONSTRAINT "FK_iot_OrganIoTScene_iot_Organ_OrganId" FOREIGN KEY ("OrganId") REFERENCES "iot_Organ" ("Id") ON DELETE CASCADE CONSTRAINT "FK_iot_OrganIoTScene_iot_Organ_OrganId" FOREIGN KEY ("OrganId") REFERENCES "iot_Organ" ("Id") ON DELETE CASCADE
); );

@ -6,6 +6,7 @@ using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Platform.ViewModels; using Platform.ViewModels;
using System.Collections.Generic;
using System.Linq; using System.Linq;
namespace Platform.Controllers namespace Platform.Controllers
@ -44,12 +45,27 @@ namespace Platform.Controllers
public IActionResult Building(HomeModel model) public IActionResult Building(HomeModel model)
{ {
var userOrganId = User.GetOrganId().Value;//当前用户机构Id var userOrganId = User.GetOrganId().Value;//当前用户机构Id
var currentOrgan = this._organRepo.ReadOnlyTable().FirstOrDefault(o => o.Id == userOrganId);//当前用户机构 var userOrgans = this._userRepo.ReadOnlyTable()
var organList = this._organRepo.ReadOnlyTable()//当前用户机构及下级机构 .Where(o=>o.UserName==User.Identity.Name)
.SelectMany(o => o.OrganUsers)
.Select(o => o.Organ)
.ToList();
var organList = new List<Organ>();
foreach (var item in userOrgans)
{
var userOrganList = this._organRepo.ReadOnlyTable()//当前用户机构及下级机构
.Where(o => o.ParentId != null) .Where(o => o.ParentId != null)
.Where(o => o.Left >= currentOrgan.Left && o.Right <= currentOrgan.Right) .Where(o => o.Left >= item.Left && o.Right <= item.Right)
.Include(o => o.Buildings) .Include(o => o.Buildings)
.ToList(); .ToList();
organList.AddRange(userOrganList);
}
var currentUserOrgan = this._organRepo.ReadOnlyTable().FirstOrDefault(o => o.Id == userOrganId);//当前用户机构
//var organList = this._organRepo.ReadOnlyTable()//当前用户机构及下级机构
// .Where(o => o.ParentId != null)
// .Where(o => o.Left >= currentUserOrgan.Left && o.Right <= currentUserOrgan.Right)
// .Include(o => o.Buildings)
// .ToList();
organList.ToTree(); organList.ToTree();
var rootOrganId = this._organRepo.ReadOnlyTable().Where(o => o.Number == "root").Select(o => o.Id).FirstOrDefault(); var rootOrganId = this._organRepo.ReadOnlyTable().Where(o => o.Number == "root").Select(o => o.Id).FirstOrDefault();
model.Organs = organList.Where(o => o.Parent == null).ToList(); model.Organs = organList.Where(o => o.Parent == null).ToList();

@ -110,7 +110,7 @@
<div class="row"> <div class="row">
@foreach (var item in Model.Scenes) @foreach (var item in Model.Scenes)
{ {
<div class="col-sm-3"> <div class="col-sm-2">
<div class="info-box bg-gray "> <div class="info-box bg-gray ">
<span class="info-box-icon bg-white elevation-1"><img src="@Url.Content2(item.Image)" /></span> <span class="info-box-icon bg-white elevation-1"><img src="@Url.Content2(item.Image)" /></span>
<div class="info-box-content"> <div class="info-box-content">
@ -130,11 +130,10 @@
{<div class="card"> {<div class="card">
<div class="card-header">建筑</div> <div class="card-header">建筑</div>
<div class="card-body"> <div class="card-body">
<div> <div class="row">
<h2>此处显示下级建筑列表,带温湿度平均值、带批量开关用电器按钮</h2>
@foreach (var item in Model.Buildings) @foreach (var item in Model.Buildings)
{ {
<div> <div class="col-sm-2">
<a href="@Url.Action(null,null,new { buildingId = item.Id})">机构建筑:@item.Name</a> <a href="@Url.Action(null,null,new { buildingId = item.Id})">机构建筑:@item.Name</a>
</div> </div>
} }

Loading…
Cancel
Save