package cn.iocoder.yudao.module.bi.controller.admin.dashboard;
|
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
import cn.iocoder.yudao.module.bi.dal.dataobject.BiDashboardDO;
|
import cn.iocoder.yudao.module.bi.service.dashboard.DashboardService;
|
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
import jakarta.annotation.Resource;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
import java.util.Map;
|
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
|
@Tag(name = "管理后台 - BI 仪表盘")
|
@RestController
|
@RequestMapping("/bi/dashboard")
|
@Validated
|
public class DashboardController {
|
|
@Resource
|
private DashboardService dashboardService;
|
|
@GetMapping("/list")
|
@Operation(summary = "获取仪表盘列表")
|
@PreAuthorize("@ss.hasPermission('bi:dashboard:query')")
|
public CommonResult<List<BiDashboardDO>> getDashboardList() {
|
return success(dashboardService.getDashboardList());
|
}
|
|
@PostMapping("/{dashboardCode}/data")
|
@Operation(summary = "获取仪表盘数据")
|
@Parameter(name = "dashboardCode", description = "仪表盘编码", required = true,
|
example = "purchase_sales")
|
@PreAuthorize("@ss.hasPermission('bi:dashboard:query')")
|
public CommonResult<List<Map<String, Object>>> getDashboardData(
|
@PathVariable("dashboardCode") String dashboardCode,
|
@RequestBody(required = false) Map<String, Object> params) {
|
List<Map<String, Object>> data = dashboardService.getDashboardData(dashboardCode, params);
|
return success(data);
|
}
|
|
}
|