Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
IoTSharp
IoTSharp
提交
85c5744a
IoTSharp
项目概览
IoTSharp
/
IoTSharp
8 个月 前同步成功
通知
15
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
IoTSharp
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
85c5744a
编写于
8月 17, 2020
作者:
麦壳饼
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
根据权限获取设备
上级
a15d376f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
6 deletion
+13
-6
IoTSharp/Controllers/DevicesController.cs
IoTSharp/Controllers/DevicesController.cs
+13
-6
未找到文件。
IoTSharp/Controllers/DevicesController.cs
浏览文件 @
85c5744a
...
...
@@ -158,14 +158,21 @@ namespace IoTSharp.Controllers
private
Device
Found
(
Guid
deviceId
)
{
var
cid
=
User
.
Claims
.
First
(
c
=>
c
.
Type
==
IoTSharpClaimTypes
.
Customer
);
var
dev
=
_context
.
Device
.
Include
(
d
=>
d
.
Customer
).
FirstOrDefault
(
d
=>
d
.
Id
==
deviceId
&&
d
.
Customer
.
Id
.
ToString
()
==
cid
.
Value
);
return
dev
;
return
FoundAsync
(
deviceId
).
GetAwaiter
().
GetResult
();
}
private
Task
<
Device
>
FoundAsync
(
Guid
deviceId
)
private
async
Task
<
Device
>
FoundAsync
(
Guid
deviceId
)
{
var
cid
=
User
.
Claims
.
First
(
c
=>
c
.
Type
==
IoTSharpClaimTypes
.
Customer
);
var
dev
=
_context
.
Device
.
Include
(
d
=>
d
.
Customer
).
FirstOrDefaultAsync
(
d
=>
d
.
Id
==
deviceId
&&
d
.
Customer
.
Id
.
ToString
()
==
cid
.
Value
);
Device
dev
=
null
;
if
(
User
.
IsInRole
(
nameof
(
UserRole
.
TenantAdmin
)))
{
var
tid
=
User
.
Claims
.
First
(
c
=>
c
.
Type
==
IoTSharpClaimTypes
.
Tenant
);
dev
=
await
_context
.
Device
.
Include
(
d
=>
d
.
Tenant
).
FirstOrDefaultAsync
(
d
=>
d
.
Id
==
deviceId
&&
d
.
Tenant
.
Id
.
ToString
()
==
tid
.
Value
);
}
else
if
(
User
.
IsInRole
(
nameof
(
UserRole
.
NormalUser
)))
{
var
cid
=
User
.
Claims
.
First
(
c
=>
c
.
Type
==
IoTSharpClaimTypes
.
Customer
);
dev
=
await
_context
.
Device
.
Include
(
d
=>
d
.
Customer
).
FirstOrDefaultAsync
(
d
=>
d
.
Id
==
deviceId
&&
d
.
Customer
.
Id
.
ToString
()
==
cid
.
Value
);
}
return
dev
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录