kaiyu
2021-04-27 19792073aeb0462088208334b4bd4241571630d4
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
package com.moral.api.controller;
 
import com.moral.api.entity.Menu;
import com.moral.api.pojo.dto.menu.MenuDTO;
import com.moral.api.pojo.dto.menu.MenuQueryDTO;
import com.moral.api.pojo.form.menu.MenuDeleteForm;
import com.moral.api.pojo.form.menu.MenuInsertForm;
import com.moral.api.pojo.vo.menu.MenuDeleteVO;
import com.moral.api.pojo.vo.menu.MenuInsertVO;
import com.moral.api.pojo.vo.menu.MenuQueryVO;
import com.moral.api.service.MenuService;
import com.moral.constant.ResponseCodeEnum;
import com.moral.constant.ResultMessage;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
 
/**
 * @ClassName MenuController
 * @Description 前台菜单管理
 * @Author 陈凯裕
 * @Date 2021/4/25 9:39
 * @Version TODO
 **/
@Slf4j
@Api(tags = {"前台菜单模块"})
@CrossOrigin(origins = "*", maxAge = 3600)
@RestController
@RequestMapping("/menu")
public class MenuController {
    @Autowired
    MenuService menuService;
 
    @GetMapping("queryMock")
    public ResultMessage queryMock() {
        MenuQueryDTO dto = new MenuQueryDTO();
        Menu menu1 = new Menu();
        Menu menu11 = new Menu();
        Menu menu111 = new Menu();
        Menu menu12 = new Menu();
        Menu menu121 = new Menu();
        Menu menu13 = new Menu();
 
        Menu menu2 = new Menu();
        Menu menu21 = new Menu();
        Menu menu211 = new Menu();
        Menu menu22 = new Menu();
        Menu menu23 = new Menu();
        Menu menu24 = new Menu();
        Menu menu241 = new Menu();
        Menu menu2411 = new Menu();
        menu1.setName("menu 1");
        menu1.setId(1);
        menu11.setName("menu 1-1");
        menu11.setId(2);
        menu111.setName("menu 1-1-1");
        menu111.setId(3);
        menu12.setName("menu 1-2");
        menu12.setId(4);
        menu121.setName("menu 1-2-1");
        menu121.setId(5);
        menu13.setName("menu 1-3");
        menu13.setId(6);
        menu2.setName("menu 2");
        menu2.setId(7);
        menu21.setName("menu 2-1");
        menu21.setId(8);
        menu211.setName("menu 2-1-1");
        menu211.setId(9);
        menu22.setName("menu 2-2");
        menu22.setId(10);
        menu23.setName("menu 2-3");
        menu23.setId(11);
        menu24.setName("menu 2-4");
        menu24.setId(12);
        menu241.setName("menu 2-4-1");
        menu241.setId(13);
        menu2411.setName("menu 2-4-1-1");
        menu2411.setId(14);
        menu12.setChildren(Arrays.asList(menu121));
        menu11.setChildren(Arrays.asList(menu111));
        menu1.setChildren(Arrays.asList(menu11, menu12, menu13));
        menu241.setChildren(Arrays.asList(menu2411));
        menu24.setChildren(Arrays.asList(menu241));
        menu21.setChildren(Arrays.asList(menu211));
        menu2.setChildren(Arrays.asList(menu21, menu22, menu23, menu24));
 
        MenuDTO dto1 = new MenuDTO();
        MenuDTO dto2 = new MenuDTO();
        dto1.setMenu(menu1);
        dto2.setMenu(menu2);
 
        dto.setDtos(Arrays.asList(dto1, dto2));
        dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
 
        MenuQueryVO vo = MenuQueryVO.convert(dto);
        return new ResultMessage(dto.getCode(), dto.getMsg(), vo);
    }
 
    @GetMapping("query")
    public ResultMessage query() {
        //执行查询业务
        MenuQueryDTO dto = menuService.queryAllMenu();
 
        //转换为前端所需参数
        MenuQueryVO vo = MenuQueryVO.convert(dto);
 
        return new ResultMessage(dto.getCode(), dto.getMsg(), vo);
    }
 
    @PostMapping("insert")
    public ResultMessage insert(@RequestBody MenuInsertForm form) {
        //判断是否缺少参数
        if (!form.valid())
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
 
        //处理插入业务
        MenuDTO dto = menuService.insertMenu(form);
 
        //转换前端所需参数
        MenuInsertVO vo = MenuInsertVO.convert(dto);
 
        return new ResultMessage(dto.getCode(), dto.getMsg(), vo);
    }
 
    @PostMapping("delete")
    public ResultMessage delete(@RequestBody MenuDeleteForm form){
        //判断是否缺少参数
        if (!form.valid())
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
 
        //处理删除业务
        MenuDTO dto = menuService.deleteMenu(form);
 
        //转换前端所需参数
        MenuInsertVO vo = MenuDeleteVO.convert(dto);
 
        return new ResultMessage(dto.getCode(), dto.getMsg(), vo);
    }
 
}