单点日志
This commit is contained in:
1 parent
e260c015ab
commit
287e8134db
5 files changed
+51
-37
No files matched your search
+30
-15
@@ -3,12 +3,10 @@ package com.bsd.pjcloud.app.controller;
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.bsd.pjcloud.app.api.constant.menu.AppMenuPlatformEnum;
|
||||
import com.bsd.pjcloud.app.api.constant.menu.AppMenuTypeEnum;
|
||||
import com.bsd.pjcloud.app.api.dto.AppMenuDto;
|
||||
import com.bsd.pjcloud.app.api.entity.AppMenuEntity;
|
||||
import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum;
|
||||
import com.bsd.pjcloud.common.core.util.R;
|
||||
@@ -23,6 +21,7 @@ import org.springframework.http.HttpHeaders;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@@ -30,6 +29,7 @@ import java.util.List;
|
||||
/**
|
||||
* 菜单管理
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
@RequestMapping("/app-menu")
|
||||
@@ -42,12 +42,14 @@ public class AppMenuController {
|
||||
/* ************************************* start app start ************************************* */
|
||||
|
||||
/**
|
||||
* 列表差
|
||||
* App 端菜单列表(显式接收 enum,与 Feign 一致,避免 ParameterObject 继承 Entity 绑参歧义)
|
||||
*/
|
||||
@Operation(summary = "分页查询", description = "分页查询")
|
||||
@Operation(summary = "App菜单列表", description = "按平台/类型查询可见菜单")
|
||||
@GetMapping("/app/list")
|
||||
public R<List<AppMenuEntity>> appList(@ParameterObject AppMenuDto dto) {
|
||||
return listVisibleAppMenus(dto);
|
||||
public R<List<AppMenuEntity>> appList(
|
||||
@RequestParam(value = "typeEnum", required = false) AppMenuTypeEnum typeEnum,
|
||||
@RequestParam(value = "platformEnum", required = false) AppMenuPlatformEnum platformEnum) {
|
||||
return listVisibleAppMenus(typeEnum, platformEnum);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -56,19 +58,32 @@ public class AppMenuController {
|
||||
@Inner(value = true)
|
||||
@Operation(summary = "内部-App菜单列表", description = "供 integrated 等经 Feign 拉取,与 /app-menu/app/list 一致")
|
||||
@GetMapping("/inner/app/list")
|
||||
public R<List<AppMenuEntity>> innerAppList(@ParameterObject AppMenuDto dto) {
|
||||
return listVisibleAppMenus(dto);
|
||||
public R<List<AppMenuEntity>> innerAppList(
|
||||
@RequestParam(value = "typeEnum", required = false) AppMenuTypeEnum typeEnum,
|
||||
@RequestParam(value = "platformEnum", required = false) AppMenuPlatformEnum platformEnum) {
|
||||
return listVisibleAppMenus(typeEnum, platformEnum);
|
||||
}
|
||||
|
||||
private R<List<AppMenuEntity>> listVisibleAppMenus(AppMenuDto dto) {
|
||||
dto.setVisible(YesNoEnum.YES.getCode());
|
||||
if (ObjectUtil.isNotEmpty(dto.getPlatformEnum())) {
|
||||
dto.setPlatform(dto.getPlatformEnum().getType());
|
||||
/**
|
||||
* 仅按 platform/type/visible 查询,使用干净 Entity,避免 DTO 脏字段污染条件。
|
||||
*/
|
||||
private R<List<AppMenuEntity>> listVisibleAppMenus(AppMenuTypeEnum typeEnum, AppMenuPlatformEnum platformEnum) {
|
||||
AppMenuEntity query = new AppMenuEntity();
|
||||
query.setVisible(YesNoEnum.YES.getCode());
|
||||
if (ObjectUtil.isNotEmpty(platformEnum)) {
|
||||
query.setPlatform(platformEnum.getType());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(dto.getTypeEnum())) {
|
||||
dto.setType(dto.getTypeEnum().getType());
|
||||
if (ObjectUtil.isNotEmpty(typeEnum)) {
|
||||
query.setType(typeEnum.getType());
|
||||
}
|
||||
return R.ok(appMenuService.scopeList(dto, null));
|
||||
List<AppMenuEntity> list = appMenuService.scopeList(query, null);
|
||||
log.info("[app-menu/list] platformEnum={} platform={} typeEnum={} type={} size={}",
|
||||
platformEnum,
|
||||
query.getPlatform(),
|
||||
typeEnum,
|
||||
query.getType(),
|
||||
list == null ? 0 : list.size());
|
||||
return R.ok(list);
|
||||
}
|
||||
|
||||
/* ************************************* end app end ************************************* */
|
||||
|
||||
+2
-1
@@ -19,7 +19,8 @@ public interface AppMenuMapper extends PjcloudBaseMapper<AppMenuEntity> {
|
||||
.eq(ObjectUtil.isNotEmpty(dto.getPlatform()), AppMenuEntity::getPlatform, dto.getPlatform())
|
||||
.eq(ObjectUtil.isNotEmpty(dto.getType()), AppMenuEntity::getType, dto.getType())
|
||||
.eq(ObjectUtil.isNotEmpty(dto.getVisible()), AppMenuEntity::getVisible, dto.getVisible())
|
||||
.orderByAsc(AppMenuEntity::getSort)
|
||||
// 后台文案:排序越大越靠前
|
||||
.orderByDesc(AppMenuEntity::getSort)
|
||||
.orderByDesc(AppMenuEntity::getCreateTime);
|
||||
return wrapper;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user