切换导航条
此项目
正在载入...
登录
郭盛
/
community
·
提交
转到一个项目
GitLab
转到仪表盘
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
何书鹏
4 years ago
提交
e9daee71e38645edd9677452c7d905fd25267f08
1 个父辈
9d74a9c4
1 个管道 的构建
通过
耗费 57 秒
社区管理员管理多个小区
变更
2
构建
1
隐藏空白字符变更
内嵌
并排对比
正在显示
2 个修改的文件
包含
49 行增加
和
16 行删除
application/api/controller/HouseAdmin.php
application/api/controller/User.php
application/api/controller/HouseAdmin.php
查看文件 @
e9daee7
...
...
@@ -63,12 +63,24 @@ class HouseAdmin extends Api
$info
=
HouseAdminModel
::
get
([
'user_id'
=>
$user_id
,
'house_id'
=>
$house_id
],[
'house'
]);
// empty($info) && $this->error('您不是该小区的管理员');
if
(
empty
(
$info
))
{
$info
=
HouseAdminModel
::
with
([
'house'
])
->
where
([
'user_id'
=>
$user_id
])
->
order
([
'is_direct'
=>
'asc'
,
'createtime'
=>
'asc'
])
->
field
(
'id,house_id,is_direct,nickname,avatar'
)
->
find
();
};
// $info = HouseAdminModel::with(['house'])
// ->where(['user_id'=>$user_id])
// ->order(['is_direct'=>'asc','createtime'=>'asc'])
// ->field('id,house_id,is_direct,nickname,avatar')
// ->find();
$house
=
House
::
get
(
$house_id
);
$info
=
HouseAdminModel
::
get
(
$house
[
'admin_user_id'
]);
if
(
$info
){
$info
[
'house_id'
]
=
$house_id
;
$info
[
'house'
]
=
$house
;
}
else
{
$info
=
HouseAdminModel
::
with
([
'house'
])
->
where
([
'user_id'
=>
$user_id
])
->
order
([
'is_direct'
=>
'asc'
,
'createtime'
=>
'asc'
])
->
field
(
'id,house_id,is_direct,nickname,avatar'
)
->
find
();
}
}
$info
->
visible
([
'id'
,
'house_id'
,
'is_direct'
,
'nickname'
,
'avatar'
,
'house'
])
->
toArray
();
}
else
{
$info
=
HouseAdminModel
::
with
([
'house'
])
...
...
@@ -107,17 +119,36 @@ class HouseAdmin extends Api
$user
=
$this
->
auth
->
getUser
();
$keyword
=
$this
->
request
->
param
(
'keyword'
);
$where
=
[];
// if(!empty($keyword)){
// $where['h.name'] = ['like',"%$keyword%"];
// }
// // 查出该管理员已绑定的小区
// $list = HouseAdminModel::alias('ha')
// ->join('house h','h.id = ha.house_id')
// ->where('ha.user_id',$user['id'])
// ->where($where)
// ->field("h.id,h.name")
// ->order('ha.is_direct')
// ->select();
// 社区管理员管理多个小区
$house_ids
=
[];
$house_list
=
HouseAdminModel
::
where
(
'user_id'
,
$user
[
'id'
])
->
field
(
'id,house_id'
)
->
select
();
if
(
count
(
$house_list
)
>
0
){
$house_ids
=
array_merge
(
$house_ids
,
array_column
(
$house_list
,
'house_id'
));
$house_admin_ids
=
array_column
(
$house_list
,
'id'
);
if
(
$house_admin_ids
){
$house_ids
=
array_merge
(
$house_ids
,
House
::
where
(
'admin_user_id'
,
'in'
,
$house_admin_ids
)
->
column
(
'id'
));
}
}
$house_ids
=
array_filter
(
array_unique
(
$house_ids
));
if
(
$house_ids
)
{
$where
[
'id'
]
=
[
'in'
,
$house_ids
];
}
// 关键字
if
(
!
empty
(
$keyword
)){
$where
[
'
h.
name'
]
=
[
'like'
,
"%
$keyword
%"
];
$where
[
'name'
]
=
[
'like'
,
"%
$keyword
%"
];
}
// 查出该管理员已绑定的小区
$list
=
HouseAdminModel
::
alias
(
'ha'
)
->
join
(
'house h'
,
'h.id = ha.house_id'
)
->
where
(
'ha.user_id'
,
$user
[
'id'
])
->
where
(
$where
)
->
field
(
"h.id,h.name"
)
->
order
(
'ha.is_direct'
)
->
select
();
$list
=
House
::
where
(
$where
)
->
field
(
'id,name'
)
->
select
();
$this
->
success
(
'success'
,
$list
);
}
...
...
application/api/controller/User.php
查看文件 @
e9daee7
...
...
@@ -190,7 +190,9 @@ class User extends Api
if
(
$info
)
{
$user
[
'identity'
]
=
1
;
}
else
{
$user
[
'identity'
]
=
0
;
// 社区管理员管理多个小区
$info
=
HouseAdminModel
::
get
(
$house
[
'admin_user_id'
]);
$user
[
'identity'
]
=
$info
?
1
:
0
;
}
$this
->
success
(
'成功'
,
array_merge
(
$user
,
$data
));
}
...
...
请
注册
或
登录
后发表评论