NavGroupController.php
2.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
namespace App\Http\Controllers\Bside\Nav;
use App\Enums\Common\Code;
use App\Http\Controllers\Bside\BaseController;
use App\Models\Nav\BNavGroup;
use Illuminate\Http\Request;
/**
* 导航组
* Class NavGroupController
* @package App\Http\Controllers\Bside\Nav
* @author zbj
* @date 2023/10/9
*/
class NavGroupController extends BaseController
{
public function index(BNavGroup $nav_group){
$this->map['project_id'] = $this->user['project_id'];
$lists = $nav_group->list($this->map, 'id', ['id', 'name'], 'asc');
$this->response('success',Code::SUCCESS,$lists);
}
public function save(Request $request){
$request->validate([
'name'=> ['required','max:100'],
],[
'name.required' => '菜单组名称不能为空',
'name.max' => '菜单组名称不能超过100个字符'
]);
if(empty($this->param['id'])){
$nav_group = new BNavGroup();
}else{
if(in_array($this->param['id'], [BNavGroup::DEFAULT_HEADER_ID,BNavGroup::DEFAULT_FOOTER_ID])){
$this->fail('系统内置菜单组不能修改');
}
$nav_group = BNavGroup::find($this->param['id']);
if(!$nav_group){
$this->fail('数据不存在或者已经删除');
}
}
$nav_group->project_id = $this->user['project_id'];
$nav_group->name = $this->param['name'];
$nav_group->save();
$this->response('success');
}
public function delete(Request $request){
$request->validate([
'id'=>'required',
],[
'id.required' => 'ID不能为空',
]);
if(in_array($this->param['id'], [BNavGroup::DEFAULT_HEADER_ID,BNavGroup::DEFAULT_FOOTER_ID])){
$this->fail('系统内置菜单组不能删除');
}
$nav_group = BNavGroup::find($this->param['id']);
if(!$nav_group){
$this->response('数据不存在或者已经删除');
}
$nav_group->delete();
$this->response('success');
}
}