PlatformSystemMenuController.java 1.6 KB
package com.diligrp.rider.controller;

import com.diligrp.rider.common.result.Result;
import com.diligrp.rider.dto.AdminMenuSaveDTO;
import com.diligrp.rider.service.SystemMenuService;
import com.diligrp.rider.vo.AdminRoleMenuTreeVO;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api/platform/system/menu")
@RequiredArgsConstructor
public class PlatformSystemMenuController {

    private final SystemMenuService systemMenuService;

    @GetMapping("/tree")
    public Result<List<AdminRoleMenuTreeVO>> tree() {
        return Result.success(systemMenuService.tree());
    }

    @PostMapping("/add")
    public Result<Void> add(@Valid @RequestBody AdminMenuSaveDTO dto) {
        systemMenuService.add(dto);
        return Result.success();
    }

    @PutMapping("/edit")
    public Result<Void> edit(@Valid @RequestBody AdminMenuSaveDTO dto) {
        systemMenuService.edit(dto);
        return Result.success();
    }

    @DeleteMapping("/del")
    public Result<Void> delete(@RequestParam Long id) {
        systemMenuService.delete(id);
        return Result.success();
    }

    @PostMapping("/setVisible")
    public Result<Void> setVisible(@RequestParam Long id, @RequestParam int visible) {
        systemMenuService.setVisible(id, visible);
        return Result.success();
    }

    @PostMapping("/setStatus")
    public Result<Void> setStatus(@RequestParam Long id, @RequestParam int status) {
        systemMenuService.setStatus(id, status);
        return Result.success();
    }
}