|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.doumee.api.BaseController; | 
|---|
|  |  |  | import com.doumee.biz.system.SystemMenuBiz; | 
|---|
|  |  |  | import com.doumee.config.annotation.CloudRequiredPermission; | 
|---|
|  |  |  | import com.doumee.core.annotation.pr.PreventRepeat; | 
|---|
|  |  |  | import com.doumee.core.constants.OperaType; | 
|---|
|  |  |  | import com.doumee.core.model.ApiResponse; | 
|---|
|  |  |  | import com.doumee.service.business.third.model.ApiResponse; | 
|---|
|  |  |  | import com.doumee.core.utils.Constants; | 
|---|
|  |  |  | import com.doumee.dao.system.dto.UpdateSystemMenuSortDTO; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemMenu; | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.doumee.dao.system.vo.SystemMenuNodeVO; | 
|---|
|  |  |  | import io.swagger.annotations.Api; | 
|---|
|  |  |  | import io.swagger.annotations.ApiOperation; | 
|---|
|  |  |  | import org.apache.shiro.authz.annotation.RequiresPermissions; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.validation.annotation.Validated; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Api(tags = "系统菜单") | 
|---|
|  |  |  | @RestController | 
|---|
|  |  |  | @RequestMapping("/cloudService/system/menu") | 
|---|
|  |  |  | @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/system/menu") | 
|---|
|  |  |  | public class SystemMenuCloudController extends BaseController { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiOperation("菜单排序") | 
|---|
|  |  |  | @PostMapping("/updateSort") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:sort") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:sort") | 
|---|
|  |  |  | public ApiResponse updateSort (@RequestHeader(Constants.HEADER_USER_TOKEN) String token, @Validated @RequestBody UpdateSystemMenuSortDTO dto) { | 
|---|
|  |  |  | dto.setUpdateUser(this.getLoginUser(token).getId()); | 
|---|
|  |  |  | systemMenuBiz.updateSort(dto); | 
|---|
|  |  |  | return ApiResponse.success(null); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | @ApiOperation("查询菜单树") | 
|---|
|  |  |  | @GetMapping("/treeNodes") | 
|---|
|  |  |  | public ApiResponse<List<SystemMenuNodeVO>> getTreeMenu (@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { | 
|---|
|  |  |  | return ApiResponse.success(systemMenuBiz.findTree(this.getLoginUser().getId())); | 
|---|
|  |  |  | return ApiResponse.success(systemMenuBiz.findTree(this.getLoginUser(token).getId())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiOperation("查询列表树") | 
|---|
|  |  |  | @PostMapping("/treeList") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:query") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:query") | 
|---|
|  |  |  | public ApiResponse<List<SystemMenuListVO>> findTree (@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { | 
|---|
|  |  |  | return ApiResponse.success(systemMenuBiz.findTree()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | @PreventRepeat | 
|---|
|  |  |  | @ApiOperation("新建") | 
|---|
|  |  |  | @PostMapping("/create") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:create") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:create") | 
|---|
|  |  |  | public ApiResponse create(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated(OperaType.Create.class) @RequestBody SystemMenu systemMenu) { | 
|---|
|  |  |  | systemMenu.setCreateUser(this.getLoginUser(token).getId()); | 
|---|
|  |  |  | return ApiResponse.success(systemMenuBiz.create(systemMenu)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiOperation("删除") | 
|---|
|  |  |  | @GetMapping("/delete/{id}") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:delete") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:delete") | 
|---|
|  |  |  | public ApiResponse deleteById(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@PathVariable Integer id) { | 
|---|
|  |  |  | systemMenuBiz.deleteById(id); | 
|---|
|  |  |  | return ApiResponse.success(null); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiOperation("批量删除") | 
|---|
|  |  |  | @GetMapping("/delete/batch") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:delete") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:delete") | 
|---|
|  |  |  | public ApiResponse deleteByIdInBatch(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@RequestParam String ids) { | 
|---|
|  |  |  | String [] idArray = ids.split(","); | 
|---|
|  |  |  | List<Integer> idList = new ArrayList<>(); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiOperation("修改") | 
|---|
|  |  |  | @PostMapping("/updateById") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:update") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:update") | 
|---|
|  |  |  | public ApiResponse updateById(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated(OperaType.Update.class) @RequestBody SystemMenu systemMenu) { | 
|---|
|  |  |  | systemMenu.setUpdateUser(this.getLoginUser(token).getId()); | 
|---|
|  |  |  | systemMenuBiz.updateById(systemMenu); | 
|---|
|  |  |  | return ApiResponse.success(null); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @ApiOperation("修改菜单状态") | 
|---|
|  |  |  | @PostMapping("/updateStatus") | 
|---|
|  |  |  | @RequiresPermissions("system:menu:update") | 
|---|
|  |  |  | @CloudRequiredPermission("system:menu:update") | 
|---|
|  |  |  | public ApiResponse updateStatus(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated(OperaType.UpdateStatus.class) @RequestBody SystemMenu systemMenu) { | 
|---|
|  |  |  | systemMenu.setUpdateUser(this.getLoginUser(token).getId()); | 
|---|
|  |  |  | systemMenuBiz.updateById(systemMenu); | 
|---|
|  |  |  | return ApiResponse.success(null); | 
|---|
|  |  |  | } | 
|---|