更新功能
This commit is contained in:
@@ -8,17 +8,73 @@
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Http\Controllers\Auth;
|
||||
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use App\Services\Auth\UsersService;
|
||||
use App\Services\Auth\DepartmentService;
|
||||
use App\Http\Controllers\Base;
|
||||
use App\Support\Tree;
|
||||
use Illuminate\Support\Arr;
|
||||
|
||||
class Department extends Base{
|
||||
|
||||
/**
|
||||
* @title 部门数据
|
||||
*/
|
||||
public function index(){
|
||||
/**
|
||||
* @title 部门数据
|
||||
*/
|
||||
public function index(DepartmentService $service){
|
||||
$data = $service->getDepartmentList(request());
|
||||
|
||||
return $this->data;
|
||||
}
|
||||
$sortData = Arr::keyBy($data, 'partent_id');
|
||||
|
||||
$this->data['data'] = (new Tree())->listToTree($data->toArray(), 'id', 'parent_id', 'children');
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 添加部门
|
||||
*
|
||||
* @param DepartmentService $service
|
||||
* @return void
|
||||
*/
|
||||
public function add(DepartmentService $service){
|
||||
try {
|
||||
$service->createDepartment(request());
|
||||
$this->data['message'] = '添加成功!';
|
||||
} catch (\Exception $e) {
|
||||
$this->data['code'] = 0;
|
||||
$this->data['message'] = $e->getMessage();
|
||||
}
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 修改部门
|
||||
*
|
||||
* @param DepartmentService $service
|
||||
* @return void
|
||||
*/
|
||||
public function edit(DepartmentService $service){
|
||||
try {
|
||||
$service->updateDepartment(request());
|
||||
$this->data['message'] = '修改成功!';
|
||||
} catch (\Exception $e) {
|
||||
$this->data['code'] = 0;
|
||||
$this->data['message'] = $e->getMessage();
|
||||
}
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 删除部门
|
||||
*
|
||||
* @param DepartmentService $service
|
||||
* @return void
|
||||
*/
|
||||
public function delete(DepartmentService $service){
|
||||
try {
|
||||
$service->deleteDepartment(request());
|
||||
$this->data['message'] = '删除成功!';
|
||||
} catch (\Exception $e) {
|
||||
$this->data['code'] = 0;
|
||||
$this->data['message'] = $e->getMessage();
|
||||
}
|
||||
return $this->data;
|
||||
}
|
||||
}
|
||||
|
||||
27
backend/app/Http/Controllers/Auth/Log.php
Normal file
27
backend/app/Http/Controllers/Auth/Log.php
Normal file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Http\Controllers\Base;
|
||||
use App\Services\Auth\UsersLogService;
|
||||
|
||||
class Log extends Base{
|
||||
|
||||
/**
|
||||
* @title 日志列表
|
||||
*
|
||||
* @param UsersLogService $service
|
||||
* @return void
|
||||
*/
|
||||
public function index(UsersLogService $service){
|
||||
$this->data['data'] = $service->getUserLogList(request());
|
||||
$this->data['code'] = 1;
|
||||
return $this->data;
|
||||
}
|
||||
}
|
||||
83
backend/app/Http/Controllers/Auth/Role.php
Normal file
83
backend/app/Http/Controllers/Auth/Role.php
Normal file
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Services\Auth\RoleService;
|
||||
use App\Http\Controllers\Base;
|
||||
|
||||
class Role extends Base{
|
||||
|
||||
/**
|
||||
* @title 角色数据
|
||||
*/
|
||||
public function index(RoleService $service){
|
||||
$tree = $service->getRolesList(request(), true);
|
||||
|
||||
$this->data['code'] = 1;
|
||||
$this->data['data'] = $tree;
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 角色修改
|
||||
* @time 2019年12月11日
|
||||
* @param $id
|
||||
* @param Request $request
|
||||
* @return Array
|
||||
*/
|
||||
public function edit(RoleService $service) {
|
||||
try {
|
||||
$service->updateRole(request());
|
||||
$this->data['code'] = 1;
|
||||
} catch (\Exception $e) {
|
||||
$this->data['code'] = 0;
|
||||
$this->data['message'] = $e->getMessage();
|
||||
}
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 角色授权
|
||||
* @time 2019年12月11日
|
||||
* @param $id
|
||||
* @param Request $request
|
||||
* @return Array
|
||||
*/
|
||||
public function auth(RoleService $service) {
|
||||
$role_id = request()->input('role_id', '');
|
||||
$auth = request()->input('auth', '');
|
||||
try {
|
||||
$service->updateRolePermission($role_id, $auth);
|
||||
$service->updateRoleAuth(request());
|
||||
$this->data['code'] = 1;
|
||||
} catch (\Exception $e) {
|
||||
$this->data['code'] = 0;
|
||||
$this->data['message'] = $e->getMessage();
|
||||
}
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 删除角色
|
||||
*
|
||||
* @time 2019年12月11日
|
||||
* @param $id
|
||||
* @return Json
|
||||
*/
|
||||
public function delete(RoleService $service){
|
||||
try {
|
||||
$service->deleteRole(request());
|
||||
$this->data['code'] = 1;
|
||||
} catch (\Exception $e) {
|
||||
$this->data['code'] = 0;
|
||||
$this->data['message'] = $e->getMessage();
|
||||
}
|
||||
return $this->data;
|
||||
}
|
||||
}
|
||||
@@ -5,5 +5,5 @@ use Illuminate\Routing\Controller;
|
||||
|
||||
class Base extends Controller{
|
||||
|
||||
public $data = ['code' => 0, 'data' => '', 'message' => ''];
|
||||
public $data = ['code' => 1, 'data' => '', 'message' => ''];
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ class Index extends Base{
|
||||
}
|
||||
|
||||
public function log(UsersLogService $service){
|
||||
$this->data['data'] = $service->getUserLogList(request());
|
||||
$this->data['data'] = $service->getUserLogList(request());
|
||||
$this->data['code'] = 1;
|
||||
return $this->data;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Http\Controllers\System;
|
||||
|
||||
use App\Http\Controllers\Base;
|
||||
|
||||
class Setting extends Base{
|
||||
|
||||
/**
|
||||
* @title 设置配置表单
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function index(){
|
||||
|
||||
return $this->data;
|
||||
}
|
||||
}
|
||||
|
||||
31
backend/app/Services/Auth/DepartmentService.php
Normal file
31
backend/app/Services/Auth/DepartmentService.php
Normal file
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Services\Auth;
|
||||
|
||||
use App\Models\Auth\Departments;
|
||||
use think\facade\Config;
|
||||
use App\Support\Tree;
|
||||
|
||||
class DepartmentService{
|
||||
|
||||
/**
|
||||
* @title 获取部门数据
|
||||
*
|
||||
* @param [type] $request
|
||||
* @return void
|
||||
*/
|
||||
public function getDepartmentList($request){
|
||||
$param = $request->all();
|
||||
$map = [];
|
||||
if(isset($param['keyword']) && $param['keyword']){
|
||||
$map[] = ['title', 'LIKE', '%' . $param['keyword'] . '%'];
|
||||
}
|
||||
return Departments::where($map)->orderBy('sort', 'asc')->get();
|
||||
}
|
||||
}
|
||||
103
backend/app/Services/Auth/RoleService.php
Normal file
103
backend/app/Services/Auth/RoleService.php
Normal file
@@ -0,0 +1,103 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Services\Auth;
|
||||
|
||||
use App\Models\Auth\Roles;
|
||||
use App\Models\Auth\UserHasRoles;
|
||||
use App\Models\Auth\RoleHasPermissions;
|
||||
use think\facade\Config;
|
||||
use App\Support\Tree;
|
||||
|
||||
class RoleService{
|
||||
|
||||
/**
|
||||
* @title 获取角色列表
|
||||
*
|
||||
* @param [type] $request
|
||||
* @param [type] $is_tree
|
||||
* @return void
|
||||
*/
|
||||
public function getRolesList($request, $is_tree){
|
||||
$param = $request->input();
|
||||
$map = [];
|
||||
if(isset($param['keyword']) && $param['keyword']){
|
||||
$map[] = ['title', 'LIKE', '%' . $param['keyword'] . '%'];
|
||||
}
|
||||
$list = Roles::with(['permissions'])->where($map)->orderBy('sort', 'asc')->get()->each(function($item){
|
||||
$item->data_range = strval($item->data_range);
|
||||
$permission_id = [];
|
||||
foreach($item->permissions as $val){
|
||||
$permission_id[] = $val['id'];
|
||||
}
|
||||
$item->permission_id = $permission_id;
|
||||
});
|
||||
if($is_tree){
|
||||
return (new Tree())->listToTree($list->toArray(), 'id', 'parent_id', 'children');
|
||||
}else{
|
||||
return $list;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @title 删除角色
|
||||
*
|
||||
* @param [type] $request
|
||||
* @return void
|
||||
*/
|
||||
public function deleteRole($request){
|
||||
$id = $request->input('id', 0);
|
||||
$parent = Roles::where('parent_id', $id)->findOrEmpty();
|
||||
if (!$parent->isEmpty()) {
|
||||
throw new \think\Exception("存在子角色,无法删除", 0);
|
||||
}
|
||||
$role = Roles::find($id);
|
||||
// 删除权限
|
||||
PermissionAccess::where('role_id', '=', $role_id)->delete();
|
||||
// 删除部门关联
|
||||
// $role->detachDepartments();
|
||||
// 删除用户关联
|
||||
RolesAccess::where('role_id', '=', $role_id)->delete();
|
||||
// 删除
|
||||
$role->delete();
|
||||
}
|
||||
/**
|
||||
* @title 更新角色权限
|
||||
*
|
||||
* @param [type] $role_id
|
||||
* @param [type] $data
|
||||
* @return void
|
||||
*/
|
||||
public function updateRolePermission($role_id, $data){
|
||||
PermissionAccess::where('role_id', '=', $role_id)->delete();
|
||||
$save = [];
|
||||
foreach ($data as $permiss) {
|
||||
$save[] = ['role_id' => $role_id, 'permission_id' => $permiss];
|
||||
}
|
||||
(new PermissionAccess())->saveAll($save);
|
||||
return true;
|
||||
}
|
||||
public function updateRoleAuth($request){
|
||||
$role_id = $request->input('role_id', '');
|
||||
$data_range = $request->input('data_range', '');
|
||||
$dashboard = $request->input('dashboard', '');
|
||||
$mobile_module = $request->input('mobile_module', '');
|
||||
$role = Roles::find($role_id);
|
||||
$save = [
|
||||
'data_range' => $data_range,
|
||||
'dashboard' => $dashboard,
|
||||
'mobile_module' => $mobile_module
|
||||
];
|
||||
return $role->save($save);
|
||||
}
|
||||
|
||||
public function updateRole($request){
|
||||
$data = $request->input();
|
||||
return Roles::update($data);
|
||||
}
|
||||
}
|
||||
@@ -42,7 +42,7 @@ class UsersLogService{
|
||||
$map[] = ['create_time', 'BETWEEN TIME', $param['date']];
|
||||
}
|
||||
|
||||
$list = UsersLog::with(['user'])->where($map)->orderBy('create_time', 'desc')->paginate($param['pageSize']);
|
||||
$list = UsersLog::with(['user'])->where($map)->orderBy('create_time', 'desc')->paginate(isset($param['pageSize']) ? $param['pageSize'] : 30);
|
||||
return $list;
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@ class UsersLogService{
|
||||
$map[] = ['create_time', 'BETWEEN TIME', $param['date']];
|
||||
}
|
||||
|
||||
$list = UsersLog::with(['user'])->where($map)->order('create_time desc')->paginate($request->pageConfig);
|
||||
$list = UsersLog::with(['user'])->where($map)->orderBy('create_time', 'desc')->paginate(isset($param['pageSize']) ? $param['pageSize'] : 30);
|
||||
return $list;
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ namespace App\Services\Auth;
|
||||
|
||||
use App\Models\Auth\Users;
|
||||
use App\Models\Auth\RolesAccess;
|
||||
use think\facade\Config;
|
||||
|
||||
class UsersService{
|
||||
|
||||
@@ -36,7 +35,7 @@ class UsersService{
|
||||
$q->name('user_has_roles')->where($subMap)->field('uid');
|
||||
}];
|
||||
}
|
||||
$list = Users::with(['roles', 'department'])->where($map)->orderBy('uid')->paginate()->each(function($item){
|
||||
$list = Users::with(['roles', 'department'])->where($map)->orderBy('uid')->paginate(isset($param['pageSize']) ? $param['pageSize'] : 30)->each(function($item){
|
||||
$roleId = [];
|
||||
$roleName = [];
|
||||
$identify = [];
|
||||
|
||||
12
backend/app/Services/System/SettingService.php
Normal file
12
backend/app/Services/System/SettingService.php
Normal file
@@ -0,0 +1,12 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
|
||||
// +----------------------------------------------------------------------
|
||||
namespace App\Services\Auth;
|
||||
|
||||
class SettingService{
|
||||
}
|
||||
Reference in New Issue
Block a user