|
@@ -2,6 +2,7 @@ package com.huaxu.controller;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.huaxu.common.FileUploadUtil;
|
|
|
import com.huaxu.entity.UserEntity;
|
|
|
import com.huaxu.model.AjaxMessage;
|
|
|
import com.huaxu.model.Pagination;
|
|
@@ -10,14 +11,20 @@ import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.ui.ModelMap;
|
|
|
+
|
|
|
+import java.io.IOException;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.Date;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import com.huaxu.entity.MenuEntity;
|
|
|
import com.huaxu.service.MenuService;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
/**
|
|
|
* 菜单页面控制器
|
|
@@ -30,10 +37,12 @@ import com.huaxu.service.MenuService;
|
|
|
public class MenuController {
|
|
|
@Autowired
|
|
|
private MenuService menuService;
|
|
|
+ @Value("${UMIS.sys_config_path}")
|
|
|
+ private String baseDir;
|
|
|
|
|
|
@ApiOperation(value = "分页查询菜单信息")
|
|
|
- @RequestMapping(value = "/selectPage",method = RequestMethod.POST)
|
|
|
- public AjaxMessage<Pagination<MenuEntity>> list(@RequestParam Integer pageNum, @RequestParam Integer pageSize,@ApiParam(value = "菜单信息", required = false)@RequestBody MenuEntity menuEntity) {
|
|
|
+ @RequestMapping(value = "/selectPage", method = RequestMethod.POST)
|
|
|
+ public AjaxMessage<Pagination<MenuEntity>> list(@RequestParam Integer pageNum, @RequestParam Integer pageSize, @ApiParam(value = "菜单信息", required = false) @RequestBody MenuEntity menuEntity) {
|
|
|
IPage<MenuEntity> iPage = new Page<>(pageNum, pageSize);
|
|
|
iPage = menuService.findPage(iPage, menuEntity);
|
|
|
Pagination<MenuEntity> pages = new Pagination<>(iPage);
|
|
@@ -45,11 +54,39 @@ public class MenuController {
|
|
|
*/
|
|
|
@ApiOperation(value = "新增菜单信息")
|
|
|
@RequestMapping(value = "/add", method = RequestMethod.POST)
|
|
|
- public AjaxMessage<Integer> addMenu(@ApiParam(value = "菜单信息", required = true)@RequestBody MenuEntity menu) {
|
|
|
+ public AjaxMessage<Integer> addMenu(@ApiParam(value = "菜单信息", required = true) @RequestBody MenuEntity menu) {
|
|
|
int result = menuService.addMenu(menu) ? 1 : 0;
|
|
|
return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 批量新增
|
|
|
+ */
|
|
|
+ @ApiOperation(value = "批量新增菜单信息")
|
|
|
+ @RequestMapping(value = "/addBatch", method = RequestMethod.POST)
|
|
|
+ public AjaxMessage<Integer> addMenus(@ApiParam(value = "菜单信息", required = true) @RequestBody ArrayList<MenuEntity> menus) {
|
|
|
+ int result = menuService.saveBatch(menus) ? 1 : 0;
|
|
|
+ return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 新增
|
|
|
+ */
|
|
|
+ @ApiOperation(value = "菜单图标")
|
|
|
+ @RequestMapping(value = "addMenuImag", method = RequestMethod.POST)
|
|
|
+ @ResponseBody
|
|
|
+ public AjaxMessage<String> addUserPhoto(@ApiParam(value = "菜单图标", required = true) @RequestParam("avatarfile") MultipartFile file) {
|
|
|
+ String avatar = "";
|
|
|
+ if (!file.isEmpty()) {
|
|
|
+ try {
|
|
|
+ avatar = FileUploadUtil.uploadWeb(baseDir, file);
|
|
|
+ } catch (IOException e) {
|
|
|
+ return new AjaxMessage<>(ResultStatus.ERROR, e.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return new AjaxMessage<>(ResultStatus.OK, avatar);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 按ID查询菜单
|
|
|
*/
|
|
@@ -65,7 +102,7 @@ public class MenuController {
|
|
|
*/
|
|
|
@ApiOperation(value = "修改保存菜单")
|
|
|
@RequestMapping(value = "/edit", method = RequestMethod.POST)
|
|
|
- public AjaxMessage<Integer> editMenu(@ApiParam(value = "菜单信息", required = true)@RequestBody MenuEntity menu) {
|
|
|
+ public AjaxMessage<Integer> editMenu(@ApiParam(value = "菜单信息", required = true) @RequestBody MenuEntity menu) {
|
|
|
int result = menuService.updateMenuById(menu) ? 1 : 0;
|
|
|
return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
}
|
|
@@ -75,7 +112,13 @@ public class MenuController {
|
|
|
*/
|
|
|
@ApiOperation(value = "批量删除菜单")
|
|
|
@RequestMapping(value = "/deleteByIds", method = RequestMethod.DELETE)
|
|
|
- public AjaxMessage<Integer> deleteByIds(@ApiParam(value = "菜单IDS", required = true)@RequestParam Long[] ids) {
|
|
|
+ public AjaxMessage<Integer> deleteByIds(@ApiParam(value = "菜单IDS", required = true) @RequestParam Long[] ids) {
|
|
|
+
|
|
|
+ List<MenuEntity> menuEntityList = menuService.findMenuByParentIds(ids);
|
|
|
+ if (menuEntityList.size() > 0) {
|
|
|
+ return new AjaxMessage<>(ResultStatus.EXSIT_IS_PARENT_ERROR, 0);
|
|
|
+ }
|
|
|
+
|
|
|
int result = menuService.delMenuByIds(ids) ? 1 : 0;
|
|
|
return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
}
|
|
@@ -86,7 +129,14 @@ public class MenuController {
|
|
|
@ApiOperation(value = "单个删除菜单")
|
|
|
@RequestMapping(value = "/deleteById", method = RequestMethod.DELETE)
|
|
|
public AjaxMessage<Integer> deleteById(@ApiParam(value = "菜单ID", required = true) @RequestParam Long id) {
|
|
|
- int result = menuService.delMenuById(id) ? 1 : 0;
|
|
|
- return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
+ MenuEntity menuEntity = new MenuEntity();
|
|
|
+ menuEntity.setParentMenuId(id);
|
|
|
+ List<MenuEntity> menuEntityList = menuService.findList(menuEntity);
|
|
|
+ if (menuEntityList.size() > 0) {
|
|
|
+ return new AjaxMessage<>(ResultStatus.EXSIT_IS_PARENT_ERROR, 0);
|
|
|
+ } else {
|
|
|
+ int result = menuService.delMenuById(id) ? 1 : 0;
|
|
|
+ return new AjaxMessage<>(ResultStatus.OK, result);
|
|
|
+ }
|
|
|
}
|
|
|
}
|