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);
|
}
|
|
}
|